Commit Graph
140847 Commits
Author SHA1 Message Date
Jason Van Malder bde09810c7 [FIX] l10n_ch: fix isr report crash with studio
Issue

    - Swiss company
    - Install Accounting & Studio
    - Journals > Customers Invoice
        - Communication standard: Switzerland
    - Journals > Bank
        - Swizz account with CHF ISR subscription number
    - Studio > Reports > ISR

    Traceback

Cause

    If the statement of the `l10n_ch_isr_optical_line` compute
    method is False, the value will be `None`.

    In the view, we do a foreach on the value which is `None` and
    it crashes.

Solution

    Set an empty string as default value for the
    `l10n_ch_isr_optical_line` field

OPW-2129122

closes odoo/odoo#41247

X-original-commit: a0dc556b0e04c9e89e7f6a8e4e9af045151614f7
Signed-off-by: Jason Van Malder <jasonvanmalder@users.noreply.github.com>
2019-12-03 07:55:32 +00:00
Laurent Smet 32b2718b3b [FIX] base: Preserve loosing embedded files when printing 1 attachment
With the reload from attachment ticked (attachment_use) when dealing with
a single pdf, the attachment's content must be returned without calling _merge_pdfs
in order to preserve the embedded files. Since PyPDF2 doesn't support completely
the embedded files, there are simply dropped with creating a new pdf in _merge_pdfs even
with a single attachement.

closes odoo/odoo#41246

Issue: https://github.com/odoo/odoo/issues/41079
X-original-commit: a8f96bc7f35d047999cd16b7dd03bcddd3c32263
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2019-12-02 13:41:34 +00:00
Nicolas Martinelli 56ee149f11 [FIX] product_email_template: use proper parameters
`custom_layout` should be set as a context key, otherwise it crashes at
creation because of non-existing field.

opw-2146695
opw-2149726

closes odoo/odoo#41238

X-original-commit: f9837eb08a316965057fe239f434b1c6d5c0196c
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-12-03 07:55:13 +00:00
Raphael Collet 2554d197ff [IMP] test_new_api: add subtests (to ease debugging)
closes odoo/odoo#40574

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2019-12-03 09:31:32 +00:00
Julien Castiaux a5bbc90885 [IMP] base: new fields are copy=True by default
New fields created from `ir.model.fields` view form are copy=True by
default (copy=False in case of One2many) thanks to an onchange but
manually created fields were not (e.g. created from Studio)

Task: 2067885
2019-12-03 09:31:28 +00:00
Nicolas Martinelli 5fb29a25b1 [FIX] base: country change
Do not remove the country set on the company when the state is removed.

closes odoo/odoo#41234

X-original-commit: dfa2a3b7c5d75bfc5a3e5f07171daf373b319ed8
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-11-29 12:24:22 +00:00
mightyjol (jhk) 4a8a49d288 [FIX]mrp:remove undefined progress field on gantt view
steps to reproduce:
-install the manufacturing app
-install studio
-go to manufacturing > click on the studio icon (top right of the window)
> click views > activate the gantt view

you should see a traceback with the following error
"Invalid field 'progress' on model 'mrp.production'"

mrp_production does not have a progress field => removal of the
property "progress" in the view fixes the issue

opw-2144823

closes odoo/odoo#41197

X-original-commit: 31bf253110b9a77ec8d6185b66157cdbfe9e67f5
Signed-off-by: mightyjol <jhk-odoo@users.noreply.github.com>
2019-12-02 13:30:51 +00:00
Damien Bouvy d2b02cab29 [FIX] web,(various): don't pollute session_info for portal users
The `session_info` dictionnary is used to bootstrap some JS code client
side (usually in the backend). It includes relevant information, such
as some parameters key for the OdooBot onboarding, the Enterprise
subscription expiration alert, etc. to avoid triggering a lot of RPC
calls upon webclient start.

`session_info` is also called by the remote authentication mechanism
located at `/web/session/authenticate`, which can be used by external
mechanism to obtain a valid session remotely.

Revision odoo/odoo@8a28cc2 introduced the concept of cache keys for
some oft-requested data (such as menus, translations and dynamic qweb
templates) to avoid requesting them on each webclient start, since they
tend not to change often. Unfortunately, it introduced a read on the
ir.ui.menu model that raised an `AccessError` if the authenticating user
was not a member of the `base.group_user` group ('Internal' user type).

While fixing that issue, it became apparent that `session_info`
returns a whole lot of information through this remote connection route
which is entirely unnecessary if not used in the context of a webclient
start, such a currencies, the state of the enterprise subscription, etc.

This commit fixes the access right issue by removing this non-relevant
information from the returned dict (including cache keys) if the user
is not an internal one.

closes odoo/odoo#40770

X-original-commit: 6e99ac2c6cd5ca9af87b4fc7a3a1394359e30b02
Related: odoo/enterprise#6860
Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
2019-12-02 09:21:32 +00:00
Nicolas Martinelli a7a9362e07 [FIX] base, base_automation: make active field visible
For better usability.

opw-2146601

closes odoo/odoo#41201

X-original-commit: 807dddabd0bd485b1c694e8ace21804a5d2c9ba1
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-12-02 15:54:53 +00:00
Xavier Morel baabfc9ecf [REM] survey: dynamic domain
Task 2115472

closes odoo/odoo#40961

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-12-02 15:15:07 +00:00
Jason Van Malder eefa19f60b [FIX] web, account: fix RTL popover on invoice
Reproduce the issue

    - Load Arabic language
    - Install Accounting
    - Create an invoice & add credit note
    - Switch to arabic
    - Click on the "(i)" icon near the total price

    The popover is displayed at the other side of the screen

Cause

    - RTLcss was reversing the "left: 0" css property to "right: 0"
    - The popover configuration was not adapted for RTL

This commit ignore RTL for the popover css "left" property and
configure correctly the JS side

OPW-2146210

closes odoo/odoo#41200

X-original-commit: 88f03f0444a2533b1f6085369af431131da42b54
Signed-off-by: Jason Van Malder <jasonvanmalder@users.noreply.github.com>
2019-12-02 14:28:31 +00:00
Jason Van Malder 1e6b25672e [FIX] web: fix RTL pivot view dropdown
Reproduce the issue

    - Load Arabic language
    - Install Sales
    - Report > Sales
    - Switch to arabic
    - Click on the pivot view to display the dropdown

    The dropdown position is incorrect

Cause

    The calculations are based on a `left` value who is weird.

This commit use the mouse X position to compute the `left` value.

OPW-2146210

X-original-commit: d021f4257c87863b75f148c4809f5e2797a1e99f
2019-11-29 13:28:59 +00:00
svs-odoo 621a93b7b7 [MOV] *: _prepare_purchase_order_line
Move the method `_prepare_purchase_order_line` from 'stock.rule' to
'purchase.order.line'. The purpose is to reuse it in approvals_purchase.

task-2040710

closes odoo/odoo#41046

Related: odoo/enterprise#6702
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-12-02 14:18:39 +00:00
qdp-odoo 7037cf6ce8 [IMP] account: usability in account form view
closes odoo/odoo#41186

Related: odoo/enterprise#6989
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2019-12-02 13:16:51 +00:00
Nicolas Lempereur aff4b58c1f [FIX] website_sale: delete child category on parent
In the case of deletion with `ondelete="set null"`, return_path of
children of deleted record will not have return_path updated.

So remove the children recursively.

Another fix was done in 13.0 to avoid most issue in 6d5cd8b1d19.

opw-2148046
closes #41075

closes odoo/odoo#41178

X-original-commit: 6d5cd8b1d194fb173c486355c89d2ce503fd0ba4
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-12-02 14:29:21 +00:00
Simon Lejeune 22b9343c9a [FIX] stock: multiple orderpoint
- the oderpoint_id field on the purchase order line wasn't used to not
  merge the po lines
- if the orderpoint_id field is set, use the orderpoint location to
  create the move
- if multiple stock moves with different source locations go through
  `_merge_moves`, they should obviously NOT be merged
- `virtual_available` computed field was not being invalidated when the
  context keys "warehouse" and "location" changed

task-2001462

closes odoo/odoo#40573

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2019-12-02 12:33:38 +00:00
Odoo's Mergebot f341a48b7e [MERGE] mail: move website part of message and rating to mail / portal
PURPOSE

Clean posting process and improve mail.message definition and comprehension.
Move as much possible content from website_* modules to portal_* modules
to ease their use in customer portal without having to depend on website.

SPECIFICATIONS: MAIL.MESSAGE DESCRIPTION

Move description from website_mail directly to mail. Anyway it is a
non stored computed field and therefore having it available directly
in mail does not cost anything.

SPECIFICATIONS: MAIL.MESSAGE WEBSITE PUBLISHED

Website mail defines a website_published field allowing to publish / unpublish
comments on the frontend of some modules. This field has several drawbacks :

  * it is used only for front-end people (portal, public) and has no real
    effect in chatter / classic discussions;
  * it is used only in some advanced front-end module and is not available
    in portal by default;
  * its naming is not really correct as it is not linked to fields coming
    from the website_published mixin and its behavior is not really
    the same;
  * its use is a bit duplicated with internal flag coming from subtype
    allowing to hide messages related to an internal subtype;
  * there are overrides of standard mail.message methods just to handle
    this flag;

In this merge we change that field by an is_internal flag directly on
mail.message model itself.It tells if share people (customers, share users)
are allowed to read the message. This field can be given through posting
API or set manually using widgets. It is also used in access rights custom
methods and managed like the internal flag of subtypes.

Mailgateway was already using an internal flag for internal note replies. It
is renamed to is_internal and propagated as it is now a standard field. It
also eases code understanding.

Portal is updated to allow managing the flag directly. It means customer portal
now natively allows to moderate customer comments without any need of website
modules.

Rating is updated accordingly. An is_internal field is added, replacing the
related on website published.

Also rename subtype parameter of message_post to subtype_xmlid. In
order to be more explicit subtype parameter is renamed to subtype_xmlid.
It therefore clearly indicates it should be a valid subtype Xml ID. Support
of ill formatted Xml IDs is removed because there is no reason to try to
add some random prefix. Give something that exists or go to hell, punk !

Finally mail.message and rating.rating form views are updated to include
is_internal flag and perform some view cleaning. An entry of ratings in
Technical/Discuss is added for debugging / management purpose.

SPECIFICATIONS: MOVE WEBSITE RATING TO PORTAL RATING

Now that publish feature is replaced by internal directly in mail and portal
rating portal inclusion can be done safely in a portal_rating module instead
of website_rating. It allows to remove the dependency and give the rating
feature of customer chatter directly in portal applications.

LINKS

Task ID 2071556
PR #38692

Related: odoo/enterprise#6410
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 18:16:31 +01:00
Thibault Delavallée dc89f58467 [IMP] mail, rating, portal_rating: improve message and rating views
Purpose of this commit is to add some missing fields in message view, notably
is_internal newly added flag and its ratings. Rating form view is also
updated to display is_internal flag, and form view is a bit reorganized.

Task ID 2071556
PR #38692
2019-12-02 15:18:45 +00:00
Thibault Delavallée 7fae045d48 [MOV] website_rating: now move translations to portal_rating
PURPOSE

Clean posting process and improve mail.message definition and comprehension.
Move as much possible content from website_* modules to portal_* modules
to ease their use in customer portal

SPECIFICATIONS

Now that website_rating is now portal_rating, let us update translations
files accordingly.

LINKS

Task ID 2071556
PR #38692
2019-12-02 15:18:45 +00:00
Thibault Delavallée 9e0677882d [MOV] website_rating: move to portal_rating
PURPOSE

Clean posting process and improve mail.message definition and comprehension.
Move as much possible content from website_* modules to portal_* modules
to ease their use in customer portal

SPECIFICATIONS

Now that publish feature is replaced by internal directly in mail and portal
rating portal inclusion can be done safely in a portal_ratign module instead
of website_rating. It allows to remove the dependency and give the rating
feature of customer chatter directly in portal applications.

LINKS

Task ID 2071556
PR #38692
2019-12-02 15:18:45 +00:00
Thibault Delavallée 82f56ffddf [IMP] mail: simplify parent and parent internal computation in routing
PURPOSE

Clean posting process and improve mail.message definition and comprehension.

SPECIFICATIONS

In this commit we use the is_internal flag to correctly propagate it from
mail gateway and clean some parent check. In this commit some code is cleaned.
No functional change should occur with this commit.

LINKS

Task ID 2071556
PR #38692
2019-12-02 15:18:44 +00:00
Thibault Delavallée 5649fc88e8 [REF] {website_}mail: move and replace published field of mail.message to is_internal
PURPOSE

Clean posting process and improve mail.message definition and comprehension.

SPECIFICATIONS

Website mail defines a website_published field allowing to publish / unpublish
comments on the frontend of some modules. This field has several drawbacks :

  * it is used only for front-end people (portal, public) and has no real
    effect in chatter / classic discussions;
  * it is used only in some advanced front-end module and is not available
    in portal by default;
  * its naming is not really correct as it is not linked to fields coming
    from the website_published mixin and its behavior is not really
    the same;
  * its use is a bit duplicated with internal flag coming from subtype
    allowing to hide messages related to an internal subtype;
  * there are overrides of standard mail.message methods just to handle
    this flag;

In this commit we change that field by an is_internal flag directly on
mail.message model itself. It tells if share people (customers, share users)
are allowed to read the message. This field can be given through posting
API or set manually using widgets. It is also used in access rights custom
methods and managed like the internal flag of subtypes.

Mailgateway was already using an internal flag for internal note replies. It
is renamed to is_internal and propagated as it is now a standard field. It
also eases code understanding.

Portal is updated to allow managing the flag directly. It means customer portal
now natively allows to moderate customer comments without any need of website
modules.

Rating is updated accordingly. An is_internal field is added, replacing the
related on website published.

LINKS

Task ID 2071556
PR #38692
2019-12-02 15:18:44 +00:00
Thibault Delavallée 46b9a97b56 [MOV] {website_}mail: move description field of mail.message directly in mail
PURPOSE

Clean posting process and improve mail.message definition and comprehension.

SPECIFCIATIONS

Move description from website_mail directly to mail. Anyway it is a
non stored computed field and therefore having it available directly
in mail does not cost anything.

LINKS

Task ID 2071556
PR #38692
2019-12-02 15:18:44 +00:00
Thibault Delavallée e2b33f460d [REF] mail, various: rename subtype parameter of message_post to subtype_xmlid
PURPOSE

Clean posting process and improve mail.message definition and comprehension.

SPECIFICATIONS

In order to be more explicit subtype parameter is renamed to subtype_xmlid.
It therefore clearly indicates it should be a valid subtype Xml ID. Support
of ill formatted Xml IDs is removed because there is no reason to try to
add some random prefix. Give something that exists or go to hell, punk !

LINKS

Task ID 2071556
PR #38692
2019-12-02 15:18:44 +00:00
Thibault Delavallée 06f169a0ee [FIX] mail: give default void list instead of None when checking user groups for notification
Some override of ``_notify_classify_recipients`` may not check that groups
is None and expect a (maybe void) list.

Task ID 2071556
PR #38692
2019-12-02 15:18:44 +00:00
Julien Castiaux 98374bb0cd [FIX] website_slides: external tour used old code
Fine tunning of 07f70e3c1

closes odoo/odoo#41194

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 15:05:48 +00:00
Florimond Husquinet (fhu) 30cd679b81 [IMP] sms: allow to send SMS to oneself
Currently discuss post (through mail or sms) does not allow the author
to be notified of its content, as

  * he posted it and is therefore already updated;
  * it could create email loops;

However with SMS one could easily try to send SMS to himself using the
sms composer that is different from the mail composer. In that case
just use the ``mail_notify_author`` context key allowing to bypass the
"no author notification" rule.

Task ID 2091685
PR #40650

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 15:34:14 +00:00
Debauche Stéphane 88145eb645 [FIX] im_livechat: fix the ajax loading on external website
Bug
===
The file "public_root.js" try to load "/web/webclient/locale/en_US" with ajax.loadJS
we do not have the address to the Odoo server, so we try to load the file locally
but this file might not exist on the website which is using the widget

Fix
===
Overwrite ``ajax.loadJS`` and ignore ajax loading
(also printing a warning message in the JS console)

Task #2081146

closes odoo/odoo#41177

X-original-commit: 50f8508ca8569acc538a2af6a3c1162d39f834cd
Signed-off-by: std-odoo <std-odoo@users.noreply.github.com>
2019-11-04 15:02:50 +00:00
Hetal Dhanak 67951fe074 [FIX] mrp, purchase_requisition: prevent stage altering
Previously, when grouped by state, user was able to drag
and drop kanban boxes to alter the state of an unbuild, a
purchase requistion or work order. However the state should
be readlonly and could only be modify via public methods on
those objects. Those methods do additional required stuff than
just modifying the state.

task-2087309

closes odoo/odoo#40759

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2019-12-02 14:32:04 +00:00
lejeune quentin 270fa57d64 [FIX] point_of_sale: Rename posbox.img to iotbox.img
Renames the file created by the build,
from "posbox.img" to "iotbox.img"

closes odoo/odoo#41190

X-original-commit: 3abe39e785d28d1e0b1a18eb9b98c1d341e5a116
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2019-12-02 11:15:00 +00:00
lejeune quentin 5986481c69 [FIX] point_of_sale: Fix kpartx mapping
Kpartx did not erase the mapping correctly
Now we delete the mapping directly in "/dev/loopx"

X-original-commit: a33482ed703d162e79493b05a01e9724912b0385
2019-12-02 11:12:38 +00:00
lejeune quentin e943e80526 [FIX] point_of_sale: Fix locale variable for the IoT Box
We change the locale variable from en_GB to en_US.
But we need to re-generate variables.

X-original-commit: 0c5b5078872263a160fac56a1c326620c5e1d765
2019-11-29 16:09:20 +00:00
William Henrotin 53252ed7bc [FIX] mrp_workorder: suggest total quantity by lot
Use case:
Plan a production of 10 units on 2 workorders. Produce 4 units of lot1.
Record the production and produce the 6 next ones with the same lot1. On
the second workorder, the suggested quantity is 4 and not 10.

This issue is due to the fact that we fill the next workorder quantity
only at the first production batch and we don't check that the same lot
can be used again.

This commit call the mathod to update the quantity on the next workorder
if the first lot is produced again.

closes odoo/odoo#41189

Opw: 2127665
X-original-commit: e15fc6ac994edabc8907c13295c883cff9320d10
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2019-11-29 15:23:26 +00:00
Romeo Fragomeli 9cee8c36f9 [FIX] web: restore mobile responsive viewport in mobile test suite
After commit odoo/enterprise@8a38a60b1f
mobile tests didn't run correctly because of missing viewport META in HEAD.

This commit add the missing META. This META must be before all
JavaScript file to ensure that JavaScript also know that we work in
a viewport.

Note that "runbot" run tests in a chromium headless with a size screen
reduced and so it worked without this fix.

closes odoo/odoo#41183

Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2019-12-02 13:43:28 +00:00
mcm-odoo fea8d452b2 [FIX] im_livechat: allow manager to read all sessions
Managers could see only their sessions like other operators.
Now they can see all the sessions so they can check and help the operators.

task-2048498

closes odoo/odoo#41175

X-original-commit: 6ae791335a1986aa4cc72f7ed9aadd471c1774c5
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-11-22 14:27:10 +00:00
Yenthe666 3cf3c2dbd4 [FIX] account: remove duplicated field
The field user_id was created twice in the model with the same values and options, only a different help message. This removes the duplicated one.

closes odoo/odoo#40542

Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2019-11-20 08:35:26 +00:00
Xavier Morel 56e47c51ed [REV] core: logger configuration part of 6044782aef
Configuring the non-root logger based on --log-level had the
side-effect (unclear whether it was intended or not as none of the
relevant commits really documented the idea) that log-level could
override log handlers being set on the root logger e.g. if
`log_handler = :INFO` is set in the config file, `--log-level=warn` on
the CLI will override it.

This could be replicated by swapping `pseudo_config` and `logconfig`,
*however* it would also make the sub-loggers override
differently (currently on an exact logger match log-handler overrides
log-level).

The ideal fix would likely be to sequence log-level from the
configuration file, log-handler from the configuration file, log-level
from the CLI and log-handler from the CLI. However that doesn't really
work with the current structure.

closes odoo/odoo#41180

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-12-02 12:38:49 +00:00
Nicolas Martinelli f662855701 [FIX] stock: duplicated lines
When printing the 'Picking Operations' report in case of a receipt,
lines are duplicated.

This is because we need to print the `move_line_nosuggest_ids` as
displayed in the view.

opw-2125049

closes odoo/odoo#41168

X-original-commit: eed3171f2f057223c3fbedd95ce6bcde2124f46c
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-12-02 09:10:25 +00:00
ryv-odoo 47ff160b42 [REF] mail: improve and refactor mail template preview
PURPOSE

Improve mail template preview wizard by improve its views and displaying
more rendered fields. It helps users knowing what will be sent to customers.

SPECIFICATIONS

Rename template model to mail_template_preview to better match the mail
template namespace.

Remove _inherit on mail.template and instead choose fields to compute
and display. Indeed lot of fields are unnecessary or badly computed.
Instead just add fields on the wizard that depends on mail template
and will be computed based on mail_template_id field of wizard.

Improve error management.

LINKS

Task 2085912
PR #38708

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 10:51:02 +00:00
ryv-odoo 2b4e172c6f [IMP] mail: improve displayed error when template rendering crashes
Currently when rendering a template crashes, error is not easy to
understand as it is hidden in a generic message. Purpose of this commit is to
improve this message to indicate why the template fails to build (only the
first error encountered).

Task 2085912
PR #38708
2019-12-02 10:22:12 +00:00
Debauche Stéphane a23fe117bf [IMP] im_livechat: improve and add demo data
Purpose of this commit is to improve livechat demo mode by adding conversations
spanning on several months and with ratings and different operators. That way
we have beautiful data to show in demo mode.

Task ID 2075287
PR #37355

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 10:59:55 +00:00
Florimond Husquinet (fhu) 0a46e086c0 [IMP] website_slide: improve the ways to search through courses
PURPOSE

Purpose of this commit is to improve search capabilities of eLearning
frontend application. Searching tags and content should be easier to
do, update and notice.

SPECIFICATIONS

Before this commit
- There is no visual indication to what are the selected filters.
- The user can only select one tag in each dropdown box.
- When the user selects a tag on one course card, this tag replaces all other
filters.
- When the user enters custom search terms, it replaces all other filters.
- When searching a documentation, a stacktrace appears.

After this commit
- Selected tags appear as little tag boxes under the search bar.
- The custom search terms appear as one tag box.
- It's possible to remove a search tag by clicking on the cross present in each
little box.
- It's possible to select multiple tags in each dropdown box.
- Tags in course cards work the same as tags in dropdown boxes, and add
themselves to the list of filters.
- To generate the list of courses to display, a logical OR is operated between
tags of the same group, and a logical AND is operated between groups of tags.
- A logical AND is operated between the custom search terms and other filters.
- A logical AND is operated between the "My courses" options and other filters.
- Bug when searching a documentation is fixed.

LINKS

Task ID: 2080617
PR #39259

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 10:18:36 +00:00
Nans Lefebvre 5ea09c2ed8 [FIX] base: translate error messages at failed import
Forward-port of ffee5bdbd12b0080349da515d01981943355d0cd;
because of 1a315e87b05fcbdefcb3db6d8d4837f6cc3e835c by the same author,
only the following are left:
- we need to translate the untranslated message
- give the temporary cursor a name different from cursor or cr
  so that _'s _get_cr method does not get the closed cursor

closes odoo/odoo#41140

X-original-commit: 926873031d479ec96ca122fe8c3a481b31f2a32b
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-11-29 13:21:18 +00:00
Romeo Fragomeli ecc028c0e8 [IMP] mail: use _notify_get_action_link and not inline string
Note that this also add data-oe-model and data-oe-id in XML.
This allow us to avoid to load these links as external URL when
a user receive it in inbox instead of external mail client.
See file addons/mail/static/src/js/thread_widget.js -> _onClickRedirect

Task ID: 1895451

closes odoo/odoo#39958

Related: odoo/enterprise#6414
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2019-12-02 09:10:34 +00:00
qmo-odoo a82fd08813 [FIX] website_slides: Fix traceback when creating content in mobile
This commit fixes the traceback that happens when we try to create
a question from the survey form in mobile mode.

The problem was due to the context not being propagated
to the "add record" button that appears in mobile mode.
Therefore, as we use that context in our widget, it crashes.

The solution to this is to just use the normal tree view behavior
instead of our override when we are in a mobile environment.

LINKS

closes odoo/odoo#41143

Taskid: 2071342
Pr: #40694
X-original-commit: 0dc7d956c59dfbece1f05e475c227affd51ce435
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-11-29 16:00:05 +00:00
qmo-odoo 74854ebf2c [FIX] survey: Fix traceback when creating a question in mobile
This commit fixes the traceback that happens when we try to create
a question from the survey form in mobile mode.

The problem was due to the context not being propagated
to the "add record" button that appears in mobile mode.
Therefore, as we use that context in our widget, it crashes.

The solution to this is to just use the normal tree view behaviour
instead of our override when we are in a mobile environment.

LINKS

Taskid: 2071342
Pr: #40694
X-original-commit: b394a67ccd527b4ff88f0b59083fd3b59cf97681
2019-11-29 15:59:26 +00:00
Xavier Morel ba7afeb5bc [REM] sale_timesheet: dynamic domains
closes odoo/odoo#40947

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-12-02 08:46:03 +00:00
Odoo's Mergebot 73e3ad9159 [MERGE] mail: clean mail.mail creation flows and make this model more private
From now on mail.mail is considered as a technical model. Indeed people should
not really manually craft mails by hand. Instead various functional flows
should either send mails, either craft mails based on some user input.

We therefore make mail restricted to admin users. Flows creating mail.mail
are updated to use sudo, and ensure it was done in a context that makes
sense to delegate this power to the user.

Some cleaning is performed prior to that change of ACLs, done in separate
commits. This cleaning includes

  * ease the use of mail.thread tool method _message_compute_author by
    cleaning its api (return tuple instead of dict);
  * give a way to access to company email and catchall with formatting.
    Those will be used in various automated emails. Indeed currently several
    templates use either ``company_id.partner_id.email``, ``company_id.email``
    or even don't provide fallback values;
  * improve mail creation calls, notably author and email from default
    computation. Purpose is to correctly compute author_id and email_from
    in mail_message and mail_mail as they depends from each other. Moreover
    it is a good idea in various flows to specify email and author when giving
    creation values to avoid default computation that is not always guaranteed
    to be accurate notably when involving super user;
  * improve author / email_from synchronization in default values in mail
    composer;
  * clean some calls to mail.template send_mail();

Task ID 1853147
PR #32243

Related: odoo/enterprise#4001
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-12-02 11:12:56 +01:00
Romain Derie 9b3de32478 [FIX] http_routing, website: fix frontend lang in http dispatcher
This commit fixes 2 issues, both coming from a misbehavior in
`get_nearest_lang()`:
1. Anyone could reach the website in a lang available in backend but not in
   frontend. Eg, french is activated but not a website lang, going to `/fr`
   would show the page in french.
2. As a logged in user coming from backend in a lang not available in frontend
   (has request.lang set to that lang), the website would show a 500 error page
   since it would not filter out the current request lang.

Both these issues are fixed here by ensuring langs are filtered out if they do
not belong to the frontend (website langs).

Step to reproduce (bug 1):
  - Install french in backend lang (not on website)
  - Visit `127.0.0.X/fr_FR`, the frontend will be displayed in french even if
    it not a lang available in frontend.

Step to reproduce (bug 2):
  - Install french on frontend and remove english from frontend
  - Navigate to the backend /web
  - Navigate to frontend, it will crash

Fixes #40572 and fixes #40078

closes odoo/odoo#41146

X-original-commit: 4bfba037fbbf34c178abd532f7bf52b94ae40b27
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-12-02 08:31:26 +00:00
Thibault Delavallée 69ccabb212 [FIX] mail: restrict access to mail.mail model
From now on mail.mail is considered as a technical model. Indeed people should
not really manually craft mails by hand. Instead various functional flows
should either send mails, either craft mails based on some user input.

We therefore make mail restricted to admin users. Flows creating mail.mail
are updated to use sudo, and ensure it was done in a context that makes
sense to delegate this power to the user.

Task ID 1853147
PR #32243
2019-11-29 13:35:14 +00:00