An HR user (without any rights on contracts) could not open
an employee form view since it needs the `first_contract_date`
field which needs contracts access rights.
closesodoo/odoo#47561
X-original-commit: 14855eee0f9c5737ee5aaa792defe88e138e0d7d
Signed-off-by: lul-odoo <LucasLefevre@users.noreply.github.com>
The method `recompute()` should not recompute fields on new records.
This is both a speedup (those recomputations are not necessary), and
fixes an error following an `onchange()` (a field recomputed in an
environment with the wrong context.)
OPW 2184998
closesodoo/odoo#47545
X-original-commit: fa852ba1c5707b71469c410063f338eef261ab2b
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
The synchronisation of commercial_partner_id was introduced at
0d68acff8e as a way to ensure the value is always correct.
The order or the operation was not important though.
This synchronisation has a side effect in the following scenario:
0. install base_vat
1. disable vat_check_vies in the settings
2. set an invalid VAT number on a company with at least one contact
3. enable vat_check_vies in the settings
4. correct the VAT number on the company with a valid one
--> an error was raised for an invalid VAT number on the contact
This is because the commercial_partner_id synchronisation is done
before the update of the VAT number. Even if the value has not
changed, this triggers the check_vat method.
Invert both instructions
Courtesy of Wolfgang Taferner
Closesodoo/odoo#43065Closesodoo/odoo#42973closesodoo/odoo#47543
X-original-commit: d9b2605eadc129924d085fffc4056d777cfbbbeb
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This tax is only used on purchases to monotributistas or exentos but
it's not used on sales.
We deactivate to avoid confusions and will be removed in next version.
closesodoo/odoo#47554
X-original-commit: aaa066d43e6c697cb91714fdc65ee7a18e5a53e5
Signed-off-by: Josse Colpaert <jco@openerp.com>
The FieldMany2One allows to quick create record (name_create).
However, sometimes, required fields on the co-model make the
name_create crash. In this case, the FieldMany2one opens a form
view in a dialog to let the user specify those fields, and create
a new record with the 'create' method. This was working fine.
The FieldMany2ManyTags embeds a FieldMany2One to let the user
search for and select or (quick) create tags. In this case, failing
quick creation didn't fallback on the dialog form view, but
displayed a server error instead. This commit fixes this issue.
Bug introduced by 50bf8309f8
Task 2192754
closesodoo/odoo#47183
X-original-commit: 63ab065f3298c13bb19ae1245d7fd2652581b254
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
At the moment, when a rule has a supply method "Take from stock, if
unavailable, trigger another rule", it is displayed as a "take from
stock" rule
In order to differentiate the rule supply method, we should rather show,
thanks to a vertical bar, when a rule is in take from stock, and use
both a vertical bar and the three dots when it is in "take from stock,
if unavailable, trigger another rule"
task-2205748
closesodoo/odoo#47541
X-original-commit: e1c1093c3d5fb7be69e8d1d26bcac184b5dc07b2
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
This field is used by the account.move.line to know the currency of the invoice.
However, the currency_id is not always set when dealing with a single currency.
In this case, currency_id is False on account.move.line and we need the additional
always_set_currency_id field to know the currency to be used to round the price_subtotal/price_total.
closesodoo/odoo#47528
X-original-commit: 0af1a38a094f92eeccb295a4ceddda26ec399064
Signed-off-by: Josse Colpaert <jco@openerp.com>
Indicators were hidden in editor when switching to slideshow mode
from any other mode. Because the class of the selected mode was defined
after rendering and we need this class before the rendering. This also
fixes other small issues when switching between different modes.
Part of https://github.com/odoo/odoo/pull/44180
task-2162952
closesodoo/odoo#47519
X-original-commit: a99150b11a463901121bbe9751370231e3564ca2
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Before that the space between the first two links was more spaced than
the others.
Part of https://github.com/odoo/odoo/pull/44180
task-2162952
X-original-commit: baeb08da7a32b5c185c358ec6820f8a66c6edb4f
(+ gallery snippet in carousel mode)
Part of https://github.com/odoo/odoo/pull/44180
task-2162952
X-original-commit: 6237c59d607389cb0ed57694bb23b253f49805c8
Validating a receipt of 90 stock moves having ~300k products in the
database goes from 7 minutes to 11 seconds thanks to the addition of
"active_test=False in the context before doing the searches on valuation
layers.
Most searches on "stock.valuation.layer" are done when validating a
move, but since this model contains an active field, the orm will
pathologically complete the searches expression by adding "id in active"
products. If the list is long, it slows down everything.
Since this field was only added to have a filter on the valuation
reports, it doesn't matter at all to ignore it in "_action_done".
It would probably have been cleaner to just remove the field but it
doesn't fit the stable policy. Nevertheless, we're going to remove the
field in master with task-2178269, as well as this patch.
opw-2209797
closesodoo/odoo#47523
X-original-commit: 466a8319547e11e2193dd8594b0e50e3c27d4b3e
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
Steps to reproduce:
- install acounting, make sure you have account_analytic_default installed
- go to settings and activate Analytic Accounting
- go to accounting > configuration > analytic accounts > create an account
- go to accounting > customers > invoices > create > make an invoice line with
an analytical account > save > edit > add a new line to the invoice and select
any product
Previous behavior:
analytic accounts previously saved are deleted by an onchange
Current behavior:
analytic accounts remains set after any update of the invoice lines
opw-2209169
closesodoo/odoo#47514
X-original-commit: be7d1d7510bc94f949a4fc55a6038a83fb026147
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Steps to reproduce the bug:
- Let's consider a company C with Belgian chart of accounts
- Let's consider a product P with 21% of Tax at 100€
- Go to POS and create an order O for P
- Pay O and close the POS
- Open the journal entry JE of O
- Reset to draft JE and change the Analytic Tags of the 100€ credit line
Bug:
The Tax grids of the 21€ credit line was removed.
PS: This fix avoids the recomputation of taxes when adding analytics tags
closes: #46827
opw-2189255
closesodoo/odoo#47471
X-original-commit: 8c93d6092928f8190f6897b772fe44c0728879c7
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Co-authored-by: bve-odoo <bve@odoo.com>
Add fapiao number to account.move, only show it when the company is
located in China.
Task 2180269
PR #45743
Related: odoo/upgrade#813
Signed-off-by: Josse Colpaert <jco@openerp.com>
PURPOSE
Create a tour for Events to introduce new users to this freshly
revamped application.
SPECIFICATIONS
In 'website_event' module the tour steps extends the 'event' tour steps
LINKS
Task ID : 2180175
PR : #45612
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
When incoming emails bounce due to alias security bounce email is quite
generic. Purpose of this task is to ease its customization and update.
SPECIFICATIONS
In order to improve the flexibility of alias, add a customizable html field
on the alias model. This html content will be send as bounce email core content
in case of bounced/unauthorized mail received for this alias,
Obviously it has no effect on 'everyone' security setting as no email will
bounce due to that issue.
If it is not set a default generic mail will be send depending on security
setting. It allows to keep void html fields when no specific bounce content
is required
In HR, an old template allowing some light customization for employee based
security option is removed as it is completely replaced by the new feature.
Also add references message-id of the mail received to the answer so that
threads are correctly set.
LINKS
Task ID 2126509
Community PR odoo/odoo#41827
Upgrade PR odoo/upgrade#936
Related: odoo/upgrade#936
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
When incoming emails bounce due to alias security bounce email is quite
generic. Purpose of this task is to ease its customization and update.
SPECIFICATIONS
In order to improve the flexibility of alias, add a customizable html field
on the alias model. This html content will be send as bounce email core content
in case of bounced/unauthorized mail received for this alias,
Obviously it has no effect on 'everyone' security setting as no email will
bounce due to that issue.
If it is not set a default generic mail will be send depending on security
setting. It allows to keep void html fields when no specific bounce content
is required
In HR, an old template allowing some light customization for employee based
security option is removed as it is completely replaced by the new feature.
Also add references message-id of the mail received to the answer so that
threads are correctly set.
LINKS
Task ID 2126509
In odoo empty html is not always completely empty. This tool method allow
to consider html holding void tags as empty html. This happens notably when
using the editor that may store <p><br><p> even if displayed content is void.
Task ID 2126509
PR #41827
PURPOSE
Ease edition of digest tips by adding a name.
SPECIFICATIONS
Add a name on digest tips. Even if technical and not send to customers it
allows to see them at a glance in list view without having to guess their
content.
LINKS
Task ID 2214325
Com PR odoo/odoo#47416
Related: odoo/upgrade#933
Related: odoo/enterprise#9167
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
Allow to edit and improve digest tips by adding views.
SPECIFICATIONS
Add views for digest tips. Locate those views in technical menu, in email
section, below Digest Emails.
LINKS
Task ID 2214325
Com PR odoo/odoo#47416
Before this commit:
- Install a module
- Uninstall the previously installed module
- The registry will complain that some dependencies may be missing
for the module being uninstalled
This happens because we check after the installation / upgrade of
modules that none have been left in a transient state to verify that new
dependencies have been properly installed and loaded, this applies to
'to install' and 'to upgrade' states however it's not the same for 'to
remove' states, as the process of uninstall happens much later in the
code.
After this commit, simply uninstalling modules will not trigger this
error log.
Do note that in case of a problem with an uninstall, the function
"reset_module_states" will tackle the case of leftover transient states.
closesodoo/odoo#47495
X-original-commit: c095a28314f78d1d9854e5e9bcb26014922a4f12
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
When your point of sale is offline and you try to print your ticket from
the button 'Print Receipt', the notification "trying to reconnect" is
displayed on the ticket. We are removing it when it is printed.
closesodoo/odoo#47481
X-original-commit: 9aa9705c2dce1c6164b5909500e7c2038b93812c
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
In POS Settings activate IoTBox, and its suboption 'Receipt Printer'
Activate now 'Reprint Receipt'
Open the POS, make an order, validate and go to a next new order.
Click on 'Reprint Receipt', then 'Print Invoice', fill the customer and
try again
Server Error message will popup, reprinting the invoice is thus,
impossible.
In v13 the action warn the user to print the invoice via backend, so
this commit replace entirely the button with the message
opw-2195440
closesodoo/odoo#47049
Original-signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
X-original-commit: d2a7300e8ebddf5dd812ffec75b3eda1a083aeeb
This commit allows to pass a bin_size context to False.
Before this commit it wasn't possible because it was
always overriden.
OPW-2208232
closesodoo/odoo#47491
X-original-commit: 17d53cea1043054dfa9c39b16b430539c4082a9d
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Issue
- Have 2 languages installed
- Install Invoicing & Website
- Go in Settings
- Search "logo" (image)
- Upload a logo for your website
- Save
- Search "Default terms & conditions" (translatable field)
- Click on the translate button (e.g. EN if you are in
english)
A popup will appears saying that you should save your
changes.
- Click on Save & do not edit translation (not needed)
- Search "logo"
Image disappeared
Cause
When saving, a read is called. By default, read has
bin_size to true to avoid performances issues.
It will return the image size instead of the content
This is why the image disappeared.
Solution
As configuration is dirty, you are forced to save &
it will always read with bin_size set to true.
My solution would be to set it to false for settings.
OPW-2208232
X-original-commit: 93a7695f65baf00d1f82481d6a2a97e6c11940a8
Open every model with the chatter
Schedule an activity
Click on "Done" button and insert a feedback with an accent/quote.
Escaped sequence will appear as result.
In v13 the html feedback field which was used to store feedback
was replaced by the mail subsystem, so the value should be sent to the
message_post_with_view unescaped
opw-2209081
closesodoo/odoo#46985
X-original-commit: d66c676e6a49cbf4cfcdae014c3b5e80dd7920d2
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
When testing odoo, errors can occur an undeterministic way, wich can
lead to strange and unreproductible behaviour. This also means that the
performance can change from one execution to another, making it quite
difficult to track performance variation on a global scope.
This commit makes the result of `exists()` deterministic in terms of
order. The side effect is to keep record ids in the same order as the
original recordset, which may be useful.
closesodoo/odoo#47282
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Co-authored-by: Raphael Collet <rco@odoo.com>
A constraint was added. That is why we had the error,
but we need the fix anyways, otherwise the tags won't be
visible in the configuration of the taxes.
Task id: 2214184
closesodoo/odoo#47440
X-original-commit: 9bac70b6a0e5eab76910c5728371310e32d9cf8a
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
PURPOSE
When previewing a slide of type 'quiz', users are tempted to answer the
questions even if they are not member of the course yet.
This commit will allow users to answer the quiz without being a member of the
course, and offer a smart redirection to join / buy based on the enroll type
of the channel.
SPECIFICATIONS
We introduce a "CourseJoinWidget" that will handle the display and the behavior
of the "join" button based on the user (public or not) and the enroll type
(public course or based on a payment).
When the user answers questions and he's not a member yet, we store the answers
temporarily in the session object.
When he comes back on the quiz page after having completed his membership, we
fill in the quiz based on his previously entered answers and clean the session.
LINKS
Task 2045571
closesodoo/odoo#41972
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
As portal user has access to the "Taking care of trees" demo course, we add
this course to the sale order that already contains the "DIY Furniture".
Since the course is "pay to access", it makes more sense.
LINKS
PR #41972
Task 2045571
PURPOSE
When previewing a slide of type 'quiz', users are tempted to answer the
questions even if they are not member of the course yet.
This commit will allow users to answer the quiz without being a member of the
course, and offer a smart redirection to join / buy based on the enroll type
of the channel.
SPECIFICATIONS
We introduce a "CourseJoinWidget" that will handle the display and the behavior
of the "join" button based on the user (public or not) and the enroll type
(public course or based on a payment).
When the user answers questions and he's not a member yet, we store the answers
temporarily in the session object.
When he comes back on the quiz page after having completed his membership, we
fill in the quiz based on his previously entered answers and clean the session.
LINKS
Task 2045571
PR #41972
Co-authored-by: Florent Lejolyn <fle@odoo.com>
Co-authored-by: Aurélien Warnon <awa@odoo.com>
This commit simply renames a template file to better reflect its purpose and
also align with its JS widget file naming. It is a preparation commit for
pending changes.
Task 2045571
PR #41972
Before this commit:
- Install some random module that can be uninstalled (so not base)
- Open the uninstall wizard for said module in two different tabs /
windows / whatever
- In one tab, confirm the module uninstall and wait for it to be
done
- As soon as the other tab is done with the uninstall, go to the
second one with the uninstall wizard still open, and proceed
with the second uninstall
- Boom, the registry crashes and completely fucks up the DB because
there's no check at all that prevents the uninstall of already
uninstalled modules.
After this commit:
- `ir.module.module.button_uninstall` will check if all the
modules being uninstalled are in the installed state
and if not a UserError will be raised, preventing a second
uninstall of the module which could potentially break the DB
Do note that this fix is LOCAL, the problem is however more or less
global, wherever there's user-actionable buttons that should only be
pressed once there's a potential for bugs / breakage if a similar fix is
not implemented locally. Perhaps a more global fix should be implemented
eventually, but it's generally less annoying for business cases since
those probably won't break the registry, see task 1859014.
opw-2213679
opw-2212594
opw-2206446
closesodoo/odoo#47450
X-original-commit: 8c1bb22ec0222dca652e0649454b986c06cb1368
Signed-off-by: Adrian Torres (adt) <adt@odoo.com>
With l10n_mx installed:
- Check in the settings that cash basis option is activated, and enabled
on a Purchase Tax (example : IVA(16%) COMPRAS)
- Create a vendor bill with this tax, validate it and
register payment.
- Create a credit note to this invoice, validate and register payment.
- Cancel the credit note
Error will occur, a record is already deleted.
This occur because the canceling action recursively find every related
move to delete, but in the process an account.full.reconcile is going to
be unlinked twice: a check on reverse the exchange rate entry will
trigger the error because the record is already deleted
opw-2199093
closesodoo/odoo#47432
X-original-commit: a230690d947be2095ad1ec7ccca170f9faa222dc
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
A user with no Purchase rights and only Inventory User rights should be able to cancel an SO
and access requisition_line_ids field.
closesodoo/odoo#47441
X-original-commit: 9a6af5ea576d7eb451fb3c4fa88880eb9edf78af
Signed-off-by: Alex Tuyls <alt-odoo@users.noreply.github.com>
Images of the lunch dashboard are not cached by the browser.
closesodoo/odoo#47427
X-original-commit: fec2e2a49faa69d2ce554e62a3de196573fa3656
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
The hover effect on popover is the following: the popup is opened when
passing the mouse cursor on the icon and closed once it leave the icon.
The issue is if the popup has a button inside, clicking the button
freeze the popup. It cannot be closed unless the entire page is
refreshed
Task : 2199078
closesodoo/odoo#47408
X-original-commit: 25947264929a602256bd7febafa074ef7dabf7bd
Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
The `type` field was renamed `move_type` in
d675dbaa4c but a forward-port re-added a
use of the old `type` name, which breaks if an account.move is
unlinked while l10n_latam_invoice_document is unlinked (and there are
related moves to update).
Instead of renaming the field, use the proper utility method for the
category (purchase) provided by account.move.
closesodoo/odoo#47301
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Commit [1] does not work as it is supposed to, because there has been a
confusion between the "notification request" and the "chat with OdooBot".
`_showOdoobotTimeout` is for the chat, and it is unrelated to the notification
request. We don't want to initiate multiple chats with OdooBot so that has to be
reverted.
As for the original goal of the PR about the notification request, it wasn't met
either because it is the browser controlling it:
- on Firefox there simply isn't a "close" button, and closing it by any other
means (escape key) is considered as a denied.
- on Chrome, when closing it for the first time, it will appear again
automatically after the next page reload, so no additional code is required.
However, if it is closed too many times (around 3) it will become
automatically denied too, at the browser level.
The only thing to do at that point is to better notify the user that it was
blocked, without being intrusive, which is the focus of task-2188584.
[1] b7254ecaeee7f8fa564ca2059f119f5d12404af6
opw-2186299
closesodoo/odoo#47395
X-original-commit: 50155e808c44121086cc7436cec0e7f166cd4268
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, Payment URL was not encoded correctly which can compute Payment refernece Wrongly on website.
Eg,
Enter Description which contains Special Characters
Go to Payment Page using Computed URL.
There will be wrong Payment Reference on Payment page.
With this commit, We encode Payment reference before generating Payment URL.
closesodoo/odoo#47387
X-original-commit: 6ebcc43d177b9333afa73ee90e976d57111aaf3d
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Before this the `--unaccent` flag does double duty to specify whether
to create new databases with the extension *and* to try to use the
corresponding function.
The latter is further gated on the function existing at all in the
database.
Given postgresql does not have unaccent installed by default it seems
only the latter is really useful and we can ignore the flag to decide
whether to enable unaccent features, if the extension is installed
consider that it should be enabled and move on.
Merge this in master rather than previous versions as it can change
things like index access / use.
closesodoo/odoo#47377
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Fine tuning of 1e411e3a6d
- It moves the attachment in the message when we mark an activity as
done.
- It adds a test
OPW-2196668
closesodoo/odoo#47349
X-original-commit: 2033066426a6af6eed5f80f1bcde6e650e998f0d
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>