* document every legit usage of an unsafe eval by using it
under the name `unsafe_eval`
* add a test that will run the check w0123 of pylint that
will report and fail for every use of `eval`
The field price_subtotal_signed on an invoice line contains the line
subtotal:
- untouched if the invoice is of in_refund or out_invoice type,
- negated if the invoice is of in_invoice or out_refund type
At one point in time (not found), commit 649b289f using absolute value
of price_subtotal was introduced because price_subtotal_signed sometimes
had the wrong sign.
But this is source of an issue since it is possible to have an invoice with
two lines such as : 100€ and -20€, the report would then display 120, whilst
80 should have appeared.
This commit remove the use of absolute value, and if some old report data
(pre saas-6 migration with wrong migration script) are reported wrong
for an instance, it should be corrected manually.
opw-683952
closes#13118
- "Suggested alternatives" is renamed by "Suggested Products"
- "Suggested products" is renamed by "Suggested Accessories"
- Display all Accessory Products rather than the first 3 ones
- add missing default_code field in product template list view
- make 'uom_id' field visible in product template list view for uom group
- add missing group on 'uom_id' field in product variant list view
- correct position of qty_available and virtual_available fields now
that we display uom_id
[IMP] website_blog: display author avatar option
[IMP] website_blog: refactore cover option for blog
[IMP] website_blog: tags are now always displayed and as a label
[IMP] website_blog: side bar cleaning
[IMP] website_blog: new teaser
[IMP] website_blog: replace inline comments by quotes comment
[IMP] website_blog: new grid layout
[WIP] website_blog: read next options
[IMP] website_blog: refactoring sharing links
[IMP] website_blog: Delete cover narrow option
[IMP] website_blog: improvement for sharing links
[IMP] website_blog: blog post list cover is an option
[IMP] website_blog: archives group by year
[IMP] website_blog: if only one blog, no index blog post
Courtesy of @movanoncem
People tend to click on the gear on the stage column and click
the "Edit" button. There, they think they are creating a task.
- Rename the 'Edit' button into 'Edit Stage'.
- Hide mail_template_id and project_ids fields in technical features.
An issue occurs in the following use case:
- Enable "Bring goods to output location before shipping (Pick + Ship)"
- Create a SO with 2 lines. 2 Deliveries are created, Pack and Ship.
- Go to "Procurement Exceptions", and cancel one of the 2 lines
- Go to the OUTgoing shipping, "Force Availability", and "Validate"
An error occurs: "Cannot unreserve a done move". The system tries to
unreserve a move which is actually cancelled.
Actually, it should not be necessary to unreserve this move, since no
quants were actually reserved in a first place. The fix ensures that, in
this situation, we don't try to unreserve a move with no quant reserved.
This should be safe to do it in all cases, but better be safe by adding
the condition `if 'no_state_change' in context` to impact only this
specific use case.
opw-685650
Containing
* migrate remaining code
* migrate server actions
* remove dead code
* fix some issues related to old api / new api migration
* update openerp imports and clean them a bit
* rename openerp nodes to odoo in xml files
Inspired from e2d16ea04a
When cancelling a voucher from a customer payment receipt,
the voucher lines linked to the deleted account move lines
have to be updated by clicking on button "unreconcile".
opw:683258
Since it is not possible to create a timesheet entry on a task without a project_id,
the timesheets page on the task form view will be hidden on such tasks.
This prevents the user from trying to create a timesheet entry on such a task and
receive a not so transparent message like: mandatory field is not set: [object with reference: account_id - account.id]