Steps to reproduce the bug:
- Create two companies C1 and C2 where C2 is the child of C1
- Create two purchase taxes T1 and T2 where T1 is in C1 and C2 is in T2
- Create a prodcuct P with T1 and T2 as supplier taxes
- Be in C1 as current company
- Create a RFQ and add P
Bug:
T1 and T2 were set on the order line of P instead of T1
PS: This fix is insired from product_id_change in model sale.order.line
opw:2032113
closesodoo/odoo#34658
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Have a user U that is Project User, Timesheets User, Employeed Officer.
Give him access to a private task T (by adding U as a follower of T)
on private project P.
Because of Employeed Officer rights, view_task_form2_inherited is rendered.
This shows field is_project_map_empty, which computation depends on project_id.
If U does not have access to P, then this triggers an access error, so the Task
cannot be displayed.
It is in general a legitimate configuration to allow U to interact with T
without being given full access to P, since it works in all cases but the rights
described above.
Since the computation of is_project_map_empty is the only blocking point,
we put it in sudo.
opw 2031124
closesodoo/odoo#34676
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
In multicompany mode,
/!\ Adress book sharing should be deactivated
User A in company A creates a vendor bill without a partner
User B in company observes the list. The new bill is present
User A changes companies and goes to company B
User B doesn't have access to company B
User B reloads the list
Before this commit, there was an access right error on User B side because the partner associated
with User A changed company, and is now unreadable from User B perspective
After this commit, there is no crash and we have the string: Created By User A in the list
in place of the vendor display name
OPW 2028451
closesodoo/odoo#34668
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Before this patch, this method was altering the signature of its parent method, moving the position of `failure_type` to 1 and making the other 2 arguments kw-only.
It seems this accidentally didn't break anything because all calls happened to be done in kwarg mode. However, it's very possible that a downstream module that is not based on `mass_mailing` and makes positional calls gets broken when `mass_mailing` is installed.
The fix is to respect original method signature.
closesodoo/odoo#34648
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
The callback will usually check the transaction's state during
its execution, hence it should be executed after the state change
closesodoo/odoo#34666
Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
Move inside a node so the term can be exported (t-esc value are not
translatable)
opw-2031550
closesodoo/odoo#34663
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Install website_slides, create a bunch of users all published on the
website. Using raw sql queries, give some karma to those users. Go to
the `/profile/users` web page. When connected the ranking is correctly
shown, when not connected all users are ranked 0.
The problem is that the public user (id: 4) can only access is own user
which prevent him to access the karma of the other user required to rank
them.
As the injected IR Rules are not adding any value and that a domain is
applied already, it is safe to skip the ir rules.
opw-2029105
closesodoo/odoo#34656
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
The default value for a many2one on res.currency should be a currency
not a company
closesodoo/odoo#35005
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before this commit, the signature tour (130af96dc1) would fail sometimes.
Indeed, the tour is trying to get `Thank You` on the page after the sign step
but since the modal to pay will open on top of the page, the `Thank You` would
not be found.
closesodoo/odoo#34990
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
Before this commit, the close button on the thread window was
too small to click on it. The padding of the button wasn't over
the all available area.
After this commit, the padding of the close button is higher and
so the user can target it more easily on a small screen.
We had to reduce the padding of the parent.
Step to reproduce:
- Open the "Discuss" app
- Go to the "Channels" tab
- Open a channel
- Try to tap on the close button on the top left window
Task ID : 2033828
closesodoo/odoo#34977
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
This fixes a bug in Website, that can be reproduced like so:
- insert a snippet
- insert a char in it
- 2x CTRL-Z
The second CTRL-Z didn't do anything because Summernote moved the range
to the header, which is not editable. This fix moves the range to the
first editable element in the editor in these cases, thereby keeping the
focus in an editable area, and ensuring that hotkeys still function.
The history feature being non-tested as of this version, no test could
be added for this fix.
closesodoo/odoo#34834
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Writing the country_id of the main company in demo data disables demo
data installation if installing multiple l10n, this is caused by a wrong
check of the vat field (base_vat).
Two approaches can be used here:
- Always write on country_id in all l10n demo data
NB: this also implies writing the country_id first in order for the
vat check to be done using the right country code
- Never write on country_id in any l10n demo data
The prefered approach for the moment is to never write on the country_id
of the main company.
This approach is easier to apply as it is a mimimal diff and the first
approach would require deeper changes to the code in order to allow
writing all the information in a single `record` tag in the demo data
closesodoo/odoo#34905
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
When (un)registering a typing members of a channel, the discuss
sidebar must be re-render. This is necessary in order to display
the typing indicator next to discuss items, i.e. '...'.
When receiving a message from a typing member, this person no
longer becomes a typing member.
Before this commit, for each new messages, the discuss sidebar
was re-rendered. This happens due to unregistering the author
from the typing members of the channel, even when the author
was not a typing member in the first place.
With this commit, when the list of typing members of a channel
does not change, the discuss sidebar won't re-render and slow
down the whole UI.
opw-2035443
closesodoo/odoo#33616
Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
Before this commit, chat window's out-of-office info did not change
when direct partner's `im_status` is/was on 'leave'.
Users had to reload page to see updated out-of-office info.
Task-ID 2007663
Before this commit, most new messages added to the mail manager were
handled as if recently posted from a document thread. As a result, it
was frequently setting a new item in the local storage to notify
other tabs from these new messages.
The intent of this behaviour is to notify other tabs of newly posted
messages in a document thread, without using a longpolling
notification. That means this logic should only apply on messages
that have been recently posted on a document thread.
Sometimes, this issue was breaking the local storage on Firefox.
It showed the error message "Quota Exceeded Error" whenever `setItem`
was used, even when items were removed beforehand. The capacity of
the storage was only a few Kbs on this domain, far from reaching the
maximum capacity. We think that this error comes from the concurrent
`setItem` on multiple tabs, but this is very hard to reproduce.
This commit fixes the issue by limiting the `setItem` to the tab
that really posted the message. Tests have been adapted in order to
pass only with this fix.
Before this commit, when a transaction has as status 'authorized', the
transactions' confirm page gives an error : 'Oops! There was a problem
with your payment.'
Now, the page gives the same message as when the transaction has the
status 'done' : 'Your payment was successful! It may take some time to
be validated on our end.'
opw-1984325
closesodoo/odoo#34652
Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
[FIX] mrp: Manufacturing cost analysis report
Steps to reproduce the bug:
- Create a finished product P with a manufacturing BOM B
- Set two components on B C1 and C2
- Create a MO with P and process it(plan and produce it)
- Unlock the MO and set the consumed qty of C1 to 0
- Lock and click on Mark as Done
- Click on Cost Analysis
Bug:
C1 was displayed in the report with a qty = 1.0
Fine tuning of this commit: cb4afb263b
opw:2010912
closesodoo/odoo#34642
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Before this commit, on a device with a "pen" (e.g. Surface Pro, ...),
it was not possible to sign a document on some browsers recently
updated (e.g. Chrome, Firefox, ...) only Internet Explorer was working.
Instead of drawing continuous lines only few dots appeared.
For Chrome and Firefox we have to catch events with "addEventListener".
For Edge we add touch-action property to convert touch events into click.
Steps to reproduce:
1) Go to sales app
2) Then go to quotations (menu Sales)
3) Create a new quotation
4) Click on preview
5) Click on the "Accept" button at the end of the preview
6) Use the "pen" to draw the signature (BUG)
We use a custom version of the jSignature lib (c.f. odoo/odoo@eddcb46),
so we have to patch the file in the Odoo repo with a mix of some
pull request found in the official repo and forks.
Link:
https://github.com/brinley/jSignature/pull/109https://github.com/brinley/jSignature/pull/159https://github.com/willowsystems/jSignature/pull/96
opw-2029684
Set an automatic reconciliation model with a tax
Create a bank statement on which one line will be caught by that model
Click on reconcile to get to the reconciliation widget
Observe the account move lines creates
Before this commit, the move line representing the tax amount
(and in the account for taxes) did not have a tax_line_id, which is
a reference to the tax that made the line exist
This messed up tax reports
After this commit, the move line of the tax has a reference
to the tax it originated from
The tax reports are correct
OPW 2006826
closesodoo/odoo#34627
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Create a quotation and send an email to the customer, let the customer
reply by email, as a portal user go on the portal view of that
quotation, he does not see the emails.
opw-2008653
closesodoo/odoo#34611
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
On the webiste, add the Latest Posts widget. Create a new blog post,
publish it on website but set its "Publishing Date" `post_date` to a
future date. The blog post is not publicly available but is listed on
the latest blog posts.
opw-2027368
closesodoo/odoo#34760
Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
[FIX] hr_timesheet_attendance: disable link from timesheet attendance report
---------
Before this commit, linking was enable for pivot view of hr.timesheet.attendance.report
Opening the record is useless since all information is in
the pivot view.
Also, no list view is defined, therefore an empty list view is opened.
This commit disable linking.
[FIX] hr_timesheet_attendance: Fix report date type
---------
The field `date` of `hr.timesheet.attendance.report` if of type Date.
However, in the SQL view, the value is wrongly set
to a datetime in the database.
Therefore, the value is a datetime in database, but it's considered
as a date by the ORM. This can lead to a traceback.
The postgreql function `date_trunc` is misused because it returns
a datetime.
Fix:
1. The date value from hr_attendance.checkin is a datetime
=> cast to date
2. The date value from account_analytic_line.date is already a date
=> don't do anything
closes#34046#34612
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
closesodoo/odoo#34741
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
The field `date` of `hr.timesheet.attendance.report` if of type Date.
However, in the SQL view, the value is wrongly set
to a datetime in the database.
Therefore, the value is a datetime in database, but it's considered
as a date by the ORM. This can lead to a traceback.
The postgreql function `date_trunc` is misused because it returns
a datetime.
Fix:
1. The date value from hr_attendance.checkin is a datetime
=> cast to date
2. The date value from account_analytic_line.date is already a date
=> don't do anything
Before this commit, linking was enable for pivot view of hr.timesheet.attendance.report
Opening the record is useless since all information is in
the pivot view.
Also, no list view is defined, therefore an empty list view is opened.
This commit disable linking.
Before this commit, `language_ids` field would be required through python code.
It is the only website res settings field that is required=True.
That's an issue since the website settings can be empty if there is no readable
website. In that case, the settings won't save.
Website res settings should be set as required XML side, in the view,
conditionned on the fact there is a website selected or not.
For the reason why there is not always a website selected, see bb473003d7.
closesodoo/odoo#34706
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
The balance start should only be set with the ending balance of the
previous session when journal type is 'cash'. When the journal type
is 'bank', it must be 0.
Fine tuning of this commit: 46d0b461cd
opw:1981984
closesodoo/odoo#34735
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Same reason as: 4ba4d61903
Some messages from payment are displayed on the frontend (eg. when the
transaction is being done on the ecommerce), but only translations of
module matching a given domain (computed with the method of ir.http
model: _get_translation_frontend_modules_domain) are made available on
the frontend.
With this changeset, payment is added in the domain (which can be done
since payment depends on account, account on portal, and portal in
http_routing that declares the method).
opw-2033528
closes#34712
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
On a small display, go to accounting > journal entries > create
In the (now kanban) list of account move lines, click ADD
Then, try to choose an account
Before this commit:
The list of accounts was empty.
This was because the form view spawned was the automatic generic one
The generated view did not have thr necessary structure to get fields' value
from the parent form view.
In this case, the domain of the name_search for account.account was wrong
After this commit:
The flow works on mobile as on desktop. The form view's arch is a 1 to 1
copy of the list view in terms of fields and their definition
OPW 2030837
closesodoo/odoo#34601
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Backport somewhat improved version of this fix (we don't need to check
for the existing extension since we're not doing anything if there is
an extension at all) merged into later branches, to avoid forward-port
conflicts.
closesodoo/odoo#34509
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Since https://github.com/odoo/odoo/pull/29442, "Animations" became
"Public Widgets" (even though the Animation class still exists as an
extension of standard PublicWidget).
Since that refactoring an error was introduced which made the code
modify the prototype of the 'events' key each time a public widget with
a 'read_events' or 'edit_events' was instantiated (while the goal was
to modify the widget's own 'events' key, not from the prototype). This
was the cause of very ununderstandable errors...
closesodoo/odoo#34600
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Before 8557bcf the URLs were never rewritten for multilang, which was an
error and could duplicated the number of requests on frontend.
Since 8557bcf the URLs are rewritten. In Odoo the werkzeug library is
used to parse the URLs (this is similar to python parsing URL but works
in python2 and python3 the same), and in this particular instance it
chooses that tel:800800 is website http://tel:800800 and not a telephone
number.
The problem is when the url uses the uri 'tel:' and only numbers as a
phone number, if the user uses the global format for telephone number
(with the +) or using a separator for the numbers (e.g. '-' , '/'), in
these cases there are no problems parsing the url (phone number RFC:
https://tools.ietf.org/html/rfc3966).
This commit changes the uri 'tel:' to 'tel://' this one is correctly
parsed by the werkzeug library.
opw-2029844
closes#34306closesodoo/odoo#34586
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
The method action_duplicated method was in account.move.line, but it should have been in account.move instead
Also, there was a wrong rebase with f9a0e2b061a3cd90cc0d17bb92aef6ccf2ce75ea
closesodoo/odoo#34554
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
-clicking on 'Overview' of kanban view of the project, generates
traceback due to imporper values given.
task-2031788
closesodoo/odoo#34770
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
-when we click on overview in kanban view of projects, it shows
traceback because the data found was already in proper state
and doesn't require any kind of conversion while there is json
conversion.
-after this commit, it will get proper data and will not create any traceback
task-2031788
If there is no website selected, there is no point to show the specific
settings (which are supposed to be wrote on website model, that will write on
an empty recordset) as it just flood the screen for nothing.
If multi website is enabled, tell the user he could select a website to load
the settings.
If not enabled, the user can't select a website as the select will be hidden.
In that case, just tell the user that he could create a new website for this
company.
More than just a display improvement, it will also prevent misunderstanding of
the website settings when an user arrive on the settings with no website
selected.
Followup of https://github.com/odoo/odoo/pull/34706closesodoo/odoo#34764
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
This test was merged in 12.0 at 9308180089 where the new folder hierarchy and
asset did not exists (introduced in saas-12.4 at fdbf11643f).
This commit fixes it.
closesodoo/odoo#34629
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>