Replace every mentions of 9925 to 0208 for Belgian companies (public
administration also have this 10 digits number). The EAS 0208
corresponds to the company_registry.
Introduce a mechanism to validate the `peppol_endpoint` and refactor the
computes for the `peppol_endpoint` and `peppol_eas` fields.
See: https://openpeppol.atlassian.net/wiki/spaces/Belgium/overview
task-3297311
closesodoo/odoo#138343
X-original-commit: 744bfa9e5f087a2aa9d714351a559c3320ecfda4
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Julien Van Roy (juvr) <juvr@odoo.com>
This commit introduce the information button on the product card in the
self order mode. This button open a popup with the newly created field
"description_self_order" which is an HTML field allowing the user to
have a very customizable description for the product.
It also removes the description_ecommerce field from the product view
form as it is a field used in the website and not adapted for
the backend (css/js not compatible).
closesodoo/odoo#138216
Task-id: 3512835
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
'alias_user_id' field allows to set a user when creating records through the
mail gateway. This is however quite wrong and eases spoofing. The alias owner
is not the creator of any record, nor responsible.
Current possible ways of being owner / responsible of records created through
the mailgateway
* when you send an email to an alias: if you are recognized you are already
set as creating user and logged message author;
* it is possible to use alias_defaults notably to set fields like 'user_id'
if you want to be notified / responsible of records created through this
specific alias;
Those usages are therefore sufficient, no need to have another way to spoof
users. Moreover it is hidden in technical view of aliases, no model allows
to configure it by default. Moreover since odoo/odoo@3edf181 no default
value is given to alias_user_id as it adds more (ACLs / creator) issues than
really helping setting up mail gateway flows.
Task-3453482
Prepares Task-36879 (Mail: Multi-Domain Aliases)
closesodoo/odoo#138213
Related: odoo/upgrade#5259
Related: odoo/enterprise#48692
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Fix the duplicate message in the discuss and search
when the message type is email. This was caused by a wrong
rebase of https://github.com/odoo/odoo/pull/118794 that
did not take into account the branching on message body
for message of type email by https://github.com/odoo/odoo/pull/131202
The search highlight feature was not working on these email
message, so this commit also fixes that.
closesodoo/odoo#138205
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
In this commit, we remove three usages of the getBundle function from
@web/core/assets.js. The final goal is to remove it totally to simplify
the understanding of assets's API. To replace the use of getBundle in
mobile preview dialog, an xml template has been created on the server
side and then called by http requests. During the request, we retrieve
the list of assets (server side getbundle) to inject these into
the xml template.
taskId : 3266441
closesodoo/odoo#138055
Signed-off-by: Mathieu Duckerts-Antoine (dam) <dam@odoo.com>
Since the PR [1], the function autocompleteWithPages does not receive
a widget anymore and does not trigger an event on it when an url is
selected. Instead it is replaced by an optional function property
"urlChosen" which is called if given.
The error is that the optional check is wrong. The check is done on
the "options" parameter, not on its optional property "urlChosen".
This commit simply fixes this check.
[1]: https://github.com/odoo/odoo/pull/136271closesodoo/odoo#138047
Signed-off-by: Mathieu Duckerts-Antoine (dam) <dam@odoo.com>
This commit renames calendar's attribute quick_add to quick_create
to be more consistent with other views.
closesodoo/odoo#138042
Related: odoo/enterprise#48677
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Since the PR [1], quick_add can be both a boolean and an id:
0 = without quick create
1 = with quick create and simple dialog
other number = with quick create and custom form view dialog
This is not great to have both behavior in a same attribute so this
commit split them back in two attributes as it was before [1].
It's easier to understand when we want a quick create and which view
to use in the dialog.
[1]: https://github.com/odoo/odoo/pull/122923
Part-of: odoo/odoo#138042
Before this commit, when redirecting to the employee list view from a
specific department, all the employees of all departments were shown.
With this commit, that list view has a default searchpanel filter of the
currently active department, making the flow more intuitive.
task-3539205
closesodoo/odoo#137862
X-original-commit: 81b72301c68fa3bffc91691540a3e4b00bc7de0a
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
**Steps to reproduce**
- Open general settings of pos.
- Select/Create a Point of Sale that is kiosk to see the `Splash screens` field.
- The field is pre-filled with 3 images.
- ISSUE: Try removing the images and save, they won't be removed.
**FIX**
- This is because of the `write` operation made from the `res.config.settings`
model to the `pos.config`.
- When removing an image, the field will be given `link` commands, linking the
remaining images. This is wrong because it won't unlink the images that are
deleted.
- To ensure the deletion, we reinterpret the command to the splash screen images
field if the command comes from the res.config.settings.
- We introduce a context called 'from_settings_view' such that it's set to
true when the write is from the `res.config.settings` view.
- And specific to the pos_self_order, we compute the items that should be
unlinked and we append the unlink commands to the original set of commands
for the splash screen field.
closesodoo/odoo#137819
Signed-off-by: Robin Heinz (rhe) <rhe@odoo.com>
### 1. Move "Add Properties" button to cog menu by default
When the property field is added into a form view, the "add a property"
button is shown by default.
However, most of the time the users won't add properties when opening a
form view, making this button take up space for nothing.
To alleviate this issue, [this commit](https://github.com/odoo/odoo/commit/1f80810e39f811122a65e11cd8cac99aa39a7960) added an option that allows to hide
this button, and added actions to allow adding properties from the cog
menu instead.
Now that properties are being added into several views, one would like
this "add properties" button to be hidden by default, and show an entry
in the cogmenu allowing add properties by default, without needing to
create an action for every view using a property field.
Therefore, a new static action "Add Properties" has been added in form
controller that is available if a properties field has been encountered
during the parsing of the form view's arch.
The "hideAddButton" has been changed into "showAddButton" and now allows
to show the "Add a Property" by default.
### 2. Add properties (and related properties definitions) on the following models:
- analytic.account (analytic.plan)
- event.registration (event.event)
- hr.employee (hr.res_company)
- hr_recruitment.hr_applicant (hr_recruitment.hr_job)
- product.product (product.category)
- sale.sale_order (sale.crm_team)
- stock.picking (stock.picking_type)
Task-3458627
closesodoo/odoo#137589
Related: odoo/enterprise#48404
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Purpose:
--------
This commit adds properties (and related properties definitions) on the
event model. Event stores the definition and it is used on its child
registrations.
Task-3458627
Part-of: odoo/odoo#137589
Purpose:
--------
When the property field is added into a form view, the "add a property"
button is shown by default.
However, most of the time the users won't add properties when opening a
form view, making this button take up space for nothing.
To alleviate this issue, commit [1] added an option that allows to hide
this button, and added actions to allow adding properties from the cog
menu instead.
Now that properties are being added into several views, one would like
this "add properties" button to be hidden by default, and show an entry
in the cogmenu allowing add properties by default, without needing to
create an action for every view using a property field.
Therefore, a new static action "Add Properties" has been added in the form
controller that is available if a properties field has been encountered
during the parsing of the form view's arch.
The "hideAddButton" has been changed into "showAddButton" and now allows
to show the "Add a Property" by default.
Task-3458627
[1]: https://github.com/odoo/odoo/commit/1f80810e39f811122a65e11cd8cac99aa39a7960
Part-of: odoo/odoo#137589
Currently it is not easily discoverable that users can install the
PEPPOL module. They have to go to the Apps list and search for PEPPOL
there.
In order to make the installation easy and discoverable, we added a
checkbox to the Invoicing/Accounting settings to install the module and
afterwards show the checkbox to enable PEPPOL per company.
The install checkbox is only shown when editing the settings of a
company that is eligible for PEPPOL to avoid confusion. In order to do
that, we created a `PEPPOL_LIST` variable in `account` containing all
countries currently allowed to use PEPPOL. The code in `account_peppol`
formerly using the `EAS_MAPPING` variable of the `account_edi_ubl_cii`
module is now also using this new list.
task-3519564
closesodoo/odoo#137287
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Prior to this commit the required employee field was hidden
on hr.resume.line form view. Which lead to validation error.
Moreover, on the same form view, on create the survey_id field was not
certification by default. The survey_id field has the
domain [('certification', '=', True)] on this view and this caused
inconsistency. The survey that we created from this form, was
not listed as one of the options.
After this commit the employee_id field is shown on hr.resume.line
form view and the survey_id, created from this view, will be
certification by default.
task-3522917
closesodoo/odoo#136751
Signed-off-by: Bertrand Dossogne (bedo) <bedo@odoo.com>
In Spain it's mandatory that POS systems generate a so called
"Factura simplificada". This is similar to a regular ticket
but has to comply with some special requirements.
Without this, POS isn't usable in Spain.
In this PR we introduce a spanish localisation for the pos
that handles the specific regulatory needs.
closesodoo/odoo#136008
Task: 3131769
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Currently, spreadsheet dashboards always display numbers with the en_US
format, no matter the user's lang.
That's because the locale is hardcoded in the spreadsheet source file, in
the source code (or it falls back to the default en_US locale if it's missing).
With this commit, we dynamically change the spreadsheet locale with the user's
locale when he loads a dashboard.
We can change the locale with every user because the dashboard is readonly.
It cannot create a giant mess with dates in various locales.
Limitation
----------
Since hardcoded date formats are not changed when the locale changes, dates
will keep the en_US format. However, most (if not all) dates in dashboards
are coming from ODOO.PIVOT and ODOO.LIST functions, which compute the formats
dynamically based on the current locale.
closesodoo/odoo#135119
Task: 3484002
Related: odoo/enterprise#47284
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
In the specific case in which an invoice in company currency is paid by a payment in foreign currency,
in that case, perform the reconciliation in foreign currency but convert the residual amount of the invoice
to the foreign currency using the payment rate instead of the invoice one.
closesodoo/odoo#138289
X-original-commit: 2123278215befe22d3be4568812bfe7d028e2757
Related: odoo/enterprise#48744
Signed-off-by: John Laterre (jol) <jol@odoo.com>
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Current behaviour:
When creating a nameless contact,
while selecting delivery address type
for an existing company, there is a traceback
Steps to reproduce:
1. Install contacts,sale_management,crm
2. Settings > Sales > Quotations & Orders
3. Check "Customer Addresses"
4. Go to Contacts
5. Create a new contact
6. Check "individual"
7. Select a company
8. Select "Delivery" in Address type
9. Save => traceback
Cause of the issue:
Introduced by https://github.com/odoo/odoo/commit/9ef715fb994564af9e933ba31933a09eca97c24f
partner.name can be False
opw-3495748
closesodoo/odoo#138312
X-original-commit: baa731ac37818bcffcd7814b92456b37b8a97c61
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Signed-off-by: Antoine Demany (ande) <ande@odoo.com>
Co-authored-by: Thibault Delavallée <tde@odoo.com>
There's no reason to forbid the duplication of leaves that are refused
or cancelled, as the overlap check are excluding them.
This way, we allow an exit flow for users with "Time Off / All approver"
group, as once the holiday is refused, they can't back it to draft (only
administrators can do it). A usual need for these intermediates users
with people in their charge is to modify the leaves to extend or shorten
the initial asked period (for example, more/less paid time-off due to
varying workloads, or extended period by long disease).
Thus, they can duplicate the leave and use it as base for the new
period, only changing the end date without having to input all data.
TT44801
closesodoo/odoo#138303
X-original-commit: abfb21096b76a04fe167be28243187f64522c422
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
Issue:
A traceback error was observed when attempting to create a task or ticket using
the website form.
Cause:
This issue arise as a result of converting RPC to ORM readSearch. The problem
lay in the domain being passed to the ORM. Not all fields had a defined domain,
causing 'undefined' to be passed to the ORM, leading to the traceback error.
Fix:
To address this, we have introduced an 'or' condition within the domain. Now, if
a field has a domain, it will be passed accordingly; otherwise, an empty array
is set as the domain. This modification resolves the traceback issue.
Task-3526887
closesodoo/odoo#137359
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
The Send/Send & Print button is accessible in list view, the wizard
should raise an error if it is opened with invoices in "draft" state.
closesodoo/odoo#138311
X-original-commit: cbc0972bb3eaddf88131b0153f364d1a65d0a968
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Claire Bretton (clbr) <clbr@odoo.com>
Steps to reproduce:
-Install sale_purchase_stock and sale_product_matrix
-Have a Service product that is subcontracted.
-Set a variant with a Specification Attribute that has a custom value.
-Create a sales order with the Service product,
add anything for the specification in the variant.
-Confirm the order, this generates a PO.
Bug:
The PO line only says the name of the product,
and doesn't include the specification in the variant.
Fix:
propagate the description same as:
"_prepare_procurement_values" and "_prepare_purchase_order_line_from_procurement"
opw-3438125
closesodoo/odoo#138310
X-original-commit: 5b3bcee8f7308621608d91e33bac808586e8c17f
Signed-off-by: Walid Hanniche (waha) <waha@odoo.com>
Signed-off-by: Quentin Wolfs (quwo) <quwo@odoo.com>
Versions:
---------
- saas-16.4+
Steps to reproduce:
-------------------
1. create a customer invoice;
2. set customer to be a person (not a company);
3. set a due date instead of payment terms;
4. click preview.
Issue:
------
The invoice will say "Payment within 30 calendar days" regardless of due
date selected.
Cause:
------
This is a placeholder string for a `t-field` that should be hidden when
viewing actual records.
Solution:
---------
Add `t-if="o.invoice_payment_term_id.note"` to the element so it won't
get rendered if there are no payment terms to be displayed.
opw-3523921
closesodoo/odoo#138275
X-original-commit: 1e729a0f1de87335a2c4517bb815bc5ab7d4bd01
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Levi Siuzdak <sile@odoo.com>
When having a company with sub company.ies, if
we select only one of the branch, the number
of entries to reconcile is not reflected only
the entries from the selected branch but the one
from all the branches, therefore when opening the
reconciliation widget, the number of line to reconcile
is not the same as indicated.
With this commit, we only count the entries that belong
to the selected company.
Steps:
- Having a company with one branch (X and X.1)
- Having 1 statement line for X and 2 for X.1
- Select the two branches
- See that there are 3 entries to reconcile
indicated on the bank journal
- Select X or X.1 only
-> There are still 3 entries to reconcile
indicated instead of 1 for X and 2 for X.1
closesodoo/odoo#138257
X-original-commit: 023c97c21194e83eda2433e2fe3c32de1d3b320b
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Guillaume Vanleynseele (guva) <guva@odoo.com>
Before this commit
=================
While updating the Bill of Materials (BOM), the work center and operation name
remained unchanged in the manufacturing order.
When Archiving/Unarchiving the operation doesn't show the "Update BoM" button
in the appropriate MO.
Steps to Produce
================
- Create a BOM1 with operations
- Create a MO with BOM1 and confirm MO
- Goto BOM and change the workcenter and operation name
- In MO Click on the 'update BoM' button
- Now you see the operation name and workcenter are not updated in MO
After this commit
=================
With this commit the work center and operation name get updated with the update
BOM click. For Archiving/Unarchiving the operation results to the display of
the "Update BoM" button in the appropriate MO. Directly editing an
operation will also cause the "Update BoM" button to appear
task-3461985
closesodoo/odoo#138256
X-original-commit: c343ebf0a28f6404f7ad6fc892c4a42edd2bbbe0
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
The summary is a short char field. It should not contain carriage
returns.
The description is the longer text field.
Remove unnecessary spaces in both.
Automatically dedent the description to avoid this issue poping up
again in future modules.
closesodoo/odoo#138214
Related: odoo/enterprise#48695
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
The jSignature lib is only used by the NameAndSignature component,
which is not accessible on a many screens. This commit thus
removes the lib and its extension from the bundles, and makes the
NameAndSignature component load it on demand.
Part of task~3439226
closesodoo/odoo#138054
Related: odoo/enterprise#48633
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
This commit converts the SignatureForm widget into a Component.
This allows to remove the last usage of the legacy NameAndSignature
widget, which we thus remove.
Part of task~3439226
Part-of: odoo/odoo#138054
This function must be used to safely redirect to another url. It
ensures that we stay on the same origin, and thus that the url is
safe.
Part-of: odoo/odoo#138054
Maintain the playful tone whilst avoiding nonsensical phrasing.
I will not take comment at this time, thank you.
Task-🤔🙃😬💅😐🤓closesodoo/odoo#138302
Signed-off-by: Bouvy Damien (dbo) <dbo@odoo.com>
Steps:
- Install project and live chart applications
- In project reporting then
- Customer ratings
- Click on kanban card, task form view open
Issue:
- When we click on a Kanban card, it opens the 'project.task' form view instead
of the 'rating.rating' form view
Cause:
- This problem occurs when you install the 'Live Chat' application because,
in the 'Live Chat' application, they inherit the Kanban view from the 'rating'
module and insert some actions into the inherited view. This action affects
other modules where customer ratings are required, such as the project module
and others.
Fix:
-By creating a separate view for the Live Chat customer ratings,
the problem can be solved
task-3522178
closesodoo/odoo#138276
X-original-commit: f50e6dbbd46bf0d16c8f522d4f1d9b10445d1065
Signed-off-by: Matthieu Stockbauer (tsm) <tsm@odoo.com>
Before this commit, when using a loyalty reward with points, it is
possible to give partial rewards. This commit prevents partial rewards.
Example:
- Rule: Grant 1 point per product bought;
- Reward: 1.5$ per point in exchange of 2 points (3$)
Before this commit, if you buy 3 products, you get 4.5$ by using 3
points. After, you only use 2 points and get 3$ (no partial reward).
task-3300880
closesodoo/odoo#138277
X-original-commit: b3a2fb51bc48b83e821648b40f0dc7d86369ca7c
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Signed-off-by: Vallaeys Valentin (vava) <vava@odoo.com>
This commit allows to reorder global filters via drag and drop. The
fact that global filters have a concept of order means that the
structure of the global filters in the core plugin need to change from
an Object<string, GlobalFilter> to an Array<GlobalFilter>.
closesodoo/odoo#135869
Task: 3502684
Related: odoo/enterprise#47583
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
The commands `ADD_GLOBAL_FILTER` and `EDIT_GLOBAL_FILTER` had the filter id
once in cmd.id, and once in cmd.filter.id. This made it possible to send
a command with 2 different ids, which can have arbitrary behaviour depending
on the implementation details of the command.
Changed it so we only use cmd.filter.id, and removed the cmd.id field. Also
simplified the commands helpers for the tests.
Task: 3502684
Part-of: odoo/odoo#135869
Task Description:
This PR aims to add the possibility to edit the evaluation domain of
an Odoo chart, the same way it can currently be done for other
datasources like `List` or `Pivot`. This revision ensures that the chart
datasources are properly reloaded their domain update.
closesodoo/odoo#135242
Task: 3384872
Related: odoo/enterprise#47336
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
PR [1] introduced the evaluation of ocntextual domain. However, this was
only evaluated once at the creation of the datasource. This revision
changes the flow to evaluate the context upon the datasource loading.
[1] https://github.com/odoo/odoo/pull/131874
Part-of: odoo/odoo#135242
* Chart of Accounts: we cleaned it, mapped it and kept the most important accounts
* Contacts: added the type of identification field and validation of the identification format
* Taxes: we kept what we had and mapped them with the correct accounts
* Added Legal document types in Uruguay.
* Valid contact identification types in Uruguay.
* Added fiscal position to auto compute taxes
* Frequently used default contacts already configured: DGI, Consumidor Final Anónimo.
* Translations: added translations for the module
closesodoo/odoo#133891
Signed-off-by: Josse Colpaert <jco@odoo.com>
The legacy RPC was removed in 7422eb6 and replaced by `rpc_service`. The
changes to adapt the list view button on the `/shop` pages did not work.
This commit will use `rpc_service` instead of `this.rpc` which is not instantiated.
closesodoo/odoo#133064
Related: odoo/enterprise#46252
Related: odoo/upgrade#5190
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
It introduces:
New navigation flow with buttons inside the cart_summary template
Reviewed tables across the pages removing stripes and improving spacing
Redesigned stepper wizard with a reusable template in /website
task-3083707
Part-of: odoo/odoo#133064
Co-authored-by: Valentin Chevalier <vcr@odoo.com>
Steps:
- Create a new event.
- Choose any template (training, conference,...).
- Create new registration ticket for this event.
- Create a new quotation.
- Add 2 lines for "Event registration" product, and select each time the event and ticket created above.
- Click on "Confirm".
Issue:
4 registrations lines are created and 3 attendees.
Reason:
In ``RegistrationEditor.default_get()``, we match each sale order line with existing registrations in the sale order having
the same ``event_ticket_id`` without assuming we can have multiple sale order lines with the same ``event_ticket_id``. That
leads to [number_of_sol] * [number_of_ticket] registrations. To solve it, we just add an additional check for the
``sale_order_line_id`` to have a perfect match.
opw-3495415
closesodoo/odoo#138242
X-original-commit: 926ab300650eda02aefa728fa32b44831c49dfb3
Signed-off-by: Jérémy Hennecart (jeh) <jeh@odoo.com>
Current behavior:
When you link a printer to the sales detail report. The report will
contains no order. This happens because we are trying to assign docids
to the session_id.
Steps to reproduce:
- Install pos_iot
- Link a printer from the demo iot to the sales_detail report (go in
settings > reporting > reports)
- Do some orders on the PoS, and close it
- Go in the backend, and print the sales detail report
- You will see that the report is empty (You can put a breakpoint in
`get_sale_details` method to see that it will be empty)
opw-3247196
closesodoo/odoo#138241
X-original-commit: 489985661d689dde1a1385db2fc4a0a51fb5a7db
Signed-off-by: Vlad Stroia (vlst) <vlst@odoo.com>
Signed-off-by: Robin Engels (roen) <roen@odoo.com>
This PR contains a few adaptations and fixes after the major design
refactoring.
closesodoo/odoo#137704
Signed-off-by: David Monnom (moda) <moda@odoo.com>