PURPOSE
Optimize record creation in mail module by adding batch operations.
SPECIFICATIONS
Compute default followers once at creation for all created records. As the
same value is computed for each new record computing it once is sufficient.
Log default creation message in batch when having no specific subtype at
create. It allows to speedup record creation. For 1000 records, these specific
lines take
* 2.1s before the commit
* 1.2s after the commit
LINKS
PR #36654
Task 2070602
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
Once SMS Marketing has landed, a few comments/reviews to improve the interface,
clarify buttons and actions and ease the onboarding.
SPECIFICATIONS
[FIX] sms - mass_mailing: fix some bugs
- Cancel button in the sms form view not related to a action :
When we click on the cancel button of the sms form view, get traceback.
Fix the issue by adding the cancel action in sms model.
- Mass mailing contact - False as the display name :
The display name was the mail address but when the contact didn't have
mail address a ugly False was print to described the contact (form view).
Then change the _rec_name to print the name as the display name.
- Fix SMS composer for the res.partner tree
Only the first record was truly selected when open the sms composer
(mass) from the tree view of partner. Fix that by bind the actives_ids
in the context and also fix the names of related actions.
[IMP] sms: allow to preview a sms template
Add a way for the user to preview sms content from a sms
template depending of a record (targeted model) and the
installed languages (as for the mail template). Add button
to open this preview on the form of the sms template.
[IMP] sms: allow to create a sms context action from template
In the SMS template, we add the ability to create (and remove)
a contextual action on the targeted model from a sms template.
We change the sms composer to guess the composition mode,
and then to be usable by contextual action. The guess composition mode
works differently if there are multiple target
selected (mass) or a single target (comment).
[IMP] (sms_)mass_mailing: improve interface
- Change the name of "Mass SMS" by "SMS Marketing"
- Improve the Mass Mailing views (kanban, form)
- Improve the Mass SMS views (kanban, search, form)
- Hide the sanitized numbers from views (sometime replace by mobile)
- Fix demo data of sms
- Explain the language field of sms template
- Improve the render of the sms composer wizard
LINKS
TASK_ID : 2053631
closesodoo/odoo#36286
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
- Change the name of "Mass SMS" by "SMS Marketing"
- Improve the Mass Mailing views (kanban, form)
- Improve the Mass SMS views (kanban, search, form)
- Hide the sanitized numbers from views (sometime replace by mobile)
- Fix demo data of sms
- Explain the language field of sms template
- Improve the render of the sms composer wizard
TASK_ID : 2053631
In the SMS template, we add the ability to create (and remove)
a contextual action on the targeted model from a sms template.
We change the sms composer to guess the composition mode,
and then to be usable by contextual action. The guess compostion mode
works differently if there are multiple target
selected (mass) or a single target (comment).
TASK_ID : 2053631
Add a way for the user to preview sms content from a sms
template depending of a record (targeted model) and the
installed languages (as for the mail template). Add button
to open this preview on the form of the sms template.
TASK_ID : 2053631
- Cancel button in the sms form view not related to a action :
When we click on the cancel button of the sms form view, get traceback.
Fix the issue by adding the cancel action in sms model.
- Mass mailing contact - False as the display name :
The display name was the mail address but when the contact didn't have
mail address a ugly False was print to described the contact (form view).
Then change the _rec_name to print the name as the display name.
- Fix SMS composer for the res.parnter tree
Only the first record was truely selected when open the sms composer
(mass) from the tree view of partner. Fix that by bind the actives_ids
in the context and also fix the names of related actions.
TASK_ID : 2053631
With the changes in the ORM, the method _compute_has_chart_of_accounts is now also called after the create, erasing the value of chart_template_id.
We cannot set that field as related to the company because set_values checks if the value changes and it wouldnt be the case if we already changed it at the validation of the config form.
So this commit checks if there is already a value before setting the default.
closesodoo/odoo#36780
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
The custom event 'open_view' triggered by the pivot
renderer was not stopped in the pivot controller. This
used to cause a crash because the dashboard controller
also listens to a custom event with the same name but
following another logic.
The present fix simply stop the propagaton of the event.
A test has been added in the module web_dashboard.
closesodoo/odoo#36466
Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>
The value of that field can be given as a dict containing the fields of
the corresponding record.
Co-authored with Michael Mattiello <mcm@odoo.com>
closesodoo/odoo#36779
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Add luxembourgish language code in order to be able to translate terms
for that language in Odoo.
closesodoo/odoo#36757
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Added cursor pointer when hovering a keyword in Related Keywords and
added relevant tooltip for the better user experience.
Renamed classes:
js_seo_keyword_suggestion -> o_seo_keyword_suggestion
js_seo_suggestion -> o_seo_suggestion
task-2070946
closesodoo/odoo#36709
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
The carrier argument passed to the _create_delivery_line function
can be different to the carrier already existing in the sale order
so we should use the correct setting of carrier where we are calling
the function.
closesodoo/odoo#36424
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
When a warning is generated when rating a delivery method, the warning
message remains when changing to a different delivery method that isn't
supposed to give a warning.
If the chosen delivery method has free_over active, and if the cost
of the sale over exceeds the free_over amount, the delivery line
should have price_unit of zero.
Otherwise, if two POS stations are using the same user with the same pos.config,
i.e. create two session AND if you have bad luck, then those sessions will get
same login_number, which leads to losing half of orders, because POS stations
will generate same pos_reference and only first order from the POSes is saved,
while another order is lost without let know to cashier.
closesodoo/odoo#24486
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
The computation was using an SQL query to speed it up, but the recent
changes in the ORM have made this optimization useless.
We have benchmarked an import of 10000 partners linked to the same
parent, in a database with Sales and Stock installed. The import is
slightly faster without the SQL query (7 min vs 8 min).
closesodoo/odoo#36768
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
When there is a lot of data to be displayed in the searchpanel, the scrollbar appears. The with of the scrollbar takes too much space compared to the width of the custom searchpanel.
This commit reduces the size for Chrome and Firefox >= 64
closesodoo/odoo#36758
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
Install Account, do an invoice, send and print it. Install
snailmail_account, do the same process. The wizard refuses to send the
email because the Compose field is empty.
The `account.invoice.send` model is defined with an `_inherits` to
`mail.compose.message` on the `compose_id` key. When the model is first
created, that `compose_id` key is left unpopulated on the view as the
referenced model is not created yet. Hence posting the view is
impossible as it fails the form validation.
closesodoo/odoo#36715
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
This commit makes the email button to behave consistently with the
invoice button. Basically, if there is no selected customer when
invoicing, the UI should direct the user to select a customer. This
behaviour is implemented with the email button with special check on the
validity of the customer email.
closesodoo/odoo#36681
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
To get a better overview of the groupy view like "Sales Journal",
we need some attachments on invoices.
Furthermore, the product's label was missing on all invoice lines.
closesodoo/odoo#36573
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Task 1902206
When importing from winbooks, there might be entries with the amount_currency that matches but with an exchange difference that was not yet created. This commit allows to do a reconciliation without trying to do a full reconcile if it is the case
closesodoo/odoo#35055
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Task 1986647
With the reworking of the account_report_followup module, these variables and methods are no longer needed. Now everything is done with followup levels, with only one level by default
Also rename account_report_followup to account_followup.
closesodoo/odoo#35772
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Disqualify the constraint in the adyen identifier if it is empty because
it is not needed in other payment methods that are configured with other
payment terminal.
closesodoo/odoo#36702
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
In a settings form view, do some changes, then click on a button
or link in the form (e.g. 'Manage Users' in General Settings).
We now ask if the user wants to discard the changes before leaving
the page.
Task 1921574
closesodoo/odoo#34799
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
The `get_wifi_essid` function was moved to the helpers file, but the
`self` argument was not removed from the function's signature.
closesodoo/odoo#36710
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
For contacts without company, it was not possible to modify the type
and set a private address
opw-1944234
Closesodoo/odoo#31491closesodoo/odoo#36701
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Contacting youtube API sometimes fails making falsy red runbot. In this commit
we remove video from member tour so that it tests the interface. Some demo
slides with youtube video are added in another course and new test is added
that crawls that channel.
Task 2066565
closesodoo/odoo#36697
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
When .with_context() is called with a dictionary as 1st positional
argument, it will replace context (and not modify the referenced keys)
It may create bugs when losing the content of the context (e.g. remove
partner's language)
This is a cherry-pick to saas-12.5 of odoo/odoo#36164 of the logistic
part as discussed
closesodoo/odoo#36690
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Some l10n were creating a specific account type for the off balance
accounts, there is now a new account type defined for thsi in the
account module
closesodoo/odoo#36432
Signed-off-by: Josse Colpaert <jco@openerp.com>
To ease the marketing and lead follow up, a stat button about
livechat sessions of the lead (that comes from the website_visitor model)
is added to the crm.lead form view.
This button displays and redirect to a list of all the sessions
from all the visitors related to the lead.
Task ID : 2057428
PR #36180
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
In order to keep all the visitors from all the leads to merge,
the relation between leads and visitors becomes a many2many.
So that after the lead merge, a lead can have multiple visitors.
This commit re-add the page view stat button that were removed
during website_visitor introduction and page tracking refactoring.
This button counts all the pages views from all the visitors linked
tho the current lead. Clicking on it redirect to the complete
navigation history, from all visitors linked to the lead.
Task ID : 2057428
PR #36180