Commit Graph
121235 Commits
Author SHA1 Message Date
Thibault Delavallée 2b73bed880 [FIX] mail: correctly extract email from email field in computed blacklist fields
Purpose of this commit is to correctly extract email address from the email
field of models inheriting from the blacklist mixin. Indeed email field
could contain a formatted address like "Raoul Grosbedon <RAOUL@example.com>".
Related blacklist entry would be raoul@example.com. We have to extract
the email from the email field and lowerize it in the SQL query or the
computation in order to have a fully working blacklist mixin. This fixes
some bits left at commit 2ff9b379ef.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:52:30 +02:00
Thibault Delavallée bbe4690066 [FIX] mail: assert email field used in blacklist and correctly use it in computed fields
This commits fixes the use of email field in blacklist mixin as it was based
on 'email' field instead of the one coming from the _primary_email class
attribute since commit 2ff9b379ef.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:52:19 +02:00
Thibault Delavallée 5743122f60 [FIX] mail: ensure case insensitive check when (de)activating blacklist records
Now that blacklist records are set as lower case be sure all checks in
blacklist are done accordingly by using the sanitizer before comparing
email adresses.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:52:18 +02:00
Thibault Delavallée 7b0c502d60 [FIX] mail: ensure creation of unique emails in blacklist
Currently blacklist is configured to have unique emails. Notably when creating
new entries it checks for existing records with same email to avoid crashing
about duplicate entries.

However it does not check if given values use unique emails. When importing
a big list of emails you are not sure emails are unique. This commit ensures
values given to create are correct to avoid crashing when importing a lot
of data.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:52:18 +02:00
Thibault Delavallée 2f82b95dca [FIX] mail: insert only sanitized and lower-case emails in blacklist
Purpose of this commit is to standardize content of blacklist records and
ensure only real email addresses are stored.

We introduce a sanitize method to extract email address from string (like
Raoul Grosbedon <raoul@example.com> -> raoul@example.com) and return a
lower case version of it.

Purpose is to gradually get rid of lower() that appear a lot in the code
and speedup computation by being sure everything is always lower case.
Moreover indexing on blacklist model will be more performant is using
directly email field content instead of having to lowerize it.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:52:18 +02:00
Thibault Delavallée 0c37eb272f [IMP] test_mass_mailing: add blacklist mixin tests
Purpose of this commit is to add some tests linked to the blacklist mixin
itself, notably the computed fields and its search method.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:52:18 +02:00
Thibault Delavallée 3922832967 [IMP] test_mass_mailing: add blacklist tests
Purpose of this commit is to enforce blacklist use and base mechanisms. This
commit may break on runbot as fixes will come after having introduced tests.
It notably add tests for a8ce59ce36.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:33:16 +02:00
Thibault Delavallée fca1654dc5 [ADD] test_mass_mailing: add module to hold feature and performance tests for mass mailing
Purpose of this commit is to add the skeleton of a module holding models and
tests for mass mailing. It is build on top of test_mail in order to use
data, models and parameters already defined in it. Moreover having a
separate module allow to define test models that will not bloat production
databases.

It will soon hold unit tests for blacklist mechanism. Future commits will
gradually move tests from mass mailing module and improve them.

This commit is related to task ID 33224 (original blacklist implementation
done for v12) and its PR #25966 as well as task ID 1889703 (tests and fixes)
and its PR #27330. Done with collaboration of @dbeguin.
2018-10-02 16:32:53 +02:00
Romain Derie 4b3884b0d7 [FIX] website: add website in attachment list view if multi-websites
The list view of ir.attachment was missing the website field if multi-websites
was enabled.
2018-10-02 16:18:48 +02:00
Christophe Simonis a566c38dcb [FIX] sale: confirm orders one by one 2018-10-02 16:14:48 +02:00
Thibault Delavallée d5131fe976 [REF] test_mail: reorganize activity tests
Purpose is to separate tests related to access rights (low level), base
activity features and mixin itself. It eases understanding of tests and
prepare future addition of tests.

This commit is linked to task ID 1856417.
2018-10-02 16:05:17 +02:00
Thibault Delavallée db70862ccd [IMP] mass_mailing_{crm/sale}: always show UTM info if not void
It is not necessary to limitate UTM-based statistics based on the mailing model.
Indeed a mailing on contacts could for example generate leads and sales that
people could want to see the mailing view.

Commit linked to task ID 1889754.
2018-10-02 16:03:26 +02:00
qsm-odoo f427ddcb36 [FIX] web: remove portal/website dependency from reports
See the comments which are removed by this commit for details. We
finally chose to remove the whole interaction for now.
2018-10-02 15:19:53 +02:00
qsm-odoo 43655b3b39 [FIX] web: restore dashboard text-right design
We should style review the kanban (dashboard) design / grid system / ...
2018-10-02 15:17:09 +02:00
qsm-odoo 3b2ab5a499 [FIX] web: review disabled checkbox design
Thanks to @kea14
2018-10-02 15:17:09 +02:00
qsm-odoo d9a589ad7a [FIX] base, website: review https://github.com/odoo/odoo/commit/89678c60412feea004cd3081200092365e6ef3b4
Share the common code in the ir.attachment model and add a sort order
and a limit to attachment serving.
2018-10-02 15:17:09 +02:00
Aaron Bohy ce1c2cf669 [FIX] doc: correct typo 2018-10-02 14:48:19 +02:00
Bohdan Lisnenko d5e1353ec1 [FIX] hw_escpos: Printing Cyrillic symbols
Tested on real printer for Cyrillic symbols.

port of https://github.com/odoo/odoo/pull/19757 to saas-11.5 for IoT Box
2018-10-02 14:27:11 +02:00
XavierDo 82da171fcb [FIX] mail: add translation on guidelines subject 2018-10-02 13:40:12 +02:00
Martin Trigaux d77000aef3 [I18N] export saas-11.5 source terms
Reflect module moved to enterprise and remove fields after c9837ac5d
2018-10-02 13:15:40 +02:00
Adrien Dieudonne b2cadc9238 [FIX] web: avoid no content helper for pie chart in comparison mode
In comparison mode with no data, we render two empty pie charts even
if it's not an embedded view.
The non content helper is still used when there is no comparison.
2018-10-02 13:10:34 +02:00
XavierDo 775e8a9f2d [FIX] mail: make guideline template a qweb view
The mail template mail_template_channel_send_guidelines should only be used
from send_guidelines action. Anyway, with mail_template on activity
and all demo done to show this mechanic on contacts,
trying to render this one will generate a traceback. This fix
transforms the mail_template to qweb view so that it won't be available in
mail template.
2018-10-02 13:07:02 +02:00
Mathieu Duckerts-Antoine 64d7da4198 [FIX] web: fix update problems in graph view
The graph view was not updated correctly with respect to
time range menu data. We fix that problem in this commit.
2018-10-02 13:04:34 +02:00
Laurent Smet 16469ec95b [IMP] account: sort st lines using search instead of sorted
browse doesn't sort using the table _order so we need to sort the lines after that.
This commit improves such sorting by searching insteaf of browsing: it's more elegant.
2018-10-02 13:02:35 +02:00
Nicolas Martinelli cdf201a1dc [FIX] stock: decrease initial demand quantity
- Open a picking (example WH/IN/00002)
- Unlock
- Edit Initial Demand (from 35 to 4 for example)
- Click on Save

An error occurs: 'Record does not exist or has been deleted.'

When saving, the following values are sent to the server (example):
`{'move_ids_without_package': [
     [1, 31, {'product_uom_qty': 4, 'date_expected': '2018-10-02 08:27:14'}]
 ],
 'move_line_ids_without_package': [
     [1, 26, {'package_id': False, 'result_package_id': False, 'owner_id': False, 'lot_id': False}]
 ]}`

The field `move_ids_without_package` contains the new quantity. However,
decreasing the quantity will remove the reservation and therefore unlink
the move lines.

https://github.com/odoo/odoo/blob/718b0f8b63261e1312b5626d48de050b21a9dccf/addons/stock/models/stock_move_line.py#L349

This means that the field `move_line_ids_without_package` refers to IDs
which have been deleted when writing on `move_ids_without_package`.

We can make the field read-only if it is not displayed.

opw-1889802
2018-10-02 12:55:36 +02:00
Yannick Tivisse 532d82a7a9 [IMP] mail: Make mail.compose.message code more readable
Purpose
=======

Remove the method 'render_template' in mail.compose.message as the indirection
is not useful. Call the method on the correct model (mail.template) directly.
2018-10-02 12:35:34 +02:00
Yannick Tivisse b2b9545cf3 [IMP] ir_ui_view: Log warning on incorrect 'groups' attribute
Purpose
=======

They are a lot of places where we set an attribute 'groups' on a view element and:

- The group doesn't exist anymore
- The group xmlid is not correct
- The group xmlid exists but the modularity is not respected (example: group_stock_user
  used in a view in the 'product' module).

Where it happens, nothing warns the user or the developer. The element is just never
rendered.

Specification
=============

In the method _check_xml, log a warning if a 'groups' attribute is set and if
a group doesn't not exist at that moment.
2018-10-02 12:35:34 +02:00
Yannick Tivisse eaba05b9ae [FIX] sale,stock,account,...: Use groups in views only if they exist
Purpose
=======

They are a lot of places where we set an attribute 'groups' on a view element and:
- The group doesn't exist anymore
- The group xmlid is not correct
- The group xmlid exists but the modularity is not respected (example: group_stock_user
  used in a view in the 'product' module).

Where it happends, nothing warns the user of the developer. The element is just never
rendered.

Specification
=============

Fix the occurences of bad groups definition
2018-10-02 12:35:34 +02:00
Aurélien Warnon 497e134664 [FIX] (website_)sale: show missing attributes combination message
Targets commit d3530eb07e

Purpose
=======
- A message showing "This combination does not exist" should appear on both webshop and backend
  when the selected product combination is not available (due to exclusions)
2018-10-02 11:59:35 +02:00
Martin Trigaux c9837ac5dc [FIX] base: compare on original module
Introduced at 574f4c3d
model._module has for value of the last module extending the model.
This means that, when a module B inherit from a model defined in a module A (e.g
to add a field on the model), an external id, tagged with module B, will be
created for each field of the model, including the one defined only in A.

The intention of the patch at 574f4c3d was to include the automatic fields (i.e.
LOG_ACCESS_COLUMNS) into the condition.
Without that condition, the fields such as create_date were deleted when
upgrading a module (not defined in any module)
2018-10-02 11:51:15 +02:00
Martin Trigaux 718b0f8b63 [FIX] models: display first external id onyl
In case the result matches two records (e.g. a model has one external id per
module inheriting it), the last was used.

Use the first only.

Fixes #27363
2018-10-02 11:20:01 +02:00
Christophe Simonis dece365d52 [FIX] mail: avoid reading from abstract models 2018-10-02 11:12:15 +02:00
Laurent Smet adc08d02bb [FIX] account: fix 'go to bank statements' in rainbowman
When all statement lines are reconcilied automatically, the rainbowman
is displayed directly but the 'Go To Bank statements' button is not visible.
2018-10-02 10:27:53 +02:00
Laurent Smet b39c778bfb [FIX] account: fix empty label on write-off lines
In a reconciliation model having some write-off lines configurated but no
label set, the line must keep the statement line name.
2018-10-02 10:27:53 +02:00
Aurélien Warnon 783e884ddc [IMP] product,(website_)sale: Fix parent exclusions - product configurator
Targets commit d3530eb07e

Purpose
=======
- Exclusions for optional/accessory products do not work for attributes configured as "never create variants".
  These attributes are now added to the reference_product context so that they can be taken into account when
  evaluating exclusions.
2018-10-02 10:17:59 +02:00
Aaron Bohy b7d11d6891 [FIX] doc: correct two typos 2018-10-02 09:50:18 +02:00
Yenthe V.G eace8edec0 [FIX] website_forum: correct typo in badge name 2018-10-02 09:24:21 +02:00
Olivier Colson 0ef7e7411f [FIX] account: allow creating a new line on an invoice without crashing if not pricelist is defined
This bug had been introduced in https://github.com/odoo/odoo/commit/154fc7d9dd550d35b7266af024e54c20e18938fc .
2018-10-02 09:02:46 +02:00
Gert Pellin bb015818ea [imp] hw_scale: Disable Adam if not used
Adam scales give a beep if it has no changed value to send. This commit
disable the beeping outside the weight screen
2018-10-02 08:38:21 +02:00
Olivier Dony 7fda09549c [ADD] payment_ogone: log s2s ALIAS creation
This is an important event, including for PCI compliance, so it is useful
to log it.
2018-10-02 01:03:03 +02:00
Olivier Dony 9bae56acd4 [IMP] http: reinstate session rotation after login
Session rotation was introduced a long time ago, but deactivated at
login due to obscure side-effects related to #6949 (aka the "BBQ" PR).
This commit reinstates the rotation, which is better from a security
standpoint.

In order to also prevent session ID reuse, we force the renewal of
deleted sessions, at the SessionStore level (via `renew_missing`).
2018-10-02 01:00:37 +02:00
qsm-odoo c47600887f [FIX] website: resolve failed-forward-ported website demo
The following series of commits were badly forward-ported:
- https://github.com/odoo/odoo/commit/24a8bce5429eef7139bdd1bc87aa1ef8733670a7
- https://github.com/odoo/odoo/commit/9ef7763ecdf4fb102e49ce68ac4ca3ce7557016e
- https://github.com/odoo/odoo/commit/66d37834284f890c00f00c8ab32ca820f757beb6
2018-10-01 21:51:17 +02:00
qsm-odoo ba237a43af [FIX] website_hr: review the "our team" section
The 'our team' section on the about us page was broken since BS4. This
was because the previous implementation in BS3 was not properly done,
this commit correctly uses the grid system and make the publish
management appear not broken.

Thanks to @kea14 for spotting the issue.
2018-10-01 21:33:32 +02:00
qsm-odoo 09d47cc65d [FIX] portal: remove useless inline-flex rule on breadcrumb items
It seemed useless before but now it is breaking layouts (as flex ignore
whitespaces), so let us remove it.
2018-10-01 21:33:32 +02:00
qsm-odoo 9df7bca6f5 [FIX] web: prevent users to type invalid values for opacity
Also, make all the _updateXXX methods follow the same structure.

Thanks to @kig-odoo for spotting the issue.
2018-10-01 21:33:32 +02:00
qsm-odoo 8b2dbd1441 [FIX] website: handle light colors as body text color
Before this commit, if the user chose a light color for the text (with
a dark color for the body for example), that color was also used for the
automatic "dark" color, leaving the "light" color to the default $white.
That means that when a light snippet background was set, the automatic
color which was used was the light color the user chose. We want to
invert the system in that case: use the user color as the "light" color
to use over dark backgrounds and leave the "dark" color to the default
$gray-900. This is what this commit does.
2018-10-01 21:33:32 +02:00
qsm-odoo 89678c6041 [FIX] base, website: make attachment serving multi-website
- Reaching an attachment datas thanks to its URL was not multi-website
- Compiling assets with URLs to attachment datas was not multi-website
2018-10-01 21:33:32 +02:00
Alexandre Kühn 03a93f0968 [FIX] google_drive:tests: adapt from forward-port 2018-10-01 18:28:51 +02:00
Alexandre Kühn e8a071a744 [FIX] mail: show/hide 'New Message/Channel' in discuss mobile
Before this commit, the buttons 'New Message' and 'New Channel'
were shown in all tabs of discuss mobile, even though they should
only be displayed in some tabs.

This issue comes from a change from BS3 to BS4, in which the classname
`visible-xs` has been replaced with `d-block d-md-none`. With BS4,
the classnames `d_*` are now `!important`. As a result,
`d-block d-md-none o_hidden` still displayed the button because
`o_hidden` does not have `!important`.

This commit fixes this issue by removing the reliance on `o_hidden`,
and now only uses `d-*` for the visibility of the button. The toggling
of `o_hidden` has been replaced with adding or removing the classes
`d-none` (hidden) and `d-block` (visible). Those buttons are not shown
in desktop thanks to `d-md-none`.

Task-ID 1877502
2018-10-01 18:19:48 +02:00
Alexandre Kühn 05971d0050 [FIX] web: 'Shortcuts' in user menu (community)
Revision on https://github.com/odoo/odoo/commit/19eacf7d23c9413de4430a3422b5ed74b37ef242

This menu item should not appear in the community version of Odoo.
The commit above mistakenly added this menu item, even though no
logic was implemented for it. This was a consequence of the copy
& paste approach to rapidly deploy the new navbar in community.

(Note: a big refactoring of the web client is coming very soon,
so this duplicated code issue should only be temporarily).

This commit fixes the issue by removing this menu item in the
community version.
2018-10-01 18:19:48 +02:00