product_status
Compute and display product status based on configured lifecycle dates.
Key Features
- product.template: Computes product status prioritizing end-of-life over discontinued-until and new-until dates.
- product.template: Onchange logic clears conflicting lifecycle dates when one is set to keep a single active status driver.
- product.template: Adds new-until, discontinued-until, and end-of-life date fields on the sales tab with guidance about status priority.
- product.product: Stores a computed status and state per variant, using variant or template dates and a helper flag to show relevant date fields.
- product.state: Replaces dependency default states by deactivating them and installing new, discontinued, phase-out, and end-of-life states as defaults.
- product.state: Blocks non-superusers from altering or deleting module-provided states to preserve lifecycle semantics.
- product.state: Schedules a daily job to recompute product statuses when lifecycle dates elapse across templates and variants.