* Move the action to "technical feature" debug mode group instead of
group "advisor"
* Set the action in noupdate="1" to facilitate customization of right
task-2604155
closesodoo/odoo#75819
Related: odoo/upgrade#2794
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Before 660dc0ebaf it was possible to use Authorize to pay via your bank
account using the "Redirection to payment acquirer" option. Since the
refactor removed the redirect it was no longer possible. This commit
reintroduces that feature.
It does so by adding new form elements that accept bank account
information. Additionally it reintroduces the `billTo` and `customer`
parameters that Authorize requires when processing ACH payments.
task-2628318
closesodoo/odoo#75289
Signed-off-by: Antoine Vandevenne (anv) <AntoineVDV@users.noreply.github.com>
A new field on tax groups makes it now possible for this group to be displayed under a subtotal label. If not set, this defaults instead to "Untaxed Amount", keeping the traditional behavior. This is intended for withholding taxes, which can now be implemented with negative taxes and a tax group with this field set.
To do that, this commit entirely refactors the way amount_by_group worked, and replaces it with a more complete json field called tax_totals_json. It also streamlines the way taxe totals are displayed on invoices, PO and SO and makes it so that a common code is called instead of copy-pasting the same block 3 times as before.
[IMP] purchase: always display tax totals by groups on purchases orders
Before, tax totals on purchase.order's form were not shown by group, and were instead all aggregated in a single "Taxes" category. The same went for the pdf export. The portal view, though, did show the totals by group. We now display the tax groups in the same way all the time.
closesodoo/odoo#74138
Task: 2457374
Related: odoo/enterprise#19802
Related: odoo/upgrade#2670
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
The tax_exigible field of account.move.line made it impossible to mix 'on_payment' and 'on_invoice' taxes on the same invoice line, as the base line couldn't be be tax exigible and non-tax exigible at the same time. However, this use case is needed by some countries in order to implement withholding taxes.
To solve that, we totally remove the tax_exigible field from account.move.line and instead compute it on the fly with a domain (also passed to the query_get for SQL queries). An 'always_tax_exigible' stored computed field is also added on account.move, in order to still allow (like before) putting cash basis taxes on a miscellaneous operation without any payable/receivable line and still see it become exigible without needing any payment.
[IMP] account: improve cash basis traceability
A smart button is now available on invoices generating cash basis entries, so see them all at once. The move originally creating cash basis entries is also shown as a field on them.
Task: 2457374
Part-of: odoo/odoo#74138
Refactor the tax group widget with the new JavaScript Odoo Framework:
OWL. This widget has 2 different components, one representing a tax group
and one representing the list of tax groups.
Task ID: #2312900
Initial Task ID: #1986412
Part-of: odoo/odoo#74138
Based on their path, we retrieve snippets assets, assuming that it will
be in the form : /snippets/{snippet_id}/{version}.{scss|js}
Then we check the template definition uses that version, or if any views
or html fields contains a snippet with such version exist.
If not, the asset is deactivated.
For that, we are looking for the data-snippet attribute in snippets
already dropped. For the template definition, we look at the first class
definition if a data version attribute is also defined.
task-2212216
closesodoo/odoo#73005
Signed-off-by: Romain Derie <rdeodoo@users.noreply.github.com>
The WebsiteAnimate option was triggering a resize on the window in its
start method, which would lead to a scroll on the wrapwrap and closing
the megamenu dropdown if it was open. Besides that, animations were not
working when selected on a section in a dropdown menu.
Now, an open dropdown that has animated content is considered as the
scrolling element so that its animations are rendered correctly and it
is not closed because of a scroll elsewhere.
The "Launch animation at first time/always" option is hidden for
dropdowns as bootstrap will launch it anytime a dropdown is open.
Part of https://github.com/odoo/odoo/pull/71143
task-2502208
closesodoo/odoo#71143
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
This prevents dropping main snippets in the mega menus, but it is still
possible to move the elements inside it or drop inline snippets.
Part of https://github.com/odoo/odoo/pull/71143
task-2502208
Part-of: odoo/odoo#71143
A new class has been added for snippets that should not display their
parents options: o_no_parent_editor.
With that class the editors for the parents of this snippet won't be
created.
Part of https://github.com/odoo/odoo/pull/71143
task-2502208
Part-of: odoo/odoo#71143
*: web_editor
As the mega menu templates are now displayed as an option of the mega
menu snippet, opening the mega menu dropdown in edit mode will display
the options.
Part of https://github.com/odoo/odoo/pull/71143
task-2502208
Part-of: odoo/odoo#71143
*: web_editor
The masonry templates selection SnippetOption has been abstracted so
that mega menus content can also be replaced with template content.
Part of https://github.com/odoo/odoo/pull/71143
task-2502208
Part-of: odoo/odoo#71143
Since [1], a new option was added to the masonry snippet to be able to
switch its whole content to a different template. That option was
working great... until [2] was merged. Indeed since then, each option
change induces an update of the whole editor panel. In this case, this
happened:
- Add a masonry snippet.
- Click inside one of its column (the masonry options and the column
options appear).
- Switch masonry snippet template.
- An option was changed -> Update the whole editor panel... including
the column options... but that column is not there anymore since
removed by the template switching option.
Now, we ignore options whose target is not in the document anymore and
make sure to enable the right options post panel update. This commit
could be backported later on (even though the masonry option was not
available before, the bug is potentially there for community options).
[1]: https://github.com/odoo/odoo/commit/c90ab7b6646b603dcd0a49387b5eeba60ce17f59
[2]: https://github.com/odoo/odoo/commit/2cbb691a84ce186ddd34a2a4c76d95671ed6e834
Part of https://github.com/odoo/odoo/pull/71143
Part-of: odoo/odoo#71143
### Purpose
Allow the event manager to create and manage booths for an event.
They represent physical booths that can be rented (for free or not) at the
event by a sponsor or a partner to present their product for example. Those
booths are gathered under a booth category which is defined by the booth
size, the booth visibility, the rental period or even extra services that
can be offered (non-exhaustive list)
### Specifications
To ensure integration with other modules, it has been split into
six separate modules:
- event_booth:
It's the base module that introduce the new models event.booth,
event.booth.category and event.type.booth. The booth management can only
be done in backend through the dedicated booth views.
- event_booth_sale:
This module introduce a new model event.booth.registration that enable a
booth to be booked multiple time until a user finally pay the related sale
order. A booth sale can be made through the Sales app by using the custom
product configurator after selecting a booth product.
- website_event_booth:
This module adds the website capabilities to booths registration. A new
page is available on the related event and users can book one or more booths
by following the link.
- website_event_booth_sale:
This module adds the website_sale capabilities to booths registration
(e-commerce). When selecting the desired booths the users will add them into
their cart and they will be redirected to the e-commerce flow.
- website_event_booth_exhibitor:
This module adds the website_event_exhibitor capabilities by giving the
possibility to the event manager to create automatically a sponsor by booking
a booth belonging to a certain booth category.
- website_event_booth_sale_exhibitor:
This module is a bridge between website_event_booth_exhibitor module and
website_event_booth_sale module.
### Links
Task-2318655
Upgrade PR : odoo/upgrade#2528closesodoo/odoo#71104
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
This module is a bridge to the Exhibitor module and the E-commerce module.
The only difference from before is that the sponsor informations are stored
in the Booth Registration model and the sponsor will be created at the registration payment.
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
This module integrates the Exhibitor module which allows the event manager
to automatically create a sponsor after a booth registration.
To enable that feature an option has to be set on the booth category.
The event manager can also choose what kind of sponsor will be created at the registration.
The frontend flow changes a bit to allow the user to provide his sponsor informations.
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
This module integrates the e-commerce module which allows the
event manager to sell booths online.
The flow is the same as before but after the booths selection
they will be added to the user cart and he will be redirected
to the e-commerce flow.
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
This module enables the Booths registration on the frontend by adding
a dedicated page on the related event.
The user will have to first select a booth category and then select one
or more booths to book. He will then be asked to provide his contact informations.
The booths will directly be set to unavailable... First come, first served.
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
This module allows to sell booths to partners by setting a product and a price
to the booths categories. When selling booths on a sale order it will open the
product configurator and ask the event, booth category and booths.
It's only possible to select booths belonging to the same category for one sale order line.
A new model is introduced by this module :
- Booth Registration that allows multiple registrations to a booth.
The booth will be set unavailable when the sale order linked to the registration is paid.
All the others registrations will be cancelled
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
This new module adds a booths management capabilities to the event module.
The event manager will be able to manage booking to physical booths hosted
at his event by first creating several booths categories depending for example
on the booths size, the number of tables, extra services, ...
He will then create the actual booths to offer to the final users.
This module adds two main models :
- Event Booth Category which is used to differenciate the booths type.
- Event Booth which is the actual Booth that will be booked.
The booking is done directly on the booth form view by setting a partner and
his contact informations and by setting the booth state to unavailable.
If the event manager want to book a booth for later use he can set the state
to unavailable without setting a partner.
The booking of a booth will be displayed in the chatter of the related event
to ease the event manager overview
The user manager can use event template to adds booths by default when setting
the template to an event.
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
The is_finished computed field was added in order to avoid
displaying the booths on the registration page and warn the
user with a message.
LINKS
Task-2318655
Closes : odoo/odoo#71104
PURPOSE
Before this commit we had to pass parameters through the context to get
them to the _website_product_id_change() method.
After this commit we can pass the parameters through the kwargs parameter.
LINKS
Task-2318655
Closes : odoo/odoo#71104
If a picking is totally empty (no move line with quantity recorded) in a
batch at validation. This one will be ignored by the immediate transfer
mechanism as well as the backorder creation. It is simply remove from
the batch.
closesodoo/odoo#63291
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
This commit adds a quick access to all the batches and waves of a picking
type (only transfers picking type) ready to be processed from the
Inventory dashboard.
Task : 2411102
Part-of: odoo/odoo#63291
This commit introduce Wave Pickings. This new object is a group of stock
move lines related to different pickings. The goal is to group stock
movements having similar characteristics like same source location, same
product category, ...
Wave pickings are created from stock move lines. Those are removed from
their picking to a copy of it. All the new picking are grouped together
in a new batch picking. This batch is the wave.
To differentiate the batch pickings and the wave pickings. This commit
introduces a new menu and a new sequence.
Task : 2411102
Part-of: odoo/odoo#63291
This commit add a quick access to all the move lines of a picking
type (only transfers picking type) ready to be processed from the
Inventory dashboard
Task : 2411102
Part-of: odoo/odoo#63291
The `letterRendering` option from the html2canvas broke the receipt's characters of some localizations/languages such as the arabic one.
With this commit, we can simply override the `htmlToImgLetterRendering()` method from the `PosModel` when needed.
closesodoo/odoo#75870
X-original-commit: 8b2c9bd026c0b7296c7be819a992ccac24b9b2e3
Related: odoo/enterprise#20559
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
- Create a product with a kit BOM and weight
- kit components should have list price and weight as well
- Create SO with kit product
- Add shipping (fedex int. or bpost will do)
- Delivery product
A custom's form is generated but the value of the product it is not
correct as it take the valuation of the kit in the sale order
for every component of the kit, resulting in higher customs taxes for
the final customer
opw-2628309
closesodoo/odoo#75658
X-original-commit: e13f048a78b41d81602e868a3b0c7ded24ce992b
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
When requesting an inventory count, the manager can decide to, in the
same time, precounting the quant to their actual values.
Task : 2555118
Part-of: odoo/odoo#74715
This commit merge the wizards asking for a inventory name and the one
warning the user not all quant have been set.
Task : 2555118
Part-of: odoo/odoo#74715
This commit makes sure the same view is used between the "inventory
adjustments" menu and the " update quantity" button in the product form.
The two views should always keep the same fields and buttons.
Task : 2555118
Part-of: odoo/odoo#74715
As the inventory adjustments have been removed in favour of the editable
quants, this commit introduced the possibility to import pre counted
quants like non validated inventories back then.
task : 2555118
Part-of: odoo/odoo#74715
The goal is to remove confusion between Invoicing and Accounting.
The current setting "Show Full Accounting Features" is confusing
and leads users to believe they have a full accounting package
in community, which is not true.
closesodoo/odoo#73977
Task: 2578997
Signed-off-by: William André (wan) <wan@odoo.com>
PURPOSE
Improve import wizard as followup of recent improvements.
SPECIFICATIONS
Preview lines
- make the preview lines more visible
- set font-weight: 500 on o_import_header_name
- remove the text-muted class from the data preview line
- allow the user to preview the first 5 non-empty values
- when hovering on the data preview span, display a tooltip with the first
5 non-empty values of the file column (with 'Preview' as the tooltip title)
- In the 'when a value cannot be matched' dropdown:
add a new 'skip record' option for the following field types: boolean,
many2one, many2many, selection
add a new 'set empty' for the following field types: many2one, many2many,
selection hide this option if the field is required
When a value cannot be matched:
the 'skip record' option will make sure that lines with an unmatched value
will not be imported (i.e. skipped at import)
the 'set empty' option will set the field value to False when the value
cannot be matched
- Restore colored background on alert boxes by removing some css rules
Task-2504343
closesodoo/odoo#73713
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
Several changes distinguish product attributes better from variant
attributes. The variant creation mode is added on the template form for
attribute lines with more than one value. Specification attributes are
no longer listed as variant attributes in the product variant form and
tree views.
task-2466988
closesodoo/odoo#72559
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Co-authored-by: Tom De Caluw <tdc@odoo.com>
Co-authored-by: Jeremy Kersten <jke@odoo.com>
Purpose
=======
Time Off : New Dashboard, Accruals feature, Public holidays, New time off type configuration view.
- Review of Dashboard
- Accrual feature : Currently, when you create an allocation, it's possible to create an
Accrual, but there is no appraisal Plan. An Appraisal plan is use to define steps of accruals
for each employee.
In Belgium, we use accrual Allocation for European Leaves, or compensatory hours, it's a
simple use case. But in USA, it's possible to change the calculation mode each year.
Also, in USA, it's possible to deal your accrual plan when you arrive on the company. It's a
HR Officer task to create the right Accrual allocation for each new employee.
- Public Holidays :
Improvement of global time off feature located on Working hours calendar. Now, Time off
application have to manage Public Holidays.
- Review of Time Off type configuration
COM PR: https://github.com/odoo/odoo/pull/72511
ENT PR: https://github.com/odoo/enterprise/pull/19157
UPG PR: https://github.com/odoo/upgrade/pull/2791
TaskID:2475413
closesodoo/odoo#72511
Related: odoo/enterprise#19157
Related: odoo/upgrade#2791
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Co-authored-by: William Braeckman <wbr@odoo.com>
Co-authored-by: Xavier BOL (xbo) <xbo@odoo.com>
Co-authored-by: Laurent Stukkens (LTU) <ltu@odoo.com>
Co-authored-by: Yannick Tivisse <yti@odoo.com>
Before this commit:
===============
when we have installed module l10n_in_pos at the time of printing receipt it give error
After this commit:
=============
print POS receipt successfully.
Issue and Fix:
===========
it was showing an error because of changes made in commit: 8610a4bf38
fixed the issue by inherit the OrderLinesReceipt template and adding the correct xpath in pos_receipt template
closesodoo/odoo#75628
Task-id: 2623512
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Description of the issue/feature this PR addresses:
Currently, we cannot display prices per unit (for example $/kg, etc.)
on products shown in the shop. This is important for any eCommerce
business that sells something other than units, or just for informational
purposes.
Desired behavior after PR is merged:
Allows the user to add unit measurements for products. This behaviour is
disabled by default, and can be enabled through the settings page by
activating "eCommerce Base Unit Price" option.
Enabling it displays a price per unit field in /shop's product page,
comparison tool and cart. The price per unit of measurement is
automatically computed and can be displayed both on the product,
the cart and the comparison pages.
Enabling it also modifies the product's configuration page to include
what unit of measure to display in the price per unit field, as well
as the number of units used to calculate the price per unit.
task-2558128
Part-of: odoo/odoo#72242
Co-authored-by: Kamen Zhekov <kzh@odoo.com>
Co-authored-by: Jeremy Kersten <jke@odoo.com>
virtual_available return the quantity in product base UoM while
move product_uom_qty is the quantity with the UoM of the move
For the forecast compare the quantity with the same UoM
closesodoo/odoo#71732
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>