Commit Graph
151539 Commits
Author SHA1 Message Date
Fabio Barbero 0321446caf [FIX] knowledge: minor fixes
Purpose
=======
Prevent users from dragging articles from Workspace/Private to Shared
section, correctly send title when creating article from command
palette, make command palette text translatable, remove mysterious
'once' file.

Task-2852908

Part-of: odoo/odoo#91430
2022-05-31 19:17:36 +02:00
Fabio Barbero af5d672084 [IMP] knowledge: minor design changes
Purpose
=======
Improve look of "Add Icon/Cover" buttons, change wording of sentences,
add text for empty sections (which is then removed when an article is
dragged onto it), add hover effect to icon, improve result list for move
to modal and article selection.

Task-2852908

Part-of: odoo/odoo#91430
2022-05-31 19:17:36 +02:00
Fabio Barbero 9f8d44b616 [IMP] knowledge: improve frontend view
Purpose
=======
Allow users to correctly unfold parent articles, only show <a> tag in
frontend view when article is in read only mode.

Task-2852908

Part-of: odoo/odoo#91430
2022-05-31 19:17:35 +02:00
Fabio Barbero 19e39022fa [IMP] knowledge: add default empty title
Purpose
=======
When creating a new article from the view, add a new empty h1 tag where
the user can start typing on. When clicking on the "New Article" title
for the first time, it will be set to the first h1 in the body.

Task-2852908

Part-of: odoo/odoo#91430
2022-05-31 19:17:35 +02:00
Fabio Barbero 57f7fbaa0e [IMP] knowledge: show article icon for member based on
Purpose
=======
Currently, the icon of the "based on" article in the share panel is only
shown for the internal permission and not for the member. Ensure
consistency by adding it to the member section as well.

Task-2852908

Part-of: odoo/odoo#91430
2022-05-31 19:17:35 +02:00
Fabio Barbero c188181f24 [IMP] knowledge: clean up field names
Purpose
=======
Make field names easier to search by removing "Article" in front of
them.

Task-2852908

Part-of: odoo/odoo#91430
2022-05-31 19:17:34 +02:00
Victor Feyens 5e93a231c2 [FIX] payment_stripe: running tests with python 3.7
mock.call_args only provides the args/kwargs feature in 3.8+

closes odoo/odoo#90716

Related: odoo/enterprise#27253
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-31 19:17:20 +02:00
Victor Feyens 987b0d49f9 [IMP] payment: clean test utils
All utilitary test methods will be private, to clearly separate
test methods and utils.

Task - 2848326

Part-of: odoo/odoo#90716
2022-05-31 19:17:20 +02:00
Victor Feyens 5ac5b2ea96 [MOV] payment: rename test files
`test_payments` -> `test_account_payment`
`test_transactions` -> `test_payment_transaction`

Task - 2848326

Part-of: odoo/odoo#90716
2022-05-31 19:17:19 +02:00
Victor Feyens 677589d01f [IMP] payment: merge common into unique test class using it
The multi-company common of payment was only used in a single specific
test class of the same module.  Since we don't aim to test multi-company
flows in specific payment_ modules, we might as well remove the common
and move the setup content in the only class using this common.

Task - 2848326

Part-of: odoo/odoo#90716
2022-05-31 19:17:19 +02:00
Victor Feyens 26976477c4 [IMP] payment: simplify test commons
During the payment pocalypse, new tests common were introduced. Those
commons were split into different classes to be as modular as possible
but we noticed during the following months (/year) that they weren't so
easy to understand and use.

Therefore, this commit aims to simplify those commons by removing the
core PaymentTestUtils common, integrating it in the base PaymentCommon,
and making the HttpCommon depend on the core PaymentCommon, instead of
using only the utils.

This doesn't require much changes in the tests since they all used
either the PaymentCommon or both PaymentCommon and PaymentHttpCommon.

Task - 2848326

Part-of: odoo/odoo#90716
2022-05-31 19:17:19 +02:00
Rahul Prajapati ac00d19c8d [IMP] mail: remove alias mixin from channel
Before this commit:

mail.alias.mixin is being used in mail.channel

After this commit:

removed mail.alias.mixin with all of its uses in mail.channel

Task-2823691

closes odoo/odoo#89652

Related: odoo/upgrade#3469
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-31 19:17:06 +02:00
Benoit Socias 76eb6e6c74 [IMP] web, web_editor: exclude assets from documents
Currently only the `*.assets_*` CSS and JS files are considered as
assets. Because of this some assets from `web_studio`, `pos` and
`document_spreadsheet` become available for selection as documents.

This commit replaces the existing blacklist by a check on whether the
URL matches `/web/assets/*`.

Steps to reproduce:
- Install website, web_studio and pos.
- Drop a Text - Image block in the home page.
- Replace the Image.
- Go to the Documents tab.
=> Some JS/CSS/map assets were available for selection.

task-2799866

closes odoo/odoo#89151

Signed-off-by: Romain Derie (rde) <rde@odoo.com>
2022-05-31 19:16:59 +02:00
Nicolas Pierre 87d33596d1 [IMP] mrp, purchase_stock: visibility days and days to prepare MO
- Add the concept of 'Days to Prepare MO' in  mrp, similar to 'Days to
Purchase' but defined at the product level. Both concepts are merged into
Days to Order at the orderpoint level, taking the value of Days to Purchase
for orderpoints with a buy route and Days to Prepare MO for orderpoint with a
manufacturing route.
 - Add the concept of 'Visibility Days' on orderpoints. The idea is to
avoid to create through reordering rules multiple small orders for  the
same product on a small time frame but rather to order directly a bigger
quantity. When Visibility Days are defined, the quantity of the orders
created by a RR is not the quantity forecasted at Today + Lead times
(quantity that triggered the order according to the RR), but the
quantity forecasted at Today + Lead Times + Visibility days.
The Visibility Days are different for purchase and manufacturing.
Changing the route of the orderpoint will change its value. They
can be defined at the company level and further fine-tuned on the
orderpoint. In case of change of the parameters at the company level,
only orderpoints without a specific value of Visibility Days  will
be changed.
 - Alignement between Manufacturing and Purchase Security Lead Time
(previously the Manufacturing Security Lead time didn't impact the
procurement date, instead the manufacturing time was made longer).

closes odoo/odoo#86682

Task-id: 2738838
Pr: https://github.com/odoo/odoo/pull/86682
Related: odoo/upgrade#3415
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
2022-05-31 19:16:55 +02:00
Florian Charlier ab9bc656da [IMP] mail: improve notification email previews
Prepare an informative and nice-looking preview from the main content of the
email body, avoiding buttons/images alt etc.
Links, images, tables are removed.

Whitespace is added after the preview to avoid including the full message in
the preview (with markup).

Tags and attributes are also added to increase compliance with HTML5 standard,
including accessibility.

One additional SQL request is required to fetch the preview sub-template.

Task-2413355

closes odoo/odoo#86266

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 19:16:49 +02:00
Achraf (abz) b655720558 [FIX] hr_expense: Markup no content helper
Steps:
 - Go to Expenses
 - Reporting/Expenses Analysis
 - List View
 - Remove every records
 - The no content help text is broken

To fix this we have to Markup the second part of the noContentHelp

opw-2862056

closes odoo/odoo#92532

X-original-commit: e2d20c97f2a9da0d2f357f1caa08c0e9632c1bcd
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: Achraf <abz@odoo.com>
2022-05-31 18:20:06 +02:00
Guillaume (gdi) 490c032871 [FIX] website: place snippets correctly after install
Before this commit, after the user installed the website_payment module,
the donation blocks were not well placed in the editor (after the
uninstalled modules). This commit solves the problem and permits to
place the installed snippets correctly in the editor.
Steps to reproduce the fixed issue:
 - Install website
 - Enter edit mode
 - Click on "Install" for the "Donation Button" snippet

=>After install, the snippet still appears after uninstalled modules.

task-2767716

closes odoo/odoo#92413

Signed-off-by: Romain Derie (rde) <rde@odoo.com>
2022-05-31 18:20:02 +02:00
Odoo's Mergebot b65f05a6b3 [MERGE] mass_mailing: reorganize addon according to guidelines
PURPOSE

Reorganize addon according to guidelines, helping finding and updating code.

SPECIFICATIONS

Perform various code linting and cleanups, line breaks, linter issues...
No code or feature change should occur with this commit.

Correctly split data into separate files. A lot of content was put a bit
randomly in data files, leading to a hard discovery of code and features.

Move subscription model into its own file, to ease future improvements. Do
the same for its views.

Also move menu entries into a specific file for menus, allowing to easily
understand menu organization in mass mailing.

Reorganize templates in order to see a bit what's going on here. Notably split
subscription (opt-out, blacklist) from management (view, reporting) templates.

Reorganize controller code by main section in order to separate a bit various
code purpose.

Task-2864264 (Mass Mailing Module Reorganization)

closes odoo/odoo#92509

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 16:02:26 +02:00
Thibault Delavallée f446e54cbd [MOV] mass_mailing: reorganize controllers and templates
PURPOSE

Reorganize addon according to guidelines, helping finding and updating

SPECIFICATIONS

Reorganize templates in order to see a bit what's going on here. Notably split
subscription (opt-out, blacklist) from management (view, reporting) templates.

Reorganize controller code by main section in order to separate a bit various
code purpose.

This commit contains only file split / renaming and code move.

Task-2864264 (Mass Mailing Module Reorganization)

Part-of: odoo/odoo#92509
2022-05-31 16:02:25 +02:00
Thibault Delavallée 4f39a80e76 [MOV] mass_mailing(_sms): split models and views
PURPOSE

Reorganize addon according to guidelines, helping finding and updating code.

SPECIFICATIONS

Move subscription model into its own file, to ease future improvements. Do
the same for its views.

Also move menu entries into a specific file for menus, allowing to easily
understand menu organization in mass mailing.

A duplicated menu about link trackers in SMS is also removed.

Task-2864264 (Mass Mailing Module Reorganization)

Part-of: odoo/odoo#92509
2022-05-31 16:02:24 +02:00
Thibault Delavallée c617923664 [MOV][FIX] mass_mailing: reorganize data and models, remove duplicated data
PURPOSE

Reorganize addon according to guidelines, helping finding and updating code.

SPECIFICATIONS

Correctly split data into separate files. A lot of content was put a bit
randomly in data files, leading to a hard discovery of code and features.

We also fix duplicated attachments definition, both in mass_mailing_data and
ir_attachment files. It has been merged into the attachment data file.

Task-2864264 (Mass Mailing Module Reorganization)

Part-of: odoo/odoo#92509
2022-05-31 16:02:24 +02:00
Thibault Delavallée 19b02759ca [LNT] mass_mailing(_sms): perform various linting
PURPOSE

Reorganize addon according to guidelines, helping finding and updating code.

SPECIFICATIONS

Perform various code linting and cleanups, line breaks, linter issues...
No code or feature change should occur with this commit.

Task-2864264 (Mass Mailing Module Reorganization)

Part-of: odoo/odoo#92509
2022-05-31 16:02:24 +02:00
Moens Alexandre 58b3625bc4 [IMP] l10n_eg_edi_eta : neutralise production env
before this commit:
The `odoo-bin neutralize` command would not neutralise l10n_eg_edi_eta

closes odoo/odoo#92298

X-original-commit: 9a0a644444be4cceb4bdc43838dc6ce414608437
Signed-off-by: Josse Colpaert <jco@odoo.com>
2022-05-31 16:02:15 +02:00
Antoine Vandevenne (anv) cfbd8990a3 [FIX] payment_*: update module sequences to be placed after Flutterwave
task-2759117

closes odoo/odoo#85514

Related: odoo/documentation#1939
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-05-31 16:02:08 +02:00
Antoine Vandevenne (anv) 94bddadf4e [ADD] payment_flutterwave: integrate with "Flutterwave standard" gateway
See README for technical details.

task-2759117

Part-of: odoo/odoo#85514
2022-05-31 16:02:08 +02:00
william-andre 9e6d585f75 [REF] account{,_edi}: upload bill wizard is for all kind of documents
An enterprise module adds the possibility to upload bank statements.
Since the mechanism is exactly the same, we should use the same
functions.

closes odoo/odoo#83639

Related: odoo/enterprise#25123
Related: odoo/upgrade#3460
Signed-off-by: Cedric Snauwaert <csn@odoo.com>
2022-05-31 16:01:51 +02:00
william-andre 7902975989 [IMP] account: allow drag and drop to upload bills in list view
Make users feel at home with a warm welcome when they try to upload
something with a drag and drop.

task-2748604

Part-of: odoo/odoo#83639
2022-05-31 16:01:51 +02:00
Didier (did) ef65fb396f [IMP] mail, im_livechat: remove dead code
closes odoo/odoo#92502

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-31 14:59:32 +02:00
Philippe Wauthy 7f35035f9c [FIX] privacy_lookup: fix xml id not found error
In privacy_lookup, an action is called with a XML id that is not existing.
This commit fixes the traceback received by pointing to the correct XML id.

closes odoo/odoo#92499

Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-05-31 14:59:28 +02:00
Shawcker 273c133f70 [IMP] account: improve display of the journals audit report
A few points can be improved in the display of the journals audit report:
1. it only contains the account codes. This can be unclear and lead to hard to read reports, especially for manually created accounts
2. the width of the columns Partner, Account, Label can sometimes be too small which causes a line break to happen too early
3. monetary fields do not align right for right-to-left languages.

This commit addresses these issues by:
1. adding the account name right next to the account code (same column) for more clarity.
2. setting a minimum width to mentioned columns
3. modifying the html classes accordingly to ensure the text aligns right no matter the direction of reading of the language (l2r or r2l).

task id=2824121

closes odoo/odoo#92304

X-original-commit: 0f5d125ee12597b4acb40053f74af8e03a102493
Related: odoo/enterprise#27776
Signed-off-by: Quentin De Paoli <qdp@odoo.com>
2022-05-31 14:59:20 +02:00
Cyril (cyla) e7f07d6021 [FIX] l10n_it: fix migration script
This migration script assigns the tags associated to an account's
templates to the account. It fails to consider conflicting cases
when the account already has the tag, or when multiple templates
associated with the same account share the same tag.

closes odoo/odoo#91663

X-original-commit: 04e3d52cff678dacee530e12d3f833fcce9147bc
Signed-off-by: Olivier Colson <oco@odoo.com>
Signed-off-by: William André (wan) <wan@odoo.com>
2022-05-31 14:59:11 +02:00
Didier (did) d46e879983 [FIX] mail: remove channel name translation
task-2818091

closes odoo/odoo#88239

Related: odoo/upgrade#3423
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-31 14:59:04 +02:00
Odoo's Mergebot 1ba2d59e1c [MERGE][IMP] mail, mass_mailing: remove mails in batch outside of send loop
Remove `mail.mail` in batch
===========================
Improve the performance of mass mailing by removing the <mail.mail>, in
batch, all at once. The unlink operation is very expensive for the ORM,
in terms of SQL queries.

A new field `to_delete` is required to know which <mail.mail> we need
to delete. The reason is that the `failure_type` is stored on the
<mail.notification>, and it's possible to have <mail.mail> without
<mail.notification>.

Improve some views
==================
Show the state of the <mail.mail> in the tree view and color only the
badge widget instead of the entire row.

Misc improvement
================
Do not remove cancelled email during the sending.
It's not the role of the sending method to remove non outgoing emails.

Do not try to send a lot of emails because of the mass mailing demo data

Task-2587345

closes odoo/odoo#73271

Related: odoo/enterprise#24266
Related: odoo/upgrade#3481
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 14:58:54 +02:00
std-odoo 036a739b62 [IMP] mail, mass_mailing: remove the <mail.mail> in batch
Purpose
=======
Improve the performance of mass mailing by removing the <mail.mail>, in
batch, all at once. The unlink operation is very expensive for the ORM,
in terms of SQL queries.

A new field `to_delete` is required to know which <mail.mail> we need
to delete. The reason is that the `failure_type` is stored on the
<mail.notification>, and it's possible to have <mail.mail> without
<mail.notification>.

Task-2587345

Part-of: odoo/odoo#73271
2022-05-31 14:58:53 +02:00
std-odoo 94a372dee7 [IMP] mail: improve the tree view of the <mail.mail>
Purpose
=======
Show the state of the <mail.mail> in the tree view and color only the
badge widget instead of the entire row.

Fix a typo in the help of the scheduled_date field on mail template.

Task-2587345

Part-of: odoo/odoo#73271
2022-05-31 14:58:53 +02:00
std-odoo 33965afa5e [IMP] mail: do not remove cancelled email during the sending
Purpose
=======
It's not the role of the sending method to remove non outgoing emails.

Task-2587345

Part-of: odoo/odoo#73271
2022-05-31 14:58:52 +02:00
Odoo's Mergebot 0ee53dc7bd [MERGE][REF] event{,_sale}: unstore seats and add revenues reporting
This PR tackles event registrations in two ways:

1. In order to reduce the concurrent writes on the database occurring when many users book at the same time, this unstores seats availability on events and tickets.

2. To provide better tools to analyse revenues specifically generated from events, we add an event sales report (+ a dashboard with Enterprise).

Task-2654816
Task-2679881
See odoo/upgrade#3118
See odoo/enterprise#24472

closes odoo/odoo#81583

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 13:57:26 +02:00
Florian CharlierandJulien Banken 1840656060 [IMP] event_sale: add event revenue reporting
As an event manager, it can be difficult to estimate how much of the revenue
was generated by the events. To give clear insights, we will add new reports
to the 'event' module.

With those new reports, the user can group the revenues by event (type),
ticket, product, etc. The user will then be able to quickly see which tickets
and events are the most profitable ones. The reports will be accessible only if
the user installed the 'sale' module.

Task-2679881
See odoo/enterprise#24472

Part-of: odoo/odoo#81583
Co-authored-by: Florian Charlier <flch@odoo.com>
Co-authored-by: Julien Banken <jbn@odoo.com>
2022-05-31 13:57:25 +02:00
Florian Charlier a0e7f69513 [IMP] event{,_sale}: unstore seat fields
With stored computed seat attributes, the database can be flooded with update
queries for the stored values for the event (ticket) seats computations (such
as reserved, expected, and available seats).
This can especially occur when a communication is sent to many people about
an event with a registration link, many users may want to register at the same
time, possibly resulting in concurrent_update errors.

In this commit, we remove the `store=True` attribute of those fields, and
therefore remove the Reporting/Event feature depending on them and rewrite some
domain searches and _compute fields in the event and event_sale modules.

This also impacts the way constraints are enforced on the number of
registrations vs defined maximum as no stored value is directly available.

For performance reasons, all events and tickets are now shown on backend form
views, with seat availability added in their displayed name.

Misc
To avoid delaying the inevitable, the Event configurator modal/wizard now
validates event/ticket consistency at closing.

The UI of the RegistrationEditor wizard is also improved:
* A warning alert will tell users that free registrations were not confirmed
because of insufficient seat availability.
* A first step to better explain the consequences of the actions taken on the
modal was to be taken, here via the description and buttons wording.

Tests
Query counts are (indeed reduced) and updated. However, as local testing with
`test-tags=/test_event_full` ("tef_only") is currently not reliable, these
values were updated by applying the same change from the commit as the one seen
for the runbots, while a "?" is appended to show this uncertainty.

Task-2654816
See odoo/upgrade#3118

Part-of: odoo/odoo#81583
2022-05-31 13:57:24 +02:00
Louis Wicket (wil) 94db11826e [IMP] mail: add res_users_settings_id field
Add the `res_users_settings_id` field on `res.users` so that it can be
used as a target for relateds that is not a x2many field.

closes odoo/odoo#90015

Related: odoo/upgrade#3479
Related: odoo/enterprise#26287
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-31 12:52:00 +02:00
Louis Wicket (wil) a3f9f345b2 [IMP] mail: add name to a group in res.users.settings view
Add name to a group in res.users.settings view so that it can be used as
a target for overriding.

Part-of: odoo/odoo#90015
2022-05-31 12:52:00 +02:00
Louis Wicket (wil) fde48eca1c [IMP] test_discuss_full: move init_messaging result in its own getter
Move expected init_messaging results in a getter so that it can be
overriden.

Needed for task-2821508 that adds fields to the model
`res.users.settings`, whose the content is returned by init_messaging.

Part-of: odoo/odoo#90015
2022-05-31 12:52:00 +02:00
Patrick Hoste b309200de5 [IMP] event: allows filtering event on address
PURPOSE

This commit allows one to filter the events based on its address

LINKS

Task-2810400

closes odoo/odoo#87678

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 12:51:50 +02:00
Jacky (trj) 0e2840aa87 [ADD] pos_hr_restaurant: link between pos_hr and pos_restaurant
Moved the cross behaviors and logics in a new link module. This avoid having to
create hook methods in the `point_of_sale` that needs to be overridden.

closes odoo/odoo#92256

Signed-off-by: Masereel Pierre <pim@odoo.com>
2022-05-31 11:07:08 +02:00
Kevin Baptiste 48f340d885 [IMP] hr_expense: rename default Expense product
Both default expenses product were called Expenses, which was confusing
as it was not possible to distinguish them at first glance.

Here the expense product with a fixed cost is renamed to make it more
clear.

odoo/upgrade#3546

closes odoo/odoo#92232

Taskid: 2862104
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-05-31 11:07:02 +02:00
root 4c6a010730 [ADD] mail: quick-open related record from activity
Current behavior before PR: You have to find the right menu/view and then take
over the ID stored on the activity (through export) to find back the record.
This is annoying, painful and error prone.

Desired behavior after PR is merged: By adding a smartbutton the user can
quick-navigate to the related record in a second. This allows for quickly
finding and opening records which is usually handy when debugging things or
finding back related records.

Task-2868230

closes odoo/odoo#91230

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 11:06:56 +02:00
root 6d1f9a2000 [ADD] mail: quick-open related record from email
Current behavior before PR: You have to find the right menu/view and then take
over the ID stored on the email to find back the record. This is annoying,
painful and error prone.

Desired behavior after PR is merged: By adding a smartbutton the user can
quick-navigate to the related record in a second. This allows for quickly
finding and opening records which is usually handy when debugging things.

Task-2868230

closes odoo/odoo#91228

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-05-31 11:06:52 +02:00
Antoine Guenet f9a8072dbf [IMP] web_editor: don't convert little column duos to wrapping columns
This applies the following heuristic when converting from static columns
to stacking, responsive columns: don't do stack duos of columns where
one is very small and the other very big (eg., col-2 col-10). This
doesn't apply when one of the columns in question is host to a
full-width element (as this could cause ugly sizing).

task-2761098

closes odoo/odoo#87962

Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
2022-05-31 11:06:48 +02:00
Antoine Guenet aa4590f4d9 [FIX] mass_mailing: center header cells on mobile
On mobile, header cells don't always have the space to fit in one line
and end up getting stacked with one aligned to the left and the other
aligned to the right. To avoid this ugly mess, center everything on
mobile.

task-2761098

Part-of: odoo/odoo#87962
2022-05-31 11:06:48 +02:00
Antoine Guenet 63c301ce20 [FIX] web_editor: ensure images don't stretch on responsive resizing
When images get resized, we need to make sure they don't stretch.

task-2761098

Part-of: odoo/odoo#87962
2022-05-31 11:06:48 +02:00