Before this commit, and since the new orm, we cannot open a record that have
no res_model and res_id.
With new orm, we should return a value for all records.
Now, we can open attachement form view without the error:
ir.attachement(<id>).res_name traceback
closesodoo/odoo#36446
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
In order to improve and clarify the mass-mailing (Email Marketing) module
several changes have been made
1 - Clarify the name of the application:
2 - Prevent the “Quick Add/Create” feature in the mailing kanban view
3 - Label and wording clarification in mailing_mailing form view :
4 - Clarify button names "Send now" ("put_in_queue")
5 - Mailing Form view layout
6 - Clarify the required field
7 - Clarify the readonly field
8 - Wording clarification if scheduling mail in the future
9 - Add a Placeholders tools page in the form view:
10 - Clarify the Campaigns view
11 - Clarify the Action Helpers
TASK-ID : 2046078
closesodoo/odoo#36124
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
We must be able to change the hostname of IoT Box
even if we do not pass him a token.
So we give a default value to 'url' and 'token'
closesodoo/odoo#36428
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
Sometimes when using a form view in a modal (e.i.: in a gantt view), we might
want to have some button in the footer. We expect clicking on buttons to close
the dialog but nothing happens, since the webclient does not know that this is
a modal.
To do so, we provide the `close='1'` attribute on the button, in form view.
This will trigger the event closing the modal.
This is done with the benediction of aab-odoo
Task-2024216
closesodoo/odoo#36493
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
When selecting the lang browse record, it can be empty when language is not
activated. As we don't need that lang to be active to translate the
format datetime (lang code is enough for Bable lib), we simply
need to fallback to prevent error.
Removed a browse on partners made in a loop, for a substantial gain of time and DB queries.
Observed gain for a real data DB with 500 partners to print in the aged report:
time (ms) # queries
Before patch 4583 1623
After patch 2932 553
Gain 1651 (36%) 1070 (66%)
closesodoo/odoo#36488
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
This commit tries to fix multi company problem in Expense application. Indeed, no check
were done to ensure this business flow. Some technical decisions were made:
- journal company: the journal define the company in which the accounting entries will be
created. We know ensure with 'domains' and constraints that the journal have the same
company as the expense sheet.
- journal conditionnally required: the journal is only required when posting the expense. It
is set by defaut on creation, but can be modify by accountant users. This is why the expense
company determine the journal and not the opposite.
- company fields required: As we need to use the company from the expense / expense sheet to
determine the journal field and since expense models are business models, we needed to put
company fields required.
Business Flow
When an employee creates an expense, the expense should be in its current company. A
product from any allowed company can be chosen. Only the taxes of the expense company are
applied to compute amounts. Then a report (sheet) can be created. We ensure that the expense
lines of a report belongs to the same company as the report and to the same employee. Once
submitted and approved by manager, the account journal can be set: it is forced to be in
the same company as the expense report. The accounting entries are created in the journal
(and expense report) company. As the analytic account can be shared (company is not set)
the analytic entries will be in the expense company (handle by the accounting module).
The payment is now registered in the expense company.
Migration
As company fields are now required, fill the company fields with the company of the related
employee, or fallback on the one from the journal.
Task-1999686
closesodoo/odoo#36447
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
As we have to set account on product and product category to know in which
account generate some accounting entries in some business flow (e.i.: expense),
we need to keep some consistence with those accounts.
Since those fields are company dependent, meaning their value depends on the
current company, we want to ease the selection for the end user by only displaying
the relation available in the current company. To do so, specific domain are needed.
This guidelines should be applyied on each property fields.
Task-1999686
PURPOSE
Allow the user to enrich a lead based on the domain of the email address of
the client.
SPECIFICATIONS
Following fields will be populated if found using clearbit and if they are
not yet populated :
* description
* partner_name
* reveal_id
* website
* street, street2, zip, city, country_id, state_id
* phone (using the first number found in clearbit)
* mobile (using the second number found in clearbit, else the same as phone)
A message will also be logged in the chatter.
If no data is found using clearbit no credit is used and a message will be
logged. If the user has no credits he will be redirected to buy credits for
the service.
It is possible to enrich using the 'enrich' action in listview or with a
cron that will run every hour on leads not older than 1 hour.
Add a "Lead Enrichment" setting in CRM installing lead enrichment.
LINKS
Task 193185
closesodoo/odoo#36419
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
Allow to manage attachments when updating a frontend review.
SPECIFICATIONS
Currently when posting a review in eLearning or eCommerce one can attach
files to its review thanks for portal composer. Rating popup composer allow
to update its comment and rating. However this edit mode has two limitations.
It does not display attachments previously added and does not allow to add
attachments.
This merge fixes that by
* giving attachment values to the composer, allowing its display by the
composer display at startup;
* allowing to give new attachments and properly handle them in slides
route;
Uploaded and validated attachments cannot be removed by users. Indeed
message with attachments has probably already be sent to people and removing
attachments would lead to information loss.
LINKS
Task 2066600 (manage attachments)
Task 2058595 (eLearning v13 testing)
closesodoo/odoo#36409
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
When creating invoices via the 'Upload' button, the
'message_main_attachment_id' field wasn't set on the record. This
happened because the message posted in the chatter was linked to the
wrong 'res_model' which prevented it from being selected as the main
attachment.
This was causing a bug in the OCR module ('account.invoice.extract')
where we use this field to determine which attachment must be sent to
the OCR server.
closesodoo/odoo#36309
Signed-off-by: Florian Daloze (fda) <fda@odoo.com>
* When clicking on the partner m2o selection field before having clicked on the bank statement line, 2 events occured:
* the bank statement line expanded
* the partner selection showed
This could lead to unwanted behavior as the renderer could update
-> Stop the propagation of a click on .o_field_widget to prevent
flickering and possible update of the statement line widget
* Always recompute the create line as sometimes the value is not correct
when removing a proposition
closesodoo/odoo#36322
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
PURPOSE
Allow to manage attachments when updating a frontend review.
SPECIFICATIONS
Currently when posting a review in eLearning or eCommerce one can attach
files to its review thanks for portal composer. Rating popup composer allow
to update its comment and rating. However this edit mode has two limitations.
It does not display attachments previously added and does not allow to add
attachments.
This commit fixes that by
* giving attachment values to the composer, allowing its display by the
composer display at startup;
* allowing to give new attachments and properly handle them in slides
route;
Uploaded and validated attachments cannot be removed by users. Indeed
message with attachments has probably already be sent to people and removing
attachments would lead to information loss.
LINKS
Task 2066600 (manage attachments)
Task 2058595 (eLearning v13 testing)
PURPOSE
Allow to manage attachments when updating a frontend review.
SPECIFICATIONS
Popup composer used notably in website_rating (eLearning, eCommerce) is not
instantiated inside a frontend chatter. It does not get all available CSS rules
as those are all set inside o_portal_chatter.
In this commit we move some CSS rules to allow using them in composer or chatter
independently of how they are instantiated.
LINKS
Task 2066600 (manage attachments)
Task 2058595 (eLearning v13 testing)
PURPOSE
Allow to manage attachments when updating a frontend review.
SPECIFICATIONS
As those widgets grow it is better to have them in separate files in order to
better understand code organization. Future commits will improve composer
behavior, notably in attachments management.
LINKS
Task 2066600 (manage attachments)
Task 2058595 (eLearning v13 testing)
Before this commit, user got a traceback when he clicks on Units
Purchased button from product view form.
The issue was we asked to the purchase report to be based on a field who
doesn't exist anymore.
The fix only replaces `unit_quantity` for `qty_ordered`.
closesodoo/odoo#36342
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
shortened the full_reconcile_id column by re-labelling it 'Matching #'. Asked in 2049120
closesodoo/odoo#36445
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Let's assume a kanban view with oe_kanban_global_click className
(i.e. clicks on the card open the record in a form view), and an
image with the 'image' widget. This is for instance the case of the
hr.employee kanban view.
Before this rev., clicking on the image didn't open the record in
form view.
closesodoo/odoo#36321
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
The tags in the tax are created for the Mexican taxes (IVA, ISR & IEPS)
This was assigned in the taxes on 3efefd2171,
but in the commit 333c22edd9
was removed from the tax 0%.
Now was returned that data, to be consistent with the tax for 16%
closesodoo/odoo#36206
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
When is used the option to get the CoA reports based on groups, is
necessary set the tag in each group, then, is necessary load the tags
for second level in the SAT catalog for accounts.
This could responsibility is designed for that kind of users.
Without that it could lead to inconsistencies during the time off
validation flow. (ir.rule errors, ...)
Let's assume a kanban view with oe_kanban_global_click className
(i.e. clicks on the card open the record in a form view), and an
image with the 'image' widget. This is for instance the case of the
hr.employee kanban view.
Before this rev., clicking on the image didn't open the record in
form view.
Since 78565b1dc9 , two menus with an act_url action drive the user to
external websites. This makes the click_all test very fragile.
With this commit the Apps menus "Theme Store" and "Third-Party Apps" are
black-listed in the click_all test.
Also, it happens that a filter which is not supposed to work in some
circumstances is simply hidden. Actually, the click_all test sets that
filter and leads to a crash.
With this commit, for a more realistic use case, the click_all test does
not activate hidden filters.
closesodoo/odoo#36433
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
The tour try to click on the language dropdown before the reloading of the
page if the server is slow.
To fix it, we avoid the reloading by the rte, and trigger the reload
in '_reload' method of editor menu who add the class 'o_wait_reload'.
We add a selector and trigger in the test to avoid undeterministic error.
closesodoo/odoo#36098
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Before this commit, when user follows odoobot chat onboarding and
sends a canned response at the canned response step, odoobot did
not validate the message with the canned response.
This is caused by RPC `message_post` that filters out values that
are not message fields, such as `canned_response_ids`.
This commit fixes the issue by adding a non-stored field
`canned_response_ids` to `mail.message`. This requires the reverse
relation too, `message_ids` in `mail.shortcodes` (= the model for
canned responses).
Task-Id 2058455
closesodoo/odoo#36411
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
In the IoT Box, most calls to subprocess used "Shell=True", which can
cause security issues.
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
closesodoo/odoo#36088
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
Linked to odoo/enterprise#5266
Move all the logic that was inside hw_screen into an IoT Driver
in order to have consistency between devices.
Move the configuration of screen_url from the IoT Box form to
the IoT Device.
If an URL different than the default one is used, refresh the
page every minute.
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
closesodoo/odoo#36074
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
Change Firefox config to open external links in the active tab.
This avoids having multiple running tabs when changing the URL
showing on the Display device.
The screen URL is not linked to the Box anymore but to the Device.
We don't need to fetch a screen_url at the boot, it'll be done inside
each device.
TaskID: 1893493