The "shop as a read-only catalog" behaviour lived inside website_sale_aplicoop, so every site that wanted the eskaera flow also lost the standard cart. It now ships as its own installable addon, with the redirect target configurable instead of hardcoded to /eskaera. - website_sale_disable_cart: hides the cart UI (12 header styles + the product card quick-add) and overrides the standard cart endpoints. Redirect URL is configurable in Website settings (default /shop); only site-internal paths are accepted, so a misconfigured value cannot turn the shop into an open redirect nor loop back into a disabled route. - Fixes carried over from the original code: /shop/cart/quantity is the Odoo 18 path (it was /shop/cart_quantity, which never matched), the boxed, sidebar and sales two/three/four headers were not covered (the cart link stayed visible on them), and the routes now override the standard methods instead of registering duplicate ones. - website_sale_aplicoop 18.0.1.12.0: drops the view file and the four redirect routes; installing it no longer touches the standard shop. Upgrade order matters: update website_sale_aplicoop first, then install website_sale_disable_cart in a second Odoo run — both use the same XPaths and obsolete records are only cleaned up at the end of a run. Tests: 8/8 in website_sale_disable_cart, aplicoop unaffected (its 2 failures predate this change). Verified live on a DB clone: /shop/cart returns 303 to the configured URL and no cart markup remains on /shop. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
15 lines
750 B
ReStructuredText
15 lines
750 B
ReStructuredText
Go to *Website > Configuration > Settings > Disabled Cart* and set
|
|
**Cart Redirect URL**: the internal path visitors land on when they reach a
|
|
standard cart URL.
|
|
|
|
* Default: ``/shop``.
|
|
* It is stored in the system parameter
|
|
``website_sale_disable_cart.redirect_url``.
|
|
* Only site-internal paths are accepted. Absolute URLs (``https://...``) and
|
|
protocol relative URLs (``//host/path``) are ignored — otherwise the shop
|
|
could be used as an open redirect — as is any path under ``/shop/cart``,
|
|
which would loop back into a disabled route. In those cases ``/shop`` is
|
|
used and a warning is logged.
|
|
|
|
Example: on a site running ``website_sale_aplicoop``, set it to ``/eskaera`` so
|
|
that every standard cart URL lands on the group order flow.
|