Commit Graph
117156 Commits
Author SHA1 Message Date
Goffin Simon 1031a699b7 [FIX] rating_project: Unescaped signature
Typo error

Steps to reproduce:

1. Go to a project and activate customer satisfaction on tasks
2. Activate the developer mode and go to Settings > Technical > Templates
3. Find the "Task: Rating Request" template
4. Click on Preview

Bug: Signature is in HTML code

opw:725722
2017-03-23 13:17:45 +01:00
Thibault Delavallée 30026d32a5 [MERGE] mail: improve alias security and alias check on channel model
This commit links the alias security and the channel configuration.
Indeed private or group-based channels should always have a restricted
alias. Moreover this alias should check channel members instead of
channel followers, as a channel has members and should not have followers.

This implies a small refactoring of the alias check in the mailgateway.
Code is extracted and moved on alias.mixin class, allowing to tune the
behavior through inheritance.
2017-03-23 13:12:05 +01:00
Thibault Delavallée 66bd7707f5 [IMP] mail: protect by default alias of private or group based channels
Otherwise by default their alias are public. This makes no sense for
private groups to have by default public aliases.

Field is set as invisible on the view because it makes sense to configure
only the channel and not details of its alias. Anyway it is always
possible to tweak the alias configuration under Technical menu.
2017-03-23 13:11:34 +01:00
Thibault Delavallée e5e549a4cf [IMP] mail: make channels check their members instead of followers for alias
This commit makes channel use 'followers' based alias security use members
instead. Indeed channels do not use followers anymore. Instead channels
have members, and alias security of followers should use members instead.
2017-03-23 13:11:34 +01:00
Thibault Delavallée 78ac6de52d [IMP] mail: factorize code that handles alias security in mail gateway
Currently check of alias security is directly embedded in mail.thread
routing method. In this commit we move this check in the mail.alias.mixin
class itself. Doing this allows models to extend or improve the behavior
depending on how inheriting models use aliases.
2017-03-23 13:11:34 +01:00
Thibault Delavallée 634821c688 [IMP] mail: correctly use alias mixin on channel model
Currently channel model manually defines alias and inherits instead of
using the alias.mixin. This commit proposes to use alias feature through
the mixin to have a standard behavior.
2017-03-23 13:11:34 +01:00
Thibault Delavallée 155e81d5e7 [IMP] mail: ease members management on channels
Using a m2m to partners does not allow a real management of members
because it allows to create partners, and require access rights on
partner model. Instead it now uses the o2m to channel members
allowing creation, update and removal of members without having
to work on partner records.
2017-03-23 13:11:33 +01:00
fka-odoo 7875cd8bb5 [IMP] event: prompt warning when canceling an event
Also improve message of raised error.
2017-03-23 12:24:18 +01:00
Thibault Delavallée 9442d69edb [MERGE] mail, project*, sales*: improve activity types use and definition 2017-03-23 11:45:07 +01:00
Nicolas Martinelli 0e7ced70c1 [FIX] mail: reply message type
- On a model, log a note and ping User A
- Go in the inbox of User A, and reply to the message

The reply is a comment (therefore sent to all followers of the
document), not a note.

opw-710326
2017-03-23 11:14:42 +01:00
Mahendra Barad 83e8ae43b0 [IMP] sales_*: add menu to configure sales-related activity types
Activity types are currently hard to find and define. In this commit we
add a menu under sales configuration to access generic or sales
related activity types (contact, lead, product, sale order).

This commit is an improvement considered as an usability fix, therefore
targeting stable version.
2017-03-23 10:40:54 +01:00
Mahendra Barad 0f17d3a348 [IMP] project: add menu to configure project-related activity types
Activity types are currently hard to find and define. In this commit we
add a menu under project configuration to access generic or project
related activity types (task, issue).

This commit is an improvement considered as an usability fix, therefore
targeting stable version.
2017-03-23 10:32:56 +01:00
Jérome Maes 28c5a232c3 [MERGE] portal_*: remove portal module
This commit remove the portal module.
- depending module (portal_stock, portal_gamification) are
removed. Their features are now managed by their parent
module (mainly access rights)
- portal group and user are moevd to base
- wizard to convert partner into portal user is moved into
website_portal, which is the user portal module now.

The webclient is now forbidden for portal user since there is nothing
to expose for such user.

Some cleaning has been done in survey and rating_project.
2017-03-23 10:30:11 +01:00
David Tran bfb2771d63 [FIX] mrp: mrp.message security
The security policy did not allow mrp manager to create mrp alert
message

Closes #14675
2017-03-23 10:27:06 +01:00
Mahendra barad 78e0c08b03 [IMP] mail: add activity types configuration that is missing to use activities efficiently
Currently tweaking or defining new activity types is difficult to achieve
as menu is hidden under technical settings. This commit eases the activity
types configuration by adding a menu allowing to customize them directly
under Emails section of General Settings. By the way it is renamed to
Discuss to better reflect its purpose.

This is an improvement but considered as an usability fix, therefore
targeting a stable version.
2017-03-23 10:25:56 +01:00
Mahendra barad 6987c5adf0 [IMP] mail: set model field of activity types in technical features
Using activity types cross applications and having some specific to
a given app is considered as an advanced way of defining them.
2017-03-23 10:25:53 +01:00
David Arnold 14368a0e72 [FIX] stock: stock user shall scrap
Before this, the stock user had readonly ACL on the scraping action. He
therefore could not scrap products during his normal operations. It is assumed,
that this was not an intended default, as not being otherwise documented.

Closes #15955
2017-03-23 10:22:28 +01:00
Jérome Maes 48f5c81755 [IMP] base,website_portal: webclient forbidden for portal user
About a `sudo` on ir.ui.menu, this commit (3649b7f359) removed it,
this commit (3d0cc2d6d2) re-added it.
Since portal user can not go on /web anymore, I think portal does not need to read ir.ui.menu.

Here some news scenario:
- if website is not installed, portal can log in, but will be redirected to login page
with an error message 'only employee can access'. Indeed, there is no page to display for
such user.
- if website is installed, but not website_portal, portal user can log in and will be
redirected to homepage. If he tries to manually access to /web, he will be redirect to
login page with access error (even if he will still be logged).
- if website_portal is installed, the portal user can fully enjoy its features.
2017-03-23 10:16:28 +01:00
Jérome Maes da6d8a5717 [IMP] survey: dead code using group_anonymous 2017-03-23 10:00:51 +01:00
Jérome Maes 3e3105151b [REM] portal: kill the module
All portal features were moved into base
and website_portal, portal module is obsolete.
This commit remove its code, and modify the modules
dependencies accordingly. website_portal now depends
on auth_signup.
2017-03-23 10:00:51 +01:00
Jérome Maes 1f3da58cfe [MOV] base,portal: make portal module empty
The goal is to prepare the removal of
'portal' module.

- demo portal user is moved into base
- 'is_portal' field on res.group too
- remaining security rule are moved to base too
- mail template is moved to website_portal
2017-03-23 09:59:58 +01:00
Jérome Maes 2b4eeb908f [MOV] portal,website_portal: move wizard and tests into website_portal
The goal is to prepare the removal of
'portal' module.

Converting a partner into a portal user,
though the wizard is moved in website_portal.

'base' will manage portal user and group, but if
website_portal is not installed, there is nothing
to display for portal user.
2017-03-23 09:59:58 +01:00
Jérome Maes 9f006b5cce [REM] portal_stock: kill the module
The goal is to prepare the removal of
'portal' module.

Since this module only provides access rules and
rights, those ones are moved directly into its
parent module (aka 'stock').
Since no module depends on it, we can remove it
without problem.
2017-03-23 09:59:58 +01:00
Jérome Maes b91b66c686 [REM] portal_gamification: kill the module
The goal is to prepare the removal of
'portal' module.

Since this module only provides access rules and
rights, those ones are moved directly into its
parent module (aka gamification).
Since no module depends on it, we can remove it
without problem.
2017-03-23 09:59:58 +01:00
Jérome Maes 330fe871bc [IMP] rating_project: change demo data
Since we want to remove portal module, this
xmlid will not make sense anymore.
2017-03-23 09:59:57 +01:00
Goffin Simon 0b529cf3af [FIX] http: setup_lang in Safari
Fine tuning of this commit: 5761b9a388

opw:716519
2017-03-22 17:03:23 +01:00
Mansi Gandhi b91315af97 [IMP] mrp_repair: send quotation and mail template
When you send a quotation, you have a mail template mentionning the
quotation and its price if there is an invoice method, with the quotaion
in attachment.
2017-03-22 16:56:04 +01:00
Mansi Gandhi 140c0e2203 [REF] mrp_repair: typo 2017-03-22 16:56:04 +01:00
Mansi Gandhi 5985860255 [IMP] mrp_repair: invoice method and reports
When you select an invoice method different than 'No Invoice', all the
parts lines except the 'Remove' ones and the fee lines will be invoiced.

When you print a quotation, the price of parts and fees is shown
only if you have an invoice method (you only have the quantity if you
don't invoice)

The invoice is available through a stat button.

The price of removed parts is set to 0.0 by default as it won't be
invoiced.
2017-03-22 16:56:04 +01:00
Nicolas Martinelli 67706d8410 [FIX] account: # of digits
The field "# of Digits" is not accessible as soon as a chart of account
has been chosen. This should not be the case since the method
`reflect_code_digits_change` handles it.

opw-724619
2017-03-22 15:29:09 +01:00
Martin Trigaux 21fd506955 [I18N] crm: correct bad %s translation
Not forward ported
2017-03-22 15:20:55 +01:00
Richard Mathot 49269fad84 [FIX] website_portal: wording 2017-03-22 13:23:26 +01:00
qsm-odoo 1505fee0e3 [FIX] web_editor: properly transcode fa alias icons
When adding a font-awesome icon to a mail template, the icon is
converted to an image once the template is saved. To do that, the
code checks all the `.fa-XXX` definitions in the stylesheets to know
which content the image have to use. The problem is that this was
not considering the font-awesome aliases. Indeed, the `fa-facebook-f`
icon was able to be used while its alias `fa-facebook` was not working.
2017-03-22 13:12:33 +01:00
Simon Lejeune fcbfe47695 [FIX] base: lighten default values validation in ir.values
Rev acd8c4de18 prevents the creation of default values for fields that
are not defined. This is too restrictive because of the following
points:
    - one may want to create default values for fields that are yet to be
      defined
    - "fake" default fields used in res.config that do not point to real
      fields

The initial scenario this revision was trying to fix is the creation of
wrong default values through studio. This scenario is still fixed, as it
concerns the last `except` branch.

The tests have been updated to reflect these changes.
2017-03-22 12:48:56 +01:00
Odoo Translation Bot 915e07bcac [I18N] Update translation terms from Transifex 2017-03-22 11:30:05 +01:00
David Arnold 9dce68ac26 [IMP] actions: context in tree view
Most of the time, context of an window action is more relevant than the domain,
so show it by default in the tree view.

Closes #15978
2017-03-22 11:05:15 +01:00
Nicolas Martinelli c6a7e4fbb9 [FIX] purchase: billed qty
In a SO, the "Invoiced Qty" can decrease if the refund is generated from
the SO. It doesn't decrease if the refund is generated from the Invoice.
However, we don't have this mechanism in a PO since the invoice is not
generated directly from the PO. There is therefore no way to decrease
the "Billed Qty".

We authorize the "Billed Qty" to decrease in the case of PO.

Complement of commit 9b5281adb4

opw-724474
2017-03-22 10:43:04 +01:00
Laurent Smet 2c08370045 [FIX] account: fix missing default type through context 2017-03-22 10:41:48 +01:00
Laurent Smet 5d2ba54be5 [TYPO] account: rename "refund" to "credit note"
see opw: 32014
2017-03-22 10:20:23 +01:00
Laurent Smet a91e9f43ac [FIX] account: raise warning when inv amount falls bellow 0
A warning was raised when an invoice line had a negative amount that may cause some
trouble when dealing with discount (negative amount). Now, the warning is raised
when the amount total of the invoice falls bellow 0.
2017-03-22 10:12:59 +01:00
Nicolas Martinelli ffaa65833d [FIX] website_forum: missing translations
The attribute `data-content` is not part of the translated attributes.

The fix is similar to e8f1c5dbc6

opw-710314
2017-03-22 10:00:38 +01:00
Thibault Delavallée ff0053b416 [FIX] crm: fix behavior of 'Emails' checkbox in settings
Currently there are several issues with this configuration box

 * default_<field> does not generate automatically ir.values anymore.
   Defining default_model does not work since it is not linked to an
   existing <field> in current model sale.config.settings. Checkbox
   value is therefore not saved and lost at reload;
 * box label is not clear as user may understand unchecking it drops
   all aliases or email support. This is not the case as it is only used
   to define an alias creating unassigned leads. This is a rare use case
   where leads assignation is done manually;
 * checking / unchecking the 'Emails' box does not have any effect on
   default info alias. This is counter-intuitive as user asks to remove
   the feature but it still works in background;

This commit fixes those issues by

 * correctly setting the checkbox value in an ir.config_parameter so that
   it is not lost anymore at reload;
 * inactivating info alias by default;
 * adding onchanges so that values are reset when unchecking checkboxes;
 * updating string and displayed label and helps for the 'Emails' section;
 * putting that Emails checkbox in advanced mode as it is a rare use case;
2017-03-21 17:20:50 +01:00
Goffin Simon 5761b9a388 [FIX] http: setup_lang in Safari
When not logged in the webstie on Safari and clicking on "Have a Question? Chat with us",
it creates a mail.channel from get_mail_channel and it also creates a translation.
But with Safari, the accept_languages is set with the value 'fr-fr', and this value was set
in the context as the lang='fr_fr'. So when the translation was created, a bad insert query was
raised in sql because the lang didn't exist in the res.lang table. When a translation is created,
the function _get_languages checked that the language is in the table.
So it was impossible to use the chatter when the user is not logged.

NB: interseting functions to see:

-setup_lang in odoo/http.py
-_dispatch in addons/website/models/ir_http.py
-get_mail_channel in addons/im_livechat/models/im_livechat_channel.py

opw:716519
2017-03-21 17:02:59 +01:00
Martin Trigaux f1d004b996 [FIX] mail: disable prefetching on send mail
Minimal backport of 00bd7274
Processing large mails may reach the memory limit and crash the mail queue.

Such scenario was found at opw-724697
2017-03-21 16:48:31 +01:00
Goffin Simon b957fa76b7 [FIX] mrp: Wrong domain filter for mrp.production
When clicking on smart button "Manufacturing" for a variant, the action
"act_product_mrp_production" was called to apply the default filter on
product_id = active_id to select the right mrp.production. But the field
product_id was also called "Raw material" and a wrong domain was applied
each the action was triggered from a variant.

opw:725050
2017-03-21 16:44:08 +01:00
Denis Vermylen b512c65181 [FIX] website_crm_partner_assign: implemented_count
Fix onchange dependencies for implemented_count field of res.partner.
Use that field in the template and use t-esc instead of t-raw.
2017-03-21 16:43:36 +01:00
Raphael Collet c9edb9dccb [FIX] registry: use a weak dictionary for model_cache to avoid memory leaks
The class attribute `model_cache` refers to model classes, which refer to their
own registry.  This cache potentially keeps all past registries alive!
2017-03-21 15:50:20 +01:00
Nicolas Martinelli 0ecc9c3034 [FIX] hr_expense: partner on AML
It will cause issues later on. A workaround has to be found.

This reverts commit d69aa2d98b.
2017-03-21 15:28:00 +01:00
Goffin Simon d84b5c4c49 [FIX] base: unlinking ir.model.constraint
When unlinking an ir.model, all the ir.model.constraint linked to this
ir.model must be removed to avoid to call unexisting model.

The ir.model.constraint records, are created with module = the module where the related field
has been declared. But when unlinking the ir.model in function _module_data_uninstall, the related
ir.model.constraint to remove were chosen according to the removed modules. So with models
declaring constraints on inherited fields, some problems occured because the model could be removed
and not all the related constraints.

opw:716032
2017-03-21 15:24:33 +01:00
Nicolas Martinelli 8ec819418b [FIX] hr_expense: tax on expense
- Create an expense with a tax
- Validate and post entries

3 AML are created, one on the expense account, one on the account
payable, one for the tax. However, the AML of the expense account is not
linked to the tax, and therefore does not appear in the reports.

opw-715488
2017-03-21 13:40:02 +01:00