Each payment acquirer has its own implementation specificities: some
implement a 'payment with redirection' flow and others a 'direct payment
flow'; sometimes the 'payment with redirection' flow is even implemented
as a 'direct payment' flow through an iframe; one payment acquirer could
support webhooks while another does not and relies on another mechanism
to fetch payment status updates...
It can be tricky to guess where to look in the code to determine how a
payment acquirer is implemented.
On top of that, the online payments ecosystem evolves at a fast pace due
to competition, buyouts, and legislation enforcement. Acquirers are thus
frequently migrated to new APIs that might differ in implementation from
the previous API.
To help figure out the *which*, *why*, *how*, and *when* of payment API
implementations, a README.md file is added to the main directory of all
payment acquirer modules. They can be browsed in human-readable format
on GitHub.
task-2374916
closesodoo/odoo#156084
X-original-commit: 4c19f26df3d39394cce2f183d6df15c5b89c7d27
Related: odoo/enterprise#57921
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Before this commit, if a product had a discount applied in two
different orders, it could lead to incorrect calculations in the report
For instance, if a product priced at 14.45 had a 30% discount applied,
the discounted value would be 10.115, which rounds to 10.12. However,
if there were two orders with the same discount, the report calculation
would count the quantity of a product with the same discount and
calculate the product total amount in one place. This would result in a
discounted value of 10.115 * 2 = 20.23, while in the two different
orders we had two 10.12 which sums to 20.24.
With this commit, the calculation method has been changed. Now, the
product amount total for each line is calculated first, and then the
sum of these amounts is used to calculate the total for all of the
orders. This change ensures accurate computation of the product total
sum when discounts are applied across multiple orders.
opw-3721376
closesodoo/odoo#156160
X-original-commit: bb71f77e117a8a07c1e161f583d136cd5c16a078
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Pedram Bi Ria (pebr) <pebr@odoo.com>
When listing jobs on the website, we show the number of open positions.
Currently the "open positions" were crafted in the QWeb template in such
a way that the translation mechanism couldn't extract it and thus it
could not be translated.
In this commit we fix that, so that it can be translated again.
opw-3761288
closesodoo/odoo#155974
X-original-commit: d19aa2e13be11cb2ce9d293c453a58f136b03712
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
Signed-off-by: Dylan Kiss (dyki) <dyki@odoo.com>
Current behavior:
When invoicing a POS order, the payment were not appearing in the
invoice.
Steps to reproduce:
- Create a POS order
- Validate and invoice the order
- Open the invoice PDF, the payment is not appearing
opw-3748596
closesodoo/odoo#155771
Signed-off-by: Vlad Stroia (vlst) <vlst@odoo.com>
Bug
===
Since c5b87e130b , the Date / Datetime
are not formatted the way they suppose to be. So the value is not
correct (it contains the timezone, etc).
Because of that, the string "Invalid Date" is stored in database
instead of "YYY-mm-dd" when we change the default value in the
definition.
Task-3774178
closesodoo/odoo#155749
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Fix race-condition when a directory is created by two processes (python's os.py
handles it for all directories, but not for the last one). Happens sometimes
when generating assets for the first time (CSS, JS); one of the two times might
crash.
sentry-4417110945
closesodoo/odoo#156232
Signed-off-by: Fabien Pinckaers (fp) <fp@odoo.com>
This commit resolves an issue (arose in [1]) where a select field was
displaying IDs instead of labels.
Steps to reproduce:
- Navigate to edit mode
- Drop a form block.
- Select the form action type "create customer" (CRM app must be
installed).
- Add a field for "country".
- Add another field and set its visibility to depend on the country
value.
Issue:
Users are seeing IDs instead of country labels.
[1]: https://github.com/odoo/odoo/commit/a54f11edb1f81c8dade2a4ef6080b666b94e918d
task-3460326
closesodoo/odoo#156190
X-original-commit: 00c9df80fb89e5f50ada256b648a678fe8e0ce15
Signed-off-by: Robin Lejeune (role) <role@odoo.com>
The commit 7452f855f05251a5458ddb4d654b03be1b179d40 was fixing the
problem in a simple way. It however wasn't good enough of a fix as we
discovered we were triggering too many onChange after the forward port.
So we revert commit 7452f855, and backport 5ffc604 from 17.1. It adds
a method on the model to reset the validity of a field.
It was not what felt the best, but as it is working and we just want to
fix the problem in stable, we go for it.
opw 3680495
closesodoo/odoo#156139
X-original-commit: 2fa3fd751a968a15a76d322c53241022b4b18ef3
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Simon Genin (ges@odoo) <ges@odoo.com>
Steps to reproduce:
- In website edit mode, have a header with a search icon
('default header').
- Add a few building blocks, enough so that you can scroll.
- Save the page.
- Scroll down until the header is back to fixed on top.
- Click on the search icon.
- Bug: the search bar appears in header (instead of below it, like at
the beginning).
This issue occurs because when the header is fixed and has a 'transform:
translate' property applied, the search modal, which is positioned
absolutely, takes the dimensions of the header instead of those of the
body.
To resolve this, we relocated the '#o_search_modal' element from the
'#header' to '#o_shared_blocks'.
task-3646513
closesodoo/odoo#155703
Signed-off-by: Robin Lejeune (role) <role@odoo.com>
When having reconciled a payment with an invoice
after having changed the outstanding receipts account
on the bank journal, we get an error when unreconciliing
the payment and the move.
Steps:
- Create two new outstanding receipts accounts X and Y
- Set X as outstandings receipts account on the Bank journal
- Create a manual customer payment P for $100, confirm
- On Bank journal, change the outstanding receipts account from
X to Y
- Create and confirm an invoice for $100
- Reconcile with payment P from the widget
- Unreconcile or reset invoice to draft
-> Error: "Journal Entry %s is not valid. In order to proceed,
the journal items must include one and only one outstanding
payments/receipts account."
opw-3659092
closesodoo/odoo#155558
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Steps to reproduce:
- Go to a website page (in "edit" mode) > Add a "Text Image" block > Add
other blocks before and after the snippet so you can scroll the page
content.
- Scroll in a way that makes only a part of the image visible.
- Select the image and click on the "Crop" button > The crop widget is
applied to the image in its current position (partially visible), which
makes it impossible to crop it correctly.
The goal of this commit is to prevent the issue described above by
simply scrolling to a position that allows to correctly edit the image
before applying the crop widget and also allowing the widget element to
scroll when trying to crop an image that overflows the current viewport.
task-3420186
closesodoo/odoo#155094
X-original-commit: 8ef34c15336c6938f40c15dbcc64c025b24d5808
Signed-off-by: Robin Lejeune (role) <role@odoo.com>
How to reproduce the bug :
- Go to one project from portal user
- Open a task
- Create a subtask of this task
- Open the subtask
- Click on "Parent Task" button
=> Traceback
Fix :
- The search view is not loaded when opening the parent task
- We add manually the search view id in the action opening the
parent
taskid:3551354
closesodoo/odoo#156183
X-original-commit: 536638a92d6d7b242e27ae6f73431c61267b4eeb
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
When inlining styles for e-mails, some styles could be lost if they were
defined in css but also had an inline style that started with the same
characters. For example, a node with a style attribute defining
`margin-top: 10px` and a css style defining `margin: 5px` would end up
with `margin-top: 10px` and losing the rest of the information.
opw-3650141
closesodoo/odoo#156177
X-original-commit: f2d2531125af90bd2a20e0e1a5cb5e44e7b4a02b
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Signed-off-by: Antoine Guenet (age) <age@odoo.com>
Steps to Reproduce :
- install sales, stock modules
- go to products and create new
- select product type as Event Ticket,Event Booth or Gift Card
- Landed cost boolean is suppose to be visible for a service type product under
purchase.
Issue :
- Landed cost boolean is suppose to be visible for a service type product under
purchase, But currently it is visible on other type of products specific to
other models like event tickets, event booths etc.
Cause:
- In product Module there are two Selection fields like detailed_type and
type. The detailed_type Selection field contain service, consumable,
event booths, event tickets, storable product And the type selection field
contains service, consumable, storable product
- In xml views for that landed cost boolean the invisible attribute contains
the condition like type != service, because of this the landed cost boolean
is visible for the product type of event tickets, event booths and gift Cards.
Solution:
- if we use detailed_type instead of type selection field, then the landed cost
boolean field will be invisible on other product types.
task- 3725202
closesodoo/odoo#156133
X-original-commit: 6ff6b204901f9966340d1d609dac5f3fb5385b38
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
The `test_calendar_month_view_start_hour_displayed` makes sure
that start hour is display in calendar month view.
The test was failing because when clicking on scale selector,
it used '.dropdown-toggle:contains("Week")' however it might
happen that the current scale is not week.
This commit fixes this issue by changing the way we access
the scale selector.
fixes runbot-59023
closesodoo/odoo#156121
Signed-off-by: Arnaud Joset (arj) <arj@odoo.com>
Currently the field `Kode Transaksi` can be found inside the accounting tab. This fix will move it under the tax field. `Kode Transaksi` is a field that should be used in the sale flow and is currently unavailabe for sales team.
Steps to reproduce:
-------------------
* Install **l10n_id**
* Create a company with indonesian localization
* Switch to that company
* Creat a contact
* Toggle the checkbox next to `Tax ID`
* Under the `Accounting` tab, you can find `Kode transaksi`. Sales team don't have access to the accounting tab, and thus not to `Kode transaksi` either.
Why the fix:
------------
Technically what we want here is to have the field for `Kode Transaksi` after the `vat` field from this view
https://github.com/odoo/odoo/blob/04593b265b765f7a6ee079f21bad6a1cf0e5d094/odoo/addons/base/views/res_partner_views.xml#L205-L210
Two possible solutions for this fix:
* Fetch the path to `group/group` and put the field inside.
* Fetch the path to the `vat` field and put the field after. This would also require to change the priority of the view starting from saas-16.3 because the `vat` field is being moved in this view:
https://github.com/odoo/odoo/blob/8ccde3f101cdb6ca41fe29cc5b4252f13745774a/addons/base_vat/views/res_partner_views.xml#L14-L18
By changing the priority, it would allow for `Kode transaksi` to be place after the `vat_vies_container`. Else it would be inside, which does not make sense inthis case.
opw-3731357
closesodoo/odoo#156005
X-original-commit: 32f1ae8f54f0d0e78521dab4e6730f39d5b62612
Signed-off-by: de Wouters de Bouchout Jean-Benoît (jbw) <jbw@odoo.com>
Signed-off-by: Sarah Bellefroid (sbel) <sbel@odoo.com>
Steps to reproduce:
1) Configure a carrier with 3d party api(for ex. fedex)
2) Create 2 shipping addresses(better to choose addresses with different
delivery rates)
3) Go to /shop and add product that needs to be delivered
4) Proceed to checkout choosing a shipping address and a carrier
5) See the calculated rate
6) Click on 'edit' near the addresses and change the address
7) Click 'confirm' and observe that a new rate on the badge is not
applied to the order
After this commit the rate is recalculated and updated when the shipment
address is changed.
opw-3737266
closesodoo/odoo#155943
X-original-commit: a6288931be85a7771ea05c8dc5bc2dbcaf8f71a4
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Valeriya Chuprina (vchu) <vchu@odoo.com>
point_of_sale:
This commit changes label `VAT` -> `Tax`
because VAT is to be specific where other
countries do use other taxes i.e. `GST` changing
it to `Tax` makes it more generic
l10n_in_pos:
In India, it is mandatory to show the tax info
This commit solves the issue where tax info was missing
on POS ticket
closesodoo/odoo#155699
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Before this commit: the Outlook button status did not update automatically when we restart the sync.
This commit aims to fix the issue by using state for reactive values that control the button state.
closesodoo/odoo#155174
Task: 3731623
Signed-off-by: Arnaud Joset (arj) <arj@odoo.com>
Before this commit: the Google button status did not update automatically when we restart the sync.
This commit aims to fix the issue by using state for reactive values that control the button state.
Task: 3731623
Part-of: odoo/odoo#155174
`_message_auto_subscribe` relies on `_get_subscription_data` to know who
is subscribed to what. This method uses a raw SQL query but doesn't flush
the relevant records beforehand.
This is not an issue in most normal cases, but if followers are edited manually
for example in order to merge existing records. It may cause issues when
assigning a user to the record after merging, as the this will attempt to add
them to the list of followers automatically, when they already were on it.
task-3713472
original issue in opw-3634410
closesodoo/odoo#155139
X-original-commit: d1b0e46f7d3034c400ba3c60f343c21c68aa011e
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Signed-off-by: Renaud Thiry (reth) <reth@odoo.com>
Purpose
=======
Increase the bold of the sections in back end to better
differentiate them from the content.
Specifications
==============
Adding !important next to the css bold style (value = 700)
applied on the sections to make sure it takes the priority
over the default list view sections "fw-bold" class (value = 500).
Task-3759152
closesodoo/odoo#154990
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Steps to reproduce:
- Create a survey and enable all questions in 1 page
- Add questions. (Minimum 1 Multiple Lines Text Box)
- Test the survey
- Fill the text area with a certain amount of data vertically
- Now, hold the icon to resize the text area block
- It's overlapping with other questions.
Issue:
Fixed height:1px is applied to Parent div.
Technical Reason:
With this commit (https://github.com/odoo/odoo/commit/eaacaf122dff62adcdf885f0ffdcb4a506bded27) the height is applied to the parent
div and textarea which is the same for the backend(title of the survey) and
frontend. Now backend needs to apply this height to the parent and text area
because it has to show all data in the text area but, in the frontend, if we
change the height of the textarea then while pressing enter the textarea block
increases, and this should not happen.
Solution:
So, applying the h-auto class to the parent div of textarea
now, the questions did not overlap with each other.
Task-3707415
closesodoo/odoo#152182
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Steps to reproduce:
- Setup two companies and a product
- For one of the company activate "Subcontract Service" on the product
- Make an SO with the product and in Other Infos set the company with
the one that has subcontract service on
- Confirm the SO with the company that doesn't have it on
Issue:
No PO is generated.
Solution:
Make sure we got the right context when generating purchase.
opw-3622278
closesodoo/odoo#150626
Related: odoo/enterprise#54316
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Currently, if you install the Mexican localization, you are no longer
able to create a new account in the chart of accounts.
Steps to reproduce
------------------
* install `l10n_mx`
* attempt to create a new account in the chart of accounts
You should be met with a traceback: `TypeError: AccountAccount.create()
missing 1 required positional argument: 'vals_list'`
Cause
-----
The `@api.model` and `@api.model_create_multi` decorators in indicate
that a method is intended to operate at the model level rather than on
specific record instances. Without these decorators, the system defaults
to treating methods as if they are meant to be executed on the record
level. This distinction significantly impacts how methods are invoked
through RPC.
In RPC scenarios, Odoo's default expectation for record-level methods is
that the RPC call will include the IDs of the records to which the
method applies, alongside any actual method arguments necessary for the
operation.
Here, `create()` is called through RPC, as a model-level method (i.e,
without record IDs). This makes sense because `create()` is always a
model-level method. However, in our case, create is a record-level
method, so the system expects the RPC call to contain record IDs. This
mismatch produces a traceback.
Issue introduced by 858bf9efdd9fcc29a73336863a51227c15cc19f0
opw-3772520
opw-3772469
opw-3772287
opw-3771854
opw-3771361
closesodoo/odoo#156163
X-original-commit: 59a49bda5607e8a12cf153c4338785de42cde90c
Signed-off-by: Brice Bartoletti (bib) <bib@odoo.com>
Steps to reproduce
==================
- Install Expense (hr_expense)
- Use a small viewport
- Go to Expense
=> The status bar overflows
opw-3704233
closesodoo/odoo#156114
X-original-commit: b1c91dded0a11c870f1618869a7810317ea05643
Signed-off-by: Romain Estievenart (res) <res@odoo.com>
Signed-off-by: Hubert Van De Walle <huvw@odoo.com>
When QWeb templates became cached and compiled in [1], the list of
default cache key elements did not contain `inherit_branding_auto`
(but it included the old `inherit_branding`).
Because of this the cache was shared between restricted editors and
public users, which could lead to problems such as missing the branding
on edited fields.
Steps to reproduce:
- Use a single browser instance and do not log any user out.
- Start with `website_sale`.
- Make "demo" user a restricted editor and a sales administrator.
- Connect on 127.0.0.1 as "demo" and go to a product website page.
- Go to 127.0.0.2 as a visitor and go to the same product page.
=> The product name field of the visitor page was branded.
If you swap the last two steps, the "demo" user's page lacks the
branding.
[1]: https://github.com/odoo/odoo/commit/7ede9bcb2de9d52994b3a6fcb84edc3f81d60284
task-3482439
closesodoo/odoo#156146
X-original-commit: 821888023db462d522c5d6de84fcab80a81c2713
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Since the commit [1], a new element called "o_header_hide_on_scroll" was
introduced in some header templates. This element has the feature of
gradually decreasing its height as you start scrolling the page until it
completely disappears. To reduce the height of this element without
leaving its contents fully visible (because they maintain their height),
we added an "overflow: hidden" property on it. However, this "overflow:
hidden" introduced a bug fixed by this commit. Due to this, the
dropdowns within the "o_header_hide_on_scroll" element, like "user menu"
dropdown or "language selection" dropdown, became invisible.
Steps to reproduce the bug:
- Go to Website edit mode.
- Click on the header.
- Choose the "Menu - Sales 2" template from the options.
- Select the "Fixed" Scroll Effect from the options.
- Click on the "User Menu" dropdown in the header.
- Bug: The dropdown menu does not appear. The same issue occurs if you
type something in the search bar; the dropdown with the results does not
appear either.
To fix this, we don't apply "overflow: hidden" on the
"o_header_hide_on_scroll" element when the page hasn't been scrolled
yet. And if the page has been scrolled just a bit and the user clicks on
a dropdown or the search bar, we scroll the page to the top first, and
then display the dropdown menu.
This commit also add a test tour to prevent the bug from reappearing.
[1]: https://github.com/odoo/odoo/commit/143d475c3ab8d755906807bda8edb655c6dd22eb
opw-3698887
closesodoo/odoo#154979
Signed-off-by: Guillaume Dieleman (gdi) <gdi@odoo.com>
Description of the issue/feature this PR addresses:
In the kanban view of all applicants within the recruitment module, an issue
arises when applicants attempt to upload documents.
Current behavior before PR:
upload button is hidden while uncheck the settings from Documents for
Recruitment.
Desired behavior after PR is merged:
upload button is visible while uncheck the settings from Documents for
Recruitment.
Fix:
The PR addresses the problem by modifying tree view of ir.attachment and
default_res_model in the context. This adjustment is crucial as the current
setting results in an incorrect model name, preventing the display of uploaded
documents in this model.
task-3579833
closesodoo/odoo#155958
X-original-commit: 0bd4a6ed4732156ab37bc555ea5228ca752dfced
Related: odoo/enterprise#57840
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
Before this commit:
===================
If there is an order with a total amount of 0 in kiosk mode, then after the cart
page it is redirected to the home page without printing a receipt.
After this commit:
==================
with this commit, if an order amount is 0 then it will redirect to the
confirmation/receipt page like a normal order with the amount without
redirecting to the payment page.
task - 3773450
closesodoo/odoo#155826
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
Fix import of invoices with fixed taxes, discount and quantity > 1.
When exporting the UBL xml, we compute the fixed tax amount of the line
and create a charge on the line with this amount (e.g. see the test).
When importing this xml, we read the charges with code 'AEO' on each
lines and use the `amount` and `name` to search the fixed taxes on the
database. This issue is that we do not take the quantity of the line
into account: if we have a line with quantity = 2, and the fixed tax
amount = 1, the xml indicates a charge of 2. When we import the line,
the amount of the fixed tax to be searched should be 2 / quantity = 1.
In addition, add an test for the export and import of a line with
quantity > 1, a discount, a fixed tax and a regular tax.
opw-3717306
closesodoo/odoo#155613
X-original-commit: a1bcdc28973f712e608c6ab8067f58a2ba69ea95
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Julien Van Roy (juvr) <juvr@odoo.com>
Problem
---------
Due to commit 8d77045b46, restrictions
were added to taxes that were used in transactions. However, this
behavior worsens user experience; users that would like to modify a tax
would have to duplicate it, update the duplicated version and modify
the tax usage where necessary.
For such reason, this process is being reverted (we keep the tracking of
the modification).
The tracking of repartition lines now also includes the sequence of the
lines since it is not restricted anymore.
Furthermore, `_message_log_repartition_lines` has been updated to log
messages when new repartition lines are added or repartition lines are
removed. It also has been update to track changes of lines by comparing
their position in the tax (rel. sequence) and not their IDs. Doing so
allows to remove unnecessary logging when, for example, users remove a
repartition line and immediately add a new one similar to the one
deleted. It also allows to not log reordering event of two similar lines.
original-commit: 8d77045b46
task-3450002
closesodoo/odoo#155055
Signed-off-by: John Laterre (jol) <jol@odoo.com>
Current behavior:
When adding a product with a multi selection attribute, the attribute is
not displayed in the product configurator popup. This only happens when
opening it on a mobile device.
Steps to reproduce:
- Add a product with a multi selection attribute
- Open PoS
- Add the product to the order
- The attribute is not shown on the product configurator popup
opw-3711164
closesodoo/odoo#154893
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
This commit adds the module pos_razorpay to add a new payment
method of razorpay to point_of_sale.
closesodoo/odoo#153627
Task: 3691186
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
Since PR #152893, `mail_activity_schedule_from_chatter` test was failing on some
runbot builds. The problem is, the `timeout` to make sure the activity
type input is ready (has its data) to click again, is not enough for all builds.
Instead of using timeout (which is not same for different builds), we can add an
extra step to check if the activity id input has its data after clicking on
dropdown, to proceed to the next steps.
fixes runbot-57738
closesodoo/odoo#156030
Signed-off-by: Maryam Kia (maki) <maki@odoo.com>
Commit [1] refactored the tabs snippets options, in doing so, it
introduced a selector which could also target a tabs snippet from within
its own tab. This leads to very weird behaviour on clone.
Commit [2] introduced a new MultipleItems abstract option, and with it,
added a selector which could cause the same issue as above.
This commit fixes that by using replacing the selectors to only select
the panes of the parent Tabs snippet.
Steps to reproduce:
- Create a new web page
- Add a "Tabs" block
- Put some text in each tab in other to identify which text belongs to which tab
- In the first tab, add a new "Tabs" block, so that you will have tabs and sub-tabs
- Put some text in sub tabs in order to identify which text belongs to which sub tab
- try to add a new tab in your main tab block
=> look at the beautiful mess it creates.
[1]: https://github.com/odoo/odoo/commit/7572cc150d5469af92138533a024cffbd57d878e
[2]: https://github.com/odoo/odoo/commit/ebfa28638b47a7be45b96d561bdf144c3487f366
opw-3730155
closesodoo/odoo#156023
X-original-commit: 6c72f256691251108ab7a560b38c070a1bcf21f4
Signed-off-by: Benjamin Vray (bvr) <bvr@odoo.com>
Currently, on raspberry pi 5 our dislay interface is invading the logger
with errors due to the absence of both tvservice and the required
vcgencmd methods to identify the connected displays
While searching for a solution we can avoid the excessive log errors by
protecting the subprocess calls.
When using vcgencmd, the python wrapper of vcgencmd raises a
subprocess.CalledSubprocessError.
The tvservice does not exist on new rpi models so there is no need to
protect it
While the errors will still be present in the logs for a fresh image at
the moment,
once an rpi5 is connected to a database, it will receive the code from
this PR and will handle the exceptions more gracefully
task-3771334
closesodoo/odoo#155882
X-original-commit: 9dbcc7249d23fba36287c09c15252451ab6d0d87
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
-User might not know what they going to type in, this commit add a
placeholder in the input of industry selection to give a hint for user
when in website creation
closesodoo/odoo#155862
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Steps to reproduce
==================
- Install Timesheets
- Login as Admin
- Edit the access rights of Mark Demo:
* Timesheets: "User: all timesheets"
* Employees: "None"
- Logout and login as Demo
- Go to a project task
- Switch to the Timesheets notebook
- Add a new line
- Click on the employee field > Search More
=> An error occurred
Cause of the issue
==================
The hr.employee.public model is an SQL view of the hr.employee table
with differents permissions.
Since the user doesn't have the hr.group_hr_user group, the model
hr.employee.public should be used and not hr.employee.
Since [0], the model is switched depending on whether the user has the
appropriate group.
The EmployeeFieldRelationMixin is used and defines a getter for the
relation. That relation was not propagated to the Many2OneField.
Solution
========
Pass the relation to the many2OneProps.
---
[0]: https://github.com/odoo/odoo/pull/136786
opw-3765393
closesodoo/odoo#155743
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
Before this commit, the POS receipt was added to the bottom of the
page after printing. In some browsers, this caused overflow and made
the POS interface scrollable.
With this commit, we fix this issue by changing the position of the
receipt container to 'fixed'. This prevents the receipt from affecting
the layout of the page after printing, thus avoiding the overflow issue
and keeping the POS interface non-scrollable.
opw-3775808
closesodoo/odoo#156025
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
If booth exists for this event, bot will discover it via crawling.
Don't need to ask to crawler to check for each event if a booth exists.
closesodoo/odoo#156022
Signed-off-by: Jérémy Kersten <jke@odoo.com>
User settings is used to store user's preferences, in web we use it
to store the home menus apps order and in mail for various settings like
push to talk key, discuss sidebar preferences, etc.
Before this commit, the `setUserSettings` method from the user service
overrided all the previous key that has not been changed because it
kept only the changed keys returned by the backend.
Leading to preferences being lost during the session when reordering the
home menu apps.
With this commit, we keep the previous keys that have not been changed.
Steps to reproduce:
- Go to the home menu
- In the Owl devtool check the settings object from the user service:
```JavaScript
{
"id": 1,
"user_id": {
"id": 2
},
"is_discuss_sidebar_category_channel_open": true,
"is_discuss_sidebar_category_chat_open": true,
"push_to_talk_key": false,
"use_push_to_talk": false,
"voice_active_duration": 0,
"volume_settings_ids": [
[
"ADD",
[]
]
],
"homemenu_config": "[\"mail.menu_root_discuss\",\"room.room_menu_root\",\"calendar.mail_menu_calendar\",\"appointment.main_menu_appointments\",\"project_todo.menu_todo_todos\",\"membership.menu_association\",\"knowledge.knowledge_menu_root\",\"contacts.menu_contacts\",\"frontdesk.frontdesk_menu_root\",\"point_of_sale.menu_point_root\",\"crm.crm_menu_root\",\"sale.sale_menu_root\",\"spreadsheet_dashboard.spreadsheet_dashboard_menu_root\",\"sale_subscription.menu_sale_subscription_root\",\"sale_renting.rental_menu_root\",\"pos_preparation_display.menu_point_kitchen_display_root\",\"account_accountant.menu_accounting\",\"documents.menu_root\",\"project.menu_main_pm\",\"hr_timesheet.timesheet_menu_root\",\"industry_fsm.fsm_menu_root\",\"planning.planning_menu_root\",\"helpdesk.menu_helpdesk_root\",\"website.menu_website_configuration\",\"website_slides.website_slides_menu_root\",\"social.menu_social_global\",\"marketing_automation.marketing_automation_menu\",\"mass_mailing.mass_mailing_menu_root\",\"mass_mailing_sms.mass_mailing_sms_menu_root\",\"event.event_main_menu\",\"survey.menu_surveys\",\"purchase.menu_purchase_root\",\"stock.menu_stock_root\",\"mrp.menu_mrp_root\",\"mrp_workorder.menu_mrp_workorder_root\",\"quality_control.menu_quality_root\",\"stock_barcode.stock_barcode_menu\",\"maintenance.menu_maintenance_title\",\"repair.menu_repair_order\",\"mrp_plm.menu_mrp_plm_root\",\"account_consolidation.menu_consolidation\",\"sign.menu_document\",\"hr.menu_hr_root\",\"hr_work_entry_contract_enterprise.menu_hr_payroll_root\",\"hr_appraisal.menu_hr_appraisal_root\",\"hr_attendance.menu_hr_attendance_root\",\"hr_recruitment.menu_hr_recruitment_root\",\"hr_referral.menu_hr_referral_root\",\"fleet.menu_root\",\"hr_holidays.menu_hr_holidays_root\",\"hr_expense.menu_hr_expense_root\",\"lunch.menu_lunch\",\"im_livechat.menu_livechat_root\",\"data_recycle.menu_data_cleaning_root\",\"approvals.approvals_menu_root\",\"whatsapp.whatsapp_menu_main\",\"iot.iot_menu_root\",\"base.menu_management\",\"base.menu_tests\",\"base.menu_administration\"]",
"voip_username": false,
"voip_secret": false,
"should_call_from_another_device": false,
"external_device_number": false,
"should_auto_reject_incoming_calls": false,
"how_to_call_on_mobile": "ask",
"is_discuss_sidebar_category_whatsapp_open": true,
"onsip_auth_username": false,
"livechat_username": false,
"livechat_lang_ids": [],
"is_discuss_sidebar_category_livechat_open": true
}
```
- Reorder an app in the home menu and check again the settings object:
```JavaScript
{
"id": 1,
"homemenu_config": "[\"mail.menu_root_discuss\",\"room.room_menu_root\",\"project_todo.menu_todo_todos\",\"calendar.mail_menu_calendar\",\"appointment.main_menu_appointments\",\"membership.menu_association\",\"knowledge.knowledge_menu_root\",\"contacts.menu_contacts\",\"frontdesk.frontdesk_menu_root\",\"point_of_sale.menu_point_root\",\"crm.crm_menu_root\",\"sale.sale_menu_root\",\"spreadsheet_dashboard.spreadsheet_dashboard_menu_root\",\"sale_subscription.menu_sale_subscription_root\",\"sale_renting.rental_menu_root\",\"pos_preparation_display.menu_point_kitchen_display_root\",\"account_accountant.menu_accounting\",\"documents.menu_root\",\"project.menu_main_pm\",\"hr_timesheet.timesheet_menu_root\",\"industry_fsm.fsm_menu_root\",\"planning.planning_menu_root\",\"helpdesk.menu_helpdesk_root\",\"website.menu_website_configuration\",\"website_slides.website_slides_menu_root\",\"social.menu_social_global\",\"marketing_automation.marketing_automation_menu\",\"mass_mailing.mass_mailing_menu_root\",\"mass_mailing_sms.mass_mailing_sms_menu_root\",\"event.event_main_menu\",\"survey.menu_surveys\",\"purchase.menu_purchase_root\",\"stock.menu_stock_root\",\"mrp.menu_mrp_root\",\"mrp_workorder.menu_mrp_workorder_root\",\"quality_control.menu_quality_root\",\"stock_barcode.stock_barcode_menu\",\"maintenance.menu_maintenance_title\",\"repair.menu_repair_order\",\"mrp_plm.menu_mrp_plm_root\",\"account_consolidation.menu_consolidation\",\"sign.menu_document\",\"hr.menu_hr_root\",\"hr_work_entry_contract_enterprise.menu_hr_payroll_root\",\"hr_appraisal.menu_hr_appraisal_root\",\"hr_attendance.menu_hr_attendance_root\",\"hr_recruitment.menu_hr_recruitment_root\",\"hr_referral.menu_hr_referral_root\",\"fleet.menu_root\",\"hr_holidays.menu_hr_holidays_root\",\"hr_expense.menu_hr_expense_root\",\"lunch.menu_lunch\",\"im_livechat.menu_livechat_root\",\"data_recycle.menu_data_cleaning_root\",\"approvals.approvals_menu_root\",\"whatsapp.whatsapp_menu_main\",\"iot.iot_menu_root\",\"base.menu_management\",\"base.menu_tests\",\"base.menu_administration\"]"
}
```
closesodoo/odoo#155902
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Prior to this commit, enabling auto receipt printing resulted in the QR
code not being printed on the receipt. This was due to the QR image
being fetched post printing. This commit addresses the issue by first
loading the QR code image, then sending it to the printer, ensuring its
presence on the printed receipt.
opw-3763169
closesodoo/odoo#155354
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Steps to reproduce:
- Open POS session
- Sell a consumable product in POS (no invoice)
- Close session
Bug:
an expense entry is added to the Account move
opw-3705156
closesodoo/odoo#153657
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Before this commit, there could be race conditions in which a channel
could be removed while the call was still loading, this commit prevents
this issue.
task-3660964
closesodoo/odoo#149034
Signed-off-by: Thanh Son Dodeur (tso) <tso@odoo.com>
Issue:
=====
Clicking on hex color or rbga in colorpicker will reselect the inital
selected text and not the value if hex or rgba.
Steps to reproduce the issue:
=============================
- Create a note , type anything and apply custom color
- When clicking on the hex color code , the cursor is alwyas set back to
the text.
Origin of the issue:
====================
The behavior was introduced by
https://github.com/odoo/odoo/commit/033b49e1a810c3decd8988698620616bd927f6c3
In the click listener, we always reset the comuted selection wich
reselects the original text. When clicking on empty space on the
dropdown menu, it happens too but it doesn't matter since the menu
closes anyway, but clicking on text input fields that you want to update
will be a problem since the menu doesn't close but the text get
reselected.
Solution:
=========
To overcome the problem of resetting when clicking on the dropdown, we
first check if the click is on the colorpicker or not, if Yes do nothing and
skip this.
task-3648629
closesodoo/odoo#155947
X-original-commit: 2c0a68df214f69b3d459507a6ce867620bf0513f
Signed-off-by: Antoine Guenet (age) <age@odoo.com>
In saas-16.2, the `peppol_endpoint` and `peppol_eas` fields were added
on the partner. These fields are used to fill the `<cbc:EndpointID` node.
Before that, we had to map every localization specific field to this
node. For instance, with the norvegian "Bronnoysund" field (see: [1]).
To ensure the node was filled, a constraint was checking the existence
of this field.
Now that we have the `peppol_endpoint` and `peppol_eas`, we no longer
have to require the bronnoysund to be filled.
[1] https://github.com/odoo/odoo/blob/saas-16.1/addons/account_edi_ubl_cii/models/account_edi_xml_ubl_bis3.py#L119
opw-3763725
closesodoo/odoo#155901
X-original-commit: 6827d6a5d0c213f11cae92655cfe015cae56b8fa
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Julien Van Roy (juvr) <juvr@odoo.com>