Daily updates from Odoo
Thursday, April 3, 2025
2 changes · master
Code cleanup and technical improvements
Customer-facing subscription actions in the portal, such as changing plans and closing subscriptions, have been rebuilt using Odoo’s newer interaction framework. This keeps the same business capabilities while making the subscription portal code easier to maintain and align with ongoing platform modernization.
Original PR description
**PR Description:** - Replace public widgets for portal subscriptions with new Interaction alternatives. This continues the refactoring work for public widgets. **Steps to Reproduce the Features:** -…
**PR Description:**
- Replace public widgets for portal subscriptions with new Interaction alternatives.
This continues the refactoring work for public widgets.
**Steps to Reproduce the Features:**
- **SubscriptionChangePlan:**
- Log in as an **Admin**.
- Navigate to the **Subscriptions app** and open a subscription with a recurring payment.
- Modify the **Self-Service** section of the subscription plan to include an optional plan
(e.g., update "Monthly" to include "Yearly" as an option).
- If the modified plan isn’t available on an existing subscription, create a new subscription for a **portal user**.
- Log in as the **portal user** and open the subscription with the modified plan.
(Alternatively, you can preview it as an **Admin**.)
- The **Change Plan** button should appear.
To test the feature, append `&change_plan=true` to the URL.
- **SubscriptionCloseFinish & SubscriptionCloseSelect:**
- Navigate to **Subscriptions app** → **Configuration** → **Recurring Plans**.
- Create a new plan or modify an existing one.
- In the **Recurring Plans** form, enable the **Closable** option under the **Self-Service** section.
This allows customers to close their own subscriptions via the portal.
- Open any subscription and click **Preview**.
- The **Close Subscription** button should now be visible on the left.
Clicking it will trigger the two widgets.This change updates internal mobile app tests to use a shared helper for preparing web request data. It keeps test behavior consistent with the main Odoo codebase and reduces maintenance effort, with no expected impact on day-to-day users.
Original PR description
- use `build_rpc_payload` helper function in `HttpCase`. Related PR: [#196819][1] [1]: https://github.com/odoo/odoo/pull/196819