From 4d00ba3dbecda2ee9620ff77b1d08588e8707b65 Mon Sep 17 00:00:00 2001 From: giles Date: Wed, 18 Feb 2026 11:45:28 +0000 Subject: [PATCH] Fix doubled URLs when |host filter receives absolute URLs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit _join_url_parts() only checked the first segment for a scheme, so passing an already-absolute URL (e.g. from cart_url()) through the |host filter would join route_prefix() + absolute URL, producing "https://host/https://host/path/". Now detects schemes in later segments and resets the base. Also add missing 'market' entry to _nav.html _app_slugs to match _nav_oob.html — without it the market menu item fell through to coop_url('/market/') instead of market_url('/'). Co-Authored-By: Claude Opus 4.6 --- browser/templates/_types/root/_nav.html | 2 +- utils.py | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/browser/templates/_types/root/_nav.html b/browser/templates/_types/root/_nav.html index de26699..7f71ed7 100644 --- a/browser/templates/_types/root/_nav.html +++ b/browser/templates/_types/root/_nav.html @@ -1,4 +1,4 @@ -{% set _app_slugs = {'cart': cart_url('/')} %} +{% set _app_slugs = {'market': market_url('/'), 'cart': cart_url('/')} %}