In 9.0, the currency field on the statement is
no longer `currency`, but `currency_id`.
This is an oversight during the forward port
6a306a03be
opw-658101
This is related to the revision 2e66c489e3
`xmlid_to_res_id` doesn't have a `context` argument,
trying to do a call with this `context` failed.
A simple attempt to anonymize the database raised the error.
opw-657858
In sales dashboard, when there is no sales team, the no content message is displayed next to the dashboard.
The class o_kanban_ungrouped adds style to avoid this problem.
Credits to @qsm-odoo.
When clicking on "Add to Cart" button(a link in fact) with an
inactive variant in the Shop, the button must be disabled.
As "Add to Cart" is a link, the attribute "disabled" had no effect
on.
opw:657967
When the tasks are disabled on a project, we have this block order
Documents -> Issues
It's annoying because the documents view opens when we click on the
card if only the issues are enabled and documents have been posted
Some fields were available in the invoice form view for portal
users, that they are either not supposed to see, or they do
not have the access rights to see them.
opw-657900
In some cases the Referer HTTP header may be missing or
stripped by a proxy, browser extension or anti-virus.
This breaks debug mode because it was solely relying
on the Referer header.
Introducing an explicit X-Debug-Mode header for RPC
calls allows for an alternative method that works
even when the Referer is missing.
This won't work in all cases, e.g. for direct $.ajax
calls, for example.
Closes#9824
We have a tax_ids_after_fiscal_position field on pos.order.line that
contains the mapped taxes. We should use that to create the account
moves. Otherwise the Point of Sale will create unbalanced journal
entries.
Fixes#9815
This data file is required when making HTTPS requests
with Python's `requests` package. Without it, modules
such as account_yodlee/account_plaid won't be able
to call their secure API.
+ minor refactoring (3 strikes and the code is out)
For a simple employee (meaning, not a HR officer),
it wasn't possible to view past timesheets.
Indeed, the "Weekly" menu opens the current timesheet,
and the menu "Timesheets to approve" is available only
for HR officers.
opw-657860
Port revision 70287d4 to 9.0
When creating missing translations on an object (e.g. using blue flag icon on a
field), the value of the module was not set.
This was problematic as could create a duplicated translation when the module
was updated or the translation reloaded (as the module is used in find_expr).
opw 654036
The onchange of the project field
removed the default partner loaded of the task
if there was no project set on the task, or if the
project was not associated to a specific partner.
There is no obvious reasons to do so,
and the revision 3fe06da634
introducing the regression doesn't explain why
it has been done. At first sight, there is no reason.
opw-657876
When selling a product with a dropshipping route, the available stock was
checked and a warning got raise if it was the case.
The _check_routing was not working properly as is called in a context of an
onchange and 'self' was the record in the database, not in the browser.
Just use check there is a dropshipping route on the product instead of checking
it on the routes of the sale order line (not reliable info anyway).
Add a todo for master to improve it to change the signature of the method.
opw 657760
When a translated term is modified (e.g. content of an email.template),
reloading the translations of the module (e.g. when updating the module) used to
recreate a new, duplicare translation for the modified term (instead of ignoring
the existing one).
This was due to the fact the matching expression (find_expr), when loading
translations, used the field 'src' (source term) as criteria for (almost) all
ir.translation records.
While this is true for type 'code' or 'selection', this is not true for 'model'
where the source content may have been changed.
In case of translation of type 'model', matching on the name and res_id should be
enough for the matching expression and then, avoid creating duplicated
translations.
Note: this patch must NOT be present in 9.0 due to the xml_translate
attribute that splits an xml content into small parts.
opw 654031
When creating missing translations on an object (e.g. using blue flag icon on a
field), the value of the module was not set.
This was problematic as could create a duplicated translation when the module
was updated or the translation reloaded (as the module is used in find_expr).
opw 654036
* blacklist all fields by default
* don't use blacklist in get_authorized_fields which is called to see if
a field can be added to a form, instead only use it afterwards to see
if the field can be written to by the formbuilder. That way
formbuilder can whitelist fields which are actually added to forms
on-demand resulting in a more secure interaction
In noupdate, the opt-in setting is ignored by migrations and breaks the
corresponding feature. If the feature is undesirable, don't install the
module.
This revision is related to 93d4db9d1e.
Usually, for models with an image, the original `image` is stored
in the field `image`, and then the resized value are in the fields
`image_medium` & `image_small`.
In the specific case of the product variant, this is not the case,
the original image is stored in the field `image_variant`,
and the `image` field uses as well the method `_get_image_variant`.
The `image_get_resized_images` must therefore return the "big image"
as well, which is returned with the key `image`, by default.
This is done using the method argument `return_big`.
res.users form contains virtual fields in_group_ID to be added in res.groups.
Groups with boolean share=True (added by share module) must not be displayed in
the form and should not be modifiable through the user interface.
However, if a module adding/modifying a res.group is earlier in the dependency
graph than 'share' (e.g. only depends from 'base'), the update of the user view
is done before share is loaded and the overrride of 'get_application_groups' is
never executed.
As we can not guarantee that the module is share loaded, put the logic of
hidding the module in base instead of share.
This workaround is quite hacky but is necessary in stable version.
Better fix in 9.0 at cf63d4dFixes#6324Fixes#5820
Add a related field to the partner_id of the picking. Note that
partner_id on stock.move is different from partner_id on stock.picking
in case of dropshipping, therefore we need to show both fields.
opw-656298
This is possible to set an image for a specific variant
When this was the case, the image displayed was always the
image within its original size, it wasn't resized
to small and medium sizes.
opw-657055
If a user was in multiple team,
and the salesman of a lead was changed to this user,
the team assigned to the lead might change even
if the user was part of the team already set.
opw-657814
Depending of the location where the "Copying" happened, only text/plain
content could be available from the clipboard component.
So if no text/html was retrieved, we should fall back to plain text
pasting.
closes#9787
opw-657137
The "edit" action is on the "website.TopBar", which will create a new
instance of the "editor" (web_editor.editor) widget.
So if we want to do something when the "editing" start, we have to
either override "edit" of the TopBar, or override "start" or "init" of
the editor.
opw-657662
This revision is related to 5a10903e9b.
The above revision makes so the decimal separator from the language
is used to display the prices.
This revision makes so this decimal separator is used as well
for quantities, to be coherent.
opw-657591
In the pos interface,
when adding a product to the order,
the quantity was set to `1`,
but, when adding the same product again,
the quantity was set to `2.000`.
We use `set_quantity` to not
copy/paste what is already done
in this method to display
correctly the quantity within
the product unit of measure rounding.
When accepting/declining a calendar event invitation received by mail,
we landed on an empty gray webclient. The confirmation page had been
dropped with passage to new JS API / new calendar / new webclient.
Previous mechanism had been reimplemented: custom web client with event
information/confirmation if the user is not connected or redirection to
the event form view if the user is connected.
+ FIX manyattendeetag : the status circle did not turn red when an
user declined the invitation.