Old price_get method is now replaced by price_compute and ready for migration.
Explicit parameters for unit of measure and currency have been added to ease
code understanding.
In case of event not all day, the timezone has an impact.
So if we search for date >= 2016-01-31 (00:00:00) and that the current timezone
is +5, we should search for date >= 2016-01-30 19:00:00.
date_to_str will drop the time.
This commit closes#12878
This commit closes#12971
When creating a new exchange rate, the default date is always the date
of the last server restart.
This is because `fields.Date.today() + ' 00:00:00'` is a fixed string
and the field is instanciated only at startup.
opw-684622
In some cases, the "Sales total(Revenue)" of the report is different
from the sum of the payments. To reproduce:
- create a product with a sale price of 1.00
- sell 3 times a quantity of 0.333 of this product
- the "Sales total(Revenue)" will be equal to 1.00, while the total of
payments is 0.99.
This is because in the report, we first sum all order lines, then we
perform a global rounding.
The solution is to use the total amount calculated for each order, which
is rounded at the appropriate time.
opw-682782
Now, if the first post of a user is marked as spam, we remove 10x the karma.
(by default 10 * -100= -1000)
That will avoid to the moderators too many click to 'kill' a spammer.
This commit is related to #12803
Before this commit, a user was able to post withtout limit new post.
They was added to the modarator queue.
Now we only support 1 post by user.
This commit is related to #12803
product.py and product_views.xml contained code related to several models.
This commit split those files to separate submodels :
* decimal_precision
* product_attribute: product.attribute, product.attribute.value,
product.attribute.line
* product_template: product.template
* product_uom: product.uom and product.uom.categ
* res_currency
Product now contains product.product model, along with some smaller
models (product.packaging, product.supplierinfo, product.category,
product.price.history)
The id of the user to browse has been omitted
during the below forward port revision:
95a2f8b121
We can see in the original revision that it was
correctly there:
cbb51610ee
This had as wrong side-effect to not display
views with a group set in the customize menu,
as it checked the groups of a null user browse
recordset.
opw-684326
Closes#12895
The module `sale_service` has been merged in the module
`sale_timesheet` in the revision
234f88a6af
We only remove the field from the view due
to the fact saas-11 is a stable. The field
has already been removed from the model
in newest releases (`saas-12`)
opw-682816
when doing a full reconciliation in the same currency, full_reconcile_id was not set on account_partial_reconcile object
resulting in problem when trying to unreconcile entries.
Also add matching number to the exchanged rate entries created in case of full reconciliation.
Without this commit, there was no warning displayed when clicking
on a button that would make the user lose all he entered in the
widget, which is insonsistent with other odoo widgets.
opw-684276
The less refactoring in 5b65befcd8
wrongly removed the css directive that hide some elements in edit mode.
As a side effect, the product price was appearing twice when editing a
product. Commit 44ca4317a9 tempt to fix
it but removed the edition part.
opw:683343
The report "Payslip" was displaying both the employee's job, the second time
being in the "Identification No" box.
Remove the second job and replace by the field 'Identification No' which makes
more sense.
Closes#12937
The field state was replaced by ‘active’ in project.project (see commit 9b69184).
However, someone forgot to update the arch for the default list view which
was not longer possible to open.
This is triggered by the interaction of the `-webkit-overflow-scrolling` [1]
rule that is set on the top of the modal (div.modal) and the fact that inputs
elements are displayed over the table with an absolute positioning (that's
how the editable lists work).
Indeed, the `-webkit-overflow-scrolling` rule creates a new stacking context [2]
and is inherited by all the children of the modal (and so on), resulting in this
situation:
.modal
/ \
... (new S.T.) ... (new S.T.)
/ \
... (new S.T.) ... (new S.T.)
/
.o_list_editable (new S.T.)
/ \
.o_form_view (new S.T.) .table-responsive (new S.T.)
/ | \ \
input input input table (new S.T.)
This explain why the input are not visible: actually, they are displayed
behind the table. In this case the document order is used to know which
div should be in front of another div[3], that's what rev odoo/enterprise@304b790004 [4]
tried to change. However, this was not enough for iOS 9.3 / iphone 6
because, for some unknown reason (but probably due to the fixed position
of the modal that seems kind of broken on safari mobile), the inputs where
still displayed under. Note that the fix was ok for ios 9.3 / ipad air 2.
The fact that `-webkit-overflow-scrolling` creates a new stacking context
at every node seems odd, unfortunately removing the rule result in a non
scrolling div at all.
The fix is to explicitely tell the input to appear over the .table-responsive.
This is done by sharing the same stacking context under the common parent
between the form and the list view: .o_list_editable. For that, we prevent
the creation of a new stacking context under .o_form_view by reseting the
`-webkit-overflow-scrolling` to "auto" and we set a dummy z-index to the
inputs element. As they are the only one to have a z-index in this dom
range, they will always appear on top of the table.
With this solution, the `-webkit-overflow-scrolling` is still inherited
correctly and the div is still scrollbale.
This fix unveils another issue with the editable list: if the screen is
too small resulting in an horizontal scrollbar, the table in itself is
scrollable but the inputs aren't.
opw 683169
cherry-pick of odoo/enterprise@35f285e50a
[1] this rule allow a smooth scrolling of the content of a div on iOS
https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-overflow-scrolling
[2] https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
[3] https://www.w3.org/TR/CSS2/zindex.html
[4] This commit has been reverted with odoo/enterpise@287cff02c7
and never forward-ported to saas-10.
The scale screen widget was hardcoded to show kilograms as the
UOM. This makes it so that the UOM set on the product being weighed is
used instead.
Note that this bug was purely visual. It did not convert the weight to
the wrong UOM or anything like that.
See also d043fd03ce.
opw-684374