Pass the options: `{'create': False}` to the a many2many_tags field in some arch
Before this commit, there was a crash because the API of the field's props did not
account for that use case.
After this commit, it does.
closesodoo/odoo#98050
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
This commit will simplify the code of Thread by properly splitting all
behaviors exclusive to mail.box threads.
* = test_mail_full
closesodoo/odoo#97996
Related: odoo/enterprise#30402
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Current behavior
Starred messages counter takes into account the starred messages of a private
channels even if we no longer have access to this channel. Happens with deleted
messages too.
Steps channels
- Install Discuss
- Create a Private Channel and invite Marc Demo to join it
then send him a message
- *As Marc Demo*, star the message then leave the channel
-> Starred counter still shows 1
Steps for deleted messages
- Join the private channel again
- Delete the starred message (with Mitchell Admin)
-> Starred counter still shows 1 for Marc Demo
Reasons
Starred message count is computed by a raw sql [1] which only counts partner's
occurrences without taking into account the message's state and/or the
associated channel.
Side records (stars, notifications) are not removed when emptying a message
content [2].
With changes
- It doesn't take into account messages from a private channel which we no
longer have access to by doing a search on mail.message instead of doing it
in SQL (which filters out invisible messages);
- It correctly voids side records when emptying messages;
Side effects
This somehow raises number of queries because we now check access on messages
and records. However this is necessary as bypassing ACLs means unreachable
notifications or stars.
OPW-2742092
Task-2813738
[1] : https://github.com/odoo/odoo/blob/2c1c6b1373c238216fda1e2d9d2f00b5d16c8ca3/addons/mail/models/res_partner.py#L49-L51
[2] : 776d1ee08bclosesodoo/odoo#97974
X-original-commit: b1e8f7d97e3a1fa624436d2dd6801bf5fe7d19aa
Related: odoo/enterprise#30415
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Fixing the survey question form view which is
currently displaying a preview outside of the form
boundaries as a consequence of the BS5 migration.
This commit modifies the question preview to render it
inside the form boudaries.
Task-2950180
closesodoo/odoo#97938
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
When an online appointment (having no location set in it's appointment type) is
booked, we need automatically generate the `videocall_location` so that in the
confirmation email received by customers already has a link to join. For
building this URL, we need to use 'DISCUSS_ROUTE' when appointment is being
created (see the linked ENT PR).
For making 'DISCUSS_ROUTE' easily accessible, instead of keeping it as a global
variable, we now make it a class property of the model `calendar.event`.
taskID-2821957
closesodoo/odoo#92628
Related: odoo/enterprise#27136
Related: odoo/upgrade#3558
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
This commit done below changes:
- Change the "Meeting URL" label to "How to Join".
- Change the "https://meet.jit.si/odoo-xyz" label to
"www.mycompany.com/calendar/join_videocall/xyz".
- Adds the label "Join with Odoo Discuss" if the `base_url` is found
in `videocall_lcation`, otherwise "Join At" instead of simply showing
the meeting URL in calendar event related mail templates and moves the
meeting URL to the bottom of this label.
- To avoid a tiny calendar badge, add style `min-width: 130px;` to the
calendar badge.
taskID-2821957
Part-of: odoo/odoo#92628
Ease subcontractor stock tracking by using dedicated locations.
Simply declare location as a subcontracting one (rules are
automatically adapted) and set it on vendor.
closesodoo/odoo#88644
Task: 2720393
Related: odoo/upgrade#3755
Signed-off-by: Tiffany Chang <tic@odoo.com>
The list view has recently been rewritten in OWL (see 48ef812).
During the rewriting, it was forgotten to put the class o_renderer on
list renderers, making a no content helper in a list view be positioned
too much on the left and have its style broken when the list has a search
panel.
Part-of: odoo/odoo#97876
When an invoice has led to the creation of an Exchange Difference Entry, it is shown on the invoice view form.
The info button allows to see more information on that entry, however in the case of an exchange difference,
the "Unreconcile" button should not be displayed. This commit fixes this.
closesodoo/odoo#96997
Signed-off-by: Laurent Smet <las@odoo.com>
The need for this change is give the flessibility to add new features. Eg. same company have multiple plant/office in this case we will have one VAT code and multiple fiscal code.
closesodoo/odoo#91326
Signed-off-by: Josse Colpaert <jco@odoo.com>
This new commit will add a new tab on the user profile that will list
the certifications attempts made a given user. With this new tab, the
administrators can get a quick overview of the user activity.
task-2679881
closesodoo/odoo#81057
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
The default email sent when a user succeed the certification will now
include the user's score. By opening the email, the users will directly
know how well they performed without having to log in.
task-2679881
Part-of: odoo/odoo#81057
PURPOSE
Improve the Marketing Campaign and Mass SMS form/tree views.
Notably to display clearly what's happening with the A/B testing.
SPECIFICATIONS
- Re-arrange and improve the "mailings" embed tree view in the Marketing
Campaign form, for both mail and sms
- Add A/B testing information in Marketing Campaign form views
- Reword some labels
- Do not override existing campaign when enabling A/B testing
See underlying commits for details.
LINKS
PR #77768
Task 2653806
Related: odoo/enterprise#21421
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Right now, on an existing mailing, if we enable the a/b testing and there's
already a campaign set, we remove it and add a newly create campaign that
matches the name of current mailing. Also, while duplicating a campaign, the
`ab_testing_completed` field should not be copied over.
This commit improves the behavior and only creates a new campaign if there's
not one already set on a record, and by preventing `ab_testing_completed`
from being copied.
TaskID-2653806
Part-of: odoo/odoo#77768
This commit adds a new group `ab_test_group` after notebook of campaign form
view, which displays A/B test related information. Below are the fields
displayed within the group:
- ab_testing_winner_selection
- ab_testing_schedule_datetime
They will become readonly as soon as the the A/B testing is completed.
Apart from that, this commit makes the mailing/sms mailing lines editable.
TaskID-2653806
Part-of: odoo/odoo#77768
This commit improves the embedded tree view of mailings, sms within
a campaign, and makes it uniform with the original tree views.
However, due to lack of space, we display the stats simply in
numeric format instead using progressbar widget.
Also, to save a bit space, if no mailing, sms has A/B testing
enabled, we hide that column.
Apart from that we have added sum for the field `sent` and average
for these fields,
- recieved_ratio
- opened_ratio
- clicks_ratio
- replied_ratio
- clicked
- bounced
TaskID-2653806
Part-of: odoo/odoo#77768
This commit improves the list view of SMS Marketing to make it
similar to Email Marketing. Now we have these fields in following
order:
- calendar_date
- subject (string updated to `Title`)
- mailing_model_id (optional hide)
- user_id
- campaign_id (optional hide, displayed when activated)
- ab_testing_enabled (displayed when activated)
- sent (added sum)
- clicked (updated string to `Clicked (%)` and added progressbar widget, average)
- bounced (updated string to `Bounced (%)`, optional hide with progressbar widget
and average)
- state
TaskID-2653806
Part-of: odoo/odoo#77768
When register a payment for a bill an a credit note,
the two payments have the same type.
Steps:
- Create a Vendor Bill, and a Vendor Bill Credit Note
- Select both and register payment without grouping them
-> The two created payments have the same type
With this commit, if the field group_payment is True, we
set the payment type regarding the balance of the move line.
opw-2852186
closesodoo/odoo#98010
X-original-commit: 2ad78818b59350cf5e9367802c41820e36d05db1
Signed-off-by: Laurent Smet <las@odoo.com>
Signed-off-by: Guillaume Vanleynseele (guva) <guva@odoo.com>
When we want to activate trigram psql extension for odoo/odoo#97294
on runbot. But one test fails (`test_01_many_records`) with it because
the website fuzzy search behavior depends on trigram extension presence.
closesodoo/odoo#98018
X-original-commit: 0562a17f8ca1be83c80372e2300e24ab9d0458a9
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Signed-off-by: Raphael Collet <rco@odoo.com>
Currently, bold style intensity on text is lost when switching from default
browser mode to full-screen mode for viewing e Learning Course content.
This happens due to the use of the `fw-light` class in full screen.
This class property is font-weight: 300 !important, so it overrides the
font-weight style property in the child element of this class.
This commit solves this issue by removing the `fw-light` class in the
full-screen record set.
task-2850325
closesodoo/odoo#91732
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Searching for anything in the Chart Of Account view would make a stacktrace appear.
FIX --> classic domain names instead of 'str(self)+'%''
Task-2951261
closesodoo/odoo#97991
Signed-off-by: Laurent Smet <las@odoo.com>
This commit changes the activities that are displayed on the project update.
(Both in the table of the project update form view and on the right panel in project update)
Specifically it reduces the sale order items to only the ones that are directly
related to the project (the project itself or its tasks)
A test was modified in order to accomodate the change.
closesodoo/odoo#97985
Signed-off-by: Xavier <xbo@odoo.com>
Considering recent recurring bug reports and the fact that bridge modules
now automatically compute the cost considering logistics, timesheets & expense
flows, the ability to manually edit the cost on a sale.order.line is now disabled.
In most cases, manually specified costs are automatically reset because of
stock/timesheets/expenses added dependencies on the purchase_price field.
Also adapt existing tests and use the new Sale tests common.
closesodoo/odoo#97977
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
The colorpickers forcefully reset the current history step to revert the
color change while previewing colors. This works when the only change in
the current step is in fact the colorpicker. If other changes already
existed in the current step however, they will be reverted as well. This
commit fixes the issue by introducing the concept of stashing mutations to
avoid that these be reverted. They can be unstashed later on when the
system is done abusing the revert mechanism.
task-2921844
closesodoo/odoo#97973
X-original-commit: cc280522d590c3ed257e7c6c495008e8986b2bf3
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Co-authored-by: Nicolas Bayet <nby@odoo.com>
Co-authored-by: David Monjoie <dmo@odoo.com>
When clicking the link tools button, the focus is set inside the URL
input, changing the selection temporarily to that input. This means that
if the user clicks any other button from the toolbar right after using
that input, a command would try (and refuse) to execute outside the
editable area.
The link tool is now destroyed when clicking other buttons of the
toolbar, thus either validating the link or reverting it, and the
selection is reset accordingly.
The toolbar buttons are now correctly bound on click rather than some
being bound on mousedown and some on clicks, like colorpickers, which
would result in weird behavior such as a mousedown handler modifying the
dom which changes the layout so the mouseup event is on another node and
the click is not fired anymore. This commit streamlines the behavior to
use click so that this issue does not occur anymore.
task-2921844
X-original-commit: 798e3d0eb0017e05261ca0a0c5e29706629f0350
Part-of: odoo/odoo#97973
Co-authored-by: Nicolas Bayet <nby@odoo.com>
Co-authored-by: David Monjoie <dmo@odoo.com>
When clicking the link tools button, the listener on `body` clicks is
triggered and we check if the toolbar should appear or be hidden. This
check should be skipped whenever we click in the toolbar but this was
checked via the selection on the global document rather that on the
editable's owner document, resulting in an oft-empty selection object.
As consequence, the checks were done and the toolbar was hidden, whereas
it should remain shown.
task-2921844
X-original-commit: f74184b4f98772949040eeea94e389b425fc3265
Part-of: odoo/odoo#97973
When opening the link tools with a collapsed selection, we have an empty
link, which is ugly with its dashed border around an element of width 0.
This inserts a placeholder space composed of two nbsps so that the
dashed border is correctly rendered.
task-2921844
X-original-commit: a1a3fc850fe50284441f74afb43ac06b0ae2d6c4
Part-of: odoo/odoo#97973
The link tools were made so that one needed to validate the URL they
input before it was applied to the DOM. But this was awkward, especially
when the selection was collapsed and we counted on the URL input to fill
the link's label.
We need to pause history steps however, otherwise each change will be
its own step in the history and the user will have to undo as many times
as the number of characters that were entered.
task-2921844
X-original-commit: 226c4c4032c26d3d8f622b29fb151fa8e78ba70a
Part-of: odoo/odoo#97973
Co-authored-by: Nicolas Bayet <nby@odoo.com>
Co-authored-by: Antoine Guenet <age@odoo.com>
The triple click correction algorithm in `getDeepRange` is supposed to
do be triggered only when a selection spans multiple nodes and ends at
position 0 of a node. But it only checked the end of the selection and
failed to check if the selection actually did span multiple nodes.
task-2921844
X-original-commit: 22fdcc0d09e232c481f05eefdb2e60ba1cea4f10
Part-of: odoo/odoo#97973
The previous pass in #97567 missed a small window of race condition
in *closing the fecking dialog*. Apparently that's still not
instantaneous enough and it's possible to have the check trigger in
the interval between clicking the button and the dialog being
completely torn down.
Add an explicit test for this to the existing `closeProfileDialog`
utility function.
closesodoo/odoo#97969
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Steps to reproduce:
- Inventory app > Settings > enable barcode scanner
- Manufacturing app > Create a new manufacturing order
- Under components, add a product that has a barcode
- Save > Print > Production order
The barcodes of the products on the report all encode the
same (incorrect) value, which is the manufacturing order name.
This commit changes the barcode value to the corresponding
barcode string of the products.
opw-2930848
closesodoo/odoo#97968
X-original-commit: 71d4d977d42e69e8e3d7e069098707b84812ee07
Signed-off-by: Adrien Widart <awt@odoo.com>
Signed-off-by: stcc-odoo <stcc@odoo.com>
When converting Bootstrap grids to tables for e-mail compatibility, we
need to take into account Bootstrap offsets on columns. We were doing
this by adding that offset to the column but we actually need to create
an extra column instead.
task-2936705
closesodoo/odoo#97962
X-original-commit: 8beb7ac47c4cc86822bbc42b67ce5f6a44d41626
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Signed-off-by: Antoine Guenet (age) <age@odoo.com>
Masonry's top inner container needs to have a 100% height to properly
size its contents.
task-2925779
X-original-commit: 717672d56958915084d98d69246c9e7e986fabab
Part-of: odoo/odoo#97962
The option to switch background types depends on CSS which was in the
website builder but absent from mass_mailing.
task-2925779
X-original-commit: 63595109516ec3f40be74115ce6cf8894977a727
Part-of: odoo/odoo#97962
When we convert Bootstrap grids to tables for e-mail compatibility, we
need to complete rows whose column sizes don't add up to 12. The way it
was, the last column was stretched to fill up the row, which is wrong as
it can affect the width of its contents.
With this commit, a new, empty column is appended to the row to fill it
up without affecting the existing rows. This is a more accurate way to
emulate the behavior of Flexbox.
task-2936705
X-original-commit: 462b698732dbc0e71972ddbe86c687f4bb3f9492
Part-of: odoo/odoo#97962
Since [1] when Bootstrap 5 was introduced, the images of search results
are not aligned anymore. This is because the detail part of the result
has been set to `flex-grow-1`.
This commit restores the former flex parameterisation through a new
class. The fix is applied both on the autocomplete results template and
the hybrid results element template (used to render `/website/search`).
[1]: https://github.com/odoo/odoo/commit/971e5a91aab96d36129a823e03f1f9f1b1293968
task-2951028
closesodoo/odoo#97944
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Since the bootstrap5 merge, dismissible alerts need to have a special
class for its close button to be positioned correctly. That button also
no longer needs to contain its own cross as it is added by bootstrap.
The class for such close buttons has also changed. This commit fixes
that.
closesodoo/odoo#97939
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
The model_definition_setup has been moved in [1] but adds some models
to be fetched that are not related to the bus module. This would lead
to error in single module builds.
closesodoo/odoo#97937
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
When sending SMS on several records in comment mode (aka: post sms message
in batch) the body is sent as it is. This does not happen frequently as
default usage is either
* comment on a single record -> body is rendered by onchange / compute;
* mass SMS on several records -> body is rendered for all records then
sent to all recipients;
Using comment mode in mass is not common, and is mainly achieved through
handcrafted actions. However this can be fixed by correctly rendering the
body before posting on all records.
Use addition of records instead of OR to keep ordering of created
messages when using SMS composer.
Spotted during Task-2613245 (Server actions mail update / cleaning)
closesodoo/odoo#97787closesodoo/odoo#97890closesodoo/odoo#97931
X-original-commit: odoo/odoo@1778a2c1b2
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Purpose is to enable dynamic rendering in mass comment mode. This highlights
an issue, as currently when using the comment mode on several records body
is not rendered, just sent as it is. This means raw dynamic code could be
sent.
Also cleanup some invalid setup (not enough records for mass) that skipped
some tests.
Spotted during Task-2613245 (Server actions mail update / cleaning)
X-original-commit: odoo/odoo@d5a1c5768b
Part-of: odoo/odoo#97931
The goal of this commit is to fix "New Page Dialog" margin issue
related to the use of '.form-group' CSS (dropped on BS5) and replace
it with a simple row gutter.
closesodoo/odoo#97919
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>