If a budget line has no analytic account id, the code is intentional
about returning a value of 0 for it. It is possible, that in some
cases, depending on the order of lines processed, the routine returns
the previous value, as it does not initialise an important
variable on each iteration of the loop.
Closes#13303
When a reconciliation creating an exchange rate entry was done, the newly account_move_line corresponding to the exchange entry was not given a full_reconcile_id.
Also when doing a full reconciliation in different currency, full_reconcile_id was not set on account_partial_reconcile object resulting in problem when trying to unreconcile entries.
This is a backward fix of commit: 9b5fed4976 and cda132bba5
Google made the use of an API key mandatory to use the "Google Static
Maps API". The API key field will be created for the upcoming version.
opw-686510
Non-required selection fields and incorrectly updated fields (e.g.
changed options but didn't fix existing values) trips KanbanSelection
badly leading to the entire kanban view failing to appear: the rendering
phase does not find the state in its states list and blows up when
trying to access the state's class.
Fix by adding a fallback default state with an empty class.
When a pie chart has no grouping selected, the label was "undefined" (the
javascript variable). Replace by the already translated string "Undefined".
Fixes#13288
Exclude purchases invoices from the `invoiced` field
of `crm.team`, as this count is meant to sum
the invoiced - sales - order of a sales team.
opw-686732
This commit avoid a traceback when you open the form account_invoice_line
for a supllier invoice without having installed purchase.
The fields_view_get method add domain with purchase_ok field, but this
field can be missing on the model product.template because purchase is not
a dependence of account.
Invalid field 'purchase_ok' in leaf "<osv.ExtendedLeaf:
('purchase_ok', '=', True) on product_product
In stable version, the best fix found, is to remove the domain.
But we need to fix it in master, moving this field from purchase module to
product module. (odoo/odoo##13271)
This commit closes#13268 and closes#315 for stable version.
Todo: merge odoo/odoo#13271 in master (@qdp-odoo agreement)
Since abdca55ea2, the call to '_update_user_groups_view' if made only if the category_id is modified on a res_group. This method is re-computing the xml for the group_ids on res_user form view. This modification is wrong because:
- If the name or the share fields are modified too, the view should be recomputed too.
- It introduce a bug which is the following. When creating a new instance with no demo data, the method is not called and the group_ids field is still displayed as a one2many of the res_groups instead of the prettier way to display the information we're used to.
When a user sends a link thanks to the livechat, the link is not
clickable is the recipient is on the frontend (e.g. visitor of the
website). On the other hand, a link sent from the frontend to the
backend works.
This is because the message is sent as "html" from the backend,
therefore no link conversion is done during the post-process of the
massege (method `message_post`).
Note that a link sent and received in the backend works because
additional formatting is done (convert emojis, add links...).
opw-686063
When creating an asset, there is no restriction on the partner. However,
there is a domain to explicitly restict the categories to the 'Purchase'
asset types. Therefre, the partner is always a vendor.
opw-686636
When choosing a package for a pack operation, we should restrict the
packages to the ones which are actually available in the given
locations.
opw-684007
Since we return nosniff header, we need to avoid the magic mimetype.
In case of picture in compute field (eg. image_small on product),there are
no mimetype saved in column, and impossible to detect it from name/extention
because url are like: /web/image/product.product/47/image_small.
So before to arbitrary return default_mimetype, we try to detect it from the
content itself.
This commit continue to fix odoo/odoo@13193
Before this commit, if a message thread was loaded 2 times, the first time
the date was well formatted, the second time that fail because momentjs cannot
parse the localized date from some locale.
Luckily, it was not bugged by default in english, because moment was able to
reparse a localized US date. But in some local as french, momentjs cannot parse
the localized date and return 'Invalid date'
Now, we move the code, to be processed only once by the chat manager, and not
in each process of the thread.
This commit closes issue #13258
Courtesy of @aab-odoo
When changing the contact details of a partner which is a company contact,
all the fields related to the address must be set on the commercial partner.
The address displayed for a company contact is the address of the commercial
partner.
opw:686335
When 'search_default_job_id' is in the context, the department set for
this job must be used to filter the right stages(_read_group_stage_ids).
opw:685896
When posting POS entries with the "group entries" option set on that
pos config (which is the default), it is possible to have bad net
amounts in the tax report because taxes are not used as a grouping
parameter, allowing the system to potentially group pos order lines
which have different taxes together.
Also, take into account the fiscal position set on each order when
creating the move lines (the correct tax for a line is a compute field,
so this commit may actually cause some performance degradation for big
pos sessions).
Amends 150bf7d
opw-686168
Since the commit odoo/odoo@36e875e which disable the second-guess from browser,
IE cannot display picture from Odoo where mimetype is wrong.
Before this commit, IE and probably other browser which one respect the header
'nosniff' don't display picture not_found and resized picutre via controller if
the original was not of type 'png'.
Eg: when we return the placholder 'not_found' if you don't have permission,
or when your resize the picture, ... we need to force the mime-type with the
new one and not keep the original mimetype.
This commit closes#13193
When an invoice is sent by email, the Paypal link is not included,
although it is in the template.
This is because the `paypal_url` field has gone missing after Accounting
refactoring.
opw-686216
Go to a URL such as `/blog/our-news-1?date_begin=2015-01-01`
Now click on page 2.
Without this patch you will go to `/blog/our-news-1?date_begin=2015-01-01/page/2`.
With this patch, you will go to `/blog/our-news-1/page/2?date_begin=2015-01-01`.
This commit closes#13206
When printing a BoM Structure report, the quantitites are not multiplied
down the line. For example, the BoM for Products 0 and 1:
Product 0
8 Units of Product 1
Product 1
1 Unit of Product 2a
2 Units of Product 2b
When printing the BoM Structure of Product 0, it shows:
Product 0
8 Units of Product 1
1 Unit of Product 2a
2 Units of Product 2b
It should be:
Product 0
8 Units of Product 1
8 Unit of Product 2a
16 Units of Product 2b
opw-686167
Commit ddbe0e1 introduces an error when the user tries to move a product
with a cost of zero. In extreme case, this is incompatible with commit
262d98b. For example, if one buys 10000 units for 17.60, and consumes one
unit at a time. The latter commit will split the quants in:
- 9999 quants at cost zero
- 1 quant at cost 17.60
This is the only solution to get a correct accounting.
However, that creates quants with a cost of zero, which therefore cannot
be moved anymore (consumed in MRP or sold).
We restrict the warning to products configured with "Standard Price".
Indeed, in this configuration, it is very lokely that the user made a
mistake / forgot to define the price of the product.
opw-686301
When a user connect to /web/database/manager directly without the
login page before, the request don't have registry.
When the user click to backup a db, a traceback was raised:
return request.registry['ir.http'].content_disposition(filename)
TypeError: 'NoneType' object has no attribute 'getitem'
Because it was impossible to call content_diposable from ir_http
without registry.
Now content disposable has been moved in http.py and is callable from
anywhere.
This commit closes#13192
This commit closes#11583
The call to the web_editor is made through an iframe with some get
parameters. While not really a problem in itself, this has the
disadvantage of generating long URIs. In some case, since all the
fields in the views are included as a GET parameter, URIs can be
generated that go up to several thousand characters. Most servers will
return a 414 for such URIs, preventing the edition of the mail
template in the view.
To avoid this problem, this commit extends the 'html_frame' widget and
blacklist 2 fields that can get too long once encoded.
Ideally, it would probably be better to stop sending all the fields and
simply add the *needed* fields one by one, but since it's difficult to
know exactly what fields might be needed and this is stable, I'm gonna
go with this 'workaround' but conservative fix.
opw-685646
When you backup 3 dbs with the database manager, you had 3 times the warning.
Underscore is not loaded, so _.once not available.
This commit closes#13173