Commit Graph
127220 Commits
Author SHA1 Message Date
Romain Derie aebbd0317f [FIX] mail, web: directly load async debug.xml during QUnit tests
Before this commit, the test `list: edit view menu item` would sometimes crash
as now the debug manager loads its templates with an `xmlDependencies` where it
was not the case before (included in base.xml), see 73327db065.
2019-06-06 15:08:04 +02:00
Christophe Simonis 4f18c7c44b [FIX] test_mail: correct test
*/ Adapt test to new version
*/ do not use removed method `do_in_onchange`
*/ remove duplicated test
2019-06-06 13:33:16 +02:00
Christophe Simonis 71a50a2214 [MERGE] forward port branch saas-12.3 up to 409679866b 2019-06-06 11:54:35 +02:00
Robot Odoo a7621137cb [MERGE] Use polib to parse .po files
Remove ugly custom po files parser and use polib for reader and writer.
Refactor reader/writer to use a class and have an abstraction for csv or po files.

Task-id: 1986334

closes odoo/odoo#32165

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-06-06 09:45:37 +02:00
Martin Trigaux 55dd375c84 [FIX] tools: ensure 0 res_id are handled
if an POEntry has an occurrence with a 0 res_id
    >>> entry.occurrences.append(("selection:report.paper,format", 0))
    >>> str(entry)
    #: selection:report.paperformat,format
    ...

Use the string '0' to bypass this
2019-06-05 09:44:11 +00:00
Martin Trigaux 376f7983b0 [IMP] test_translation_import: reexport the .pot file
To be sure it is synchronized with the reality to make the maintenance easier
2019-06-05 09:44:11 +00:00
Martin Trigaux eab46cdca6 [IMP] tools: remove custom pofile writer
And create a generic class to handles it, using polib for po files
2019-06-05 09:44:11 +00:00
Martin Trigaux 632fa044c3 [IMP] tools: remove custom pofile reader
Use polib library that handles this correctly
The complexity of the parser is moved to the library
2019-06-05 09:44:11 +00:00
Martin Trigaux 3c568aec0b [FIX] base,website_sale,fleet: do not use a space in xmlid
This probably a bad idea for odoo but is definitly a bad idea for pofile

As shown in gettext reference, the spaces are used as separator in po files
https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html
For instance
    #: src/msgcmp.c:338 src/po-lex.c:699
    #, c-format
    msgid "found %d fatal error"
    msgstr "..."

The line "model_terms:ir.ui.view,arch_db:website_sale.search count"
was considered as two references:
- 'model_terms:ir.ui.view,arch_db:website_sale.search'
- 'count'

Correct external id of fleet, even if not translatable
2019-06-05 09:44:11 +00:00
Martin Trigaux d0805f2e6d [IMP] base: remove deprecated code
The types view, field or help no longer exists
2019-06-05 09:44:07 +00:00
Cedric Snauwaert 409679866b [FIX] l10n_hn: remove unused fields
fields account_id and refund_account_id on account_tax_template have been moved on the repartition line of the same model.

closes odoo/odoo#33829

Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
2019-06-03 10:53:09 +00:00
Kaushalya Mandaliya 7a3a1a43b3 [FIX] im_livechat: correctly display known partner name
When talking via the Live Chat to a known partner, should be able to see
his name in the chat window title, from the commit: c04b9c019e
the partner name wasn't showing in the title as sudo is being used.

After this commit, known partner name will be shown in the
Live Chat window title.

And improving a test case, in which we're checking for the known partner's
name in the chat window title.

task-1940407

closes odoo/odoo#33831

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-06-06 04:45:21 +00:00
Johan Demaret Rivarola 218d5ce6a8 [FIX] (website_)sale_coupon: avoid race condition on currency
Creating a new database with only website_sale_coupon installed will
make some (website_)sale_coupon tests fail. This is due to a race condition
messing with the value of the pricelist product.list0 currency.

The tests are failing due to amounts being compared after the USD
currency rate of 1.2834 has been applied.

Example on a 10% discount:

expected:
>>> 320 * 0.9
288.0

actual:
>>> 320 * 1.2834 * 0.9
369.62

This is due to
https://github.com/odoo/odoo/blob/3cf9cfc985950c30c6b76480f77f5ffe53650b24/addons/website_sale/data/demo.xml#L228
overriding the value to USD. The tests should not rely on this.

This commit aims to ensure the currency is enforced before each test run.

closes #4371

Signed-off-by: Christophe Simonis <chs@odoo.com>

X-port/Cherry-pick of odoo/enterprise@c1cc464c44
2019-06-05 18:18:52 +02:00
Christophe Simonis 0f9823e216 [FIX] lunch: correct forward-port of a5b56e5498
closes odoo/odoo#33878

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-06-05 14:58:20 +00:00
Christophe Simonis dad3043ccd [FIX] stock: reset return lines on picking change 2019-06-05 14:00:39 +00:00
Christophe Simonis ce4165780a [FIX] mail: avoid race condition in test 2019-06-05 09:08:31 +00:00
Christophe Simonis 76275c2c12 [FIX] web: correct forward-port of e9350993ca 2019-06-04 16:27:42 +00:00
Nicolas Lempereur 32f13fae14 [FIX] web: list editable test forward-port
Now in 12.3, when the a editable list view is grouped, the "Create"
button is no longer shown as was the case before (when it would open the
form view when clicked).
2019-06-04 16:16:41 +00:00
Nicolas Lempereur bbc8c9fc26 [FIX] web: fix form resequence test e61639723
In 12.3 when lines are resequenced, the position of the current line
does not take into account that it could have been changed (because of
drag and dropping a line before or after).

opw-1966589
closes #33878
2019-06-04 15:09:44 +00:00
Christophe Simonis a89a7b30a4 [FIX] web: correct forward-port of e9350993ca 2019-06-04 14:56:19 +00:00
Christophe Simonis 3a1bb663c7 [FIX] sale_product_configurator: remove duplicated method
Oversight of previous forward-port.
2019-06-04 14:56:19 +00:00
Christophe Simonis 2b0118b984 [FIX] sale: correctly adapt forward-port of 51ef8514ea 2019-06-04 14:56:19 +00:00
Christophe Simonis 47fefea909 [FIX] sale: propage new parameter to sub-function
Oversight of previous forward-port.
2019-06-03 20:10:34 +02:00
Christophe Simonis 43d133d504 [FIX] *: correct some javascript errors
Oversight of previous forward-port.
2019-06-03 19:06:03 +02:00
Christophe Simonis e6146b0b08 [FIX] website_sale_delivery: use defined variable
Oversight of previous forward-port.
2019-06-03 18:10:46 +02:00
Christophe Simonis eaa6198c9f [FIX] website_forum: remove extra closing xml tag
Oversight of previous forward-port.
2019-06-03 18:10:02 +02:00
Christophe Simonis c8d7ad9a6b [MERGE] forward port branch saas-12.2 up to 995aa1685e 2019-06-03 15:49:31 +02:00
Christophe Simonis 995aa1685e [FIX] purchase_stock: correctly set cost_method and valuation in tests
Oversight of previous forward-port.
2019-05-31 16:31:44 +02:00
Christophe Simonis b1970c6f08 [FIX] stock_account: correctly force cost_method in tests
Oversight of previous forward-port.
2019-05-31 16:13:49 +02:00
Christophe Simonis 6c16a1f3ba [FIX] product: correct variant image test
Oversight of previous forward-port.
2019-05-31 15:12:11 +02:00
Christophe Simonis cfe0523714 [MERGE] forward port branch 12.0 up to 8f21148e1a 2019-05-31 14:37:38 +02:00
Nicolas Martinelli 8f21148e1a [FIX] hr_contract: contract type name
Make the contract type name translatable.

opw-2003957

closes odoo/odoo#33781

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-31 05:41:25 +00:00
Toufik Ben Jaa 29762514ae [FIX] sale: singleton error when validating payments
- When validating a payment an "expected singleton" exception is
raised due to the fact that we are using a recordset with multiple
record instead of a recordset with a single record.

OPW-1981632

closes odoo/odoo#33767

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-05-29 16:16:18 +00:00
Nicolas Martinelli d92acc602c [FIX] event_sale: no currency
If the company is not set on the SO, the creation of a SO line crashes
because `currency` is empty.

opw-2005143

closes odoo/odoo#33783

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-31 06:36:55 +00:00
Sébastien Theys 7bb0c8b6c5 [IMP] website_sale: prevent new product from being published
Before this commit, new products created from the website backend were published
by default. This is a problem because the product manager might click on save
before he has finished configuring his new product. He should always be given
a chance to see it himself on the website before the publication.

closes odoo/odoo#32211

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-05-29 13:36:13 +00:00
Lucas Lefèvre 0b36687bc1 [FIX] resource: Avoid to set attendances twice
Don't set attendance_ids default value if the field
is not in the field list parameter.

closes odoo/odoo#33904

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-06-05 10:22:51 +00:00
Thanh Dodeur c212cfe899 [REF] *: removes datas_fname from ir.attachment
This commit removes the field `datas_fname` from `ir.attachment` as
it was unnecessary and most of the time the duplicate of `name` or
`url`.

Task #1909865

closes odoo/odoo#32976

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-06-05 09:12:13 +00:00
Robot Odoo d6847bacb1 [IMP] web, http, http_routing, *: new asset for test files
Coming with https://github.com/odoo/enterprise/pull/4281

This commit goal is to encapsulate every tour-test into a separate assets
bundle that would be called only during tests (command line) or by URL
(debug=tests). That way, a lot of .js files would not be loaded anymore
uselessly outside test mode and will speed up the page loads (especially in the
frontend as the backend do not reload the page anyway).

In order to do that, we needed to propagate the `debug` state from page to
page.
Otherwise, every page change during a test would simply lose the debug mode and
the test would stop as the test assets would not be loaded.
As we could not add the `&debug=tests` on every link (either hardcoded or
preprocess during the rendering), it has been decided to store it in session.

Technical summary:
1. `debug` state (currently only stored in URL) will be stored in session.
Either when adding the `debug` param in URL (handled with _dispatch) or by
starting Odoo with `test-enable` or `test-file` (handled by session init).
2. Once activated (and so set in session), debug mode will be remain activated
even if not visible in URL (after a page navigation eg).
To remove it,  set its value to nothing, `debug=`. That will exit debug mode
(whatever mode it is: debug, assets, tests).
3. As tour-test files are now in a separate bundle, every layout (when needed)
should `t-call="web.compiled_assets_tests"`.
As it would be redundant and verbose, no `t-if` is needed on the t-call to
load it only in test debug mode. That will be handled by
`compiled_assets_tests` that will actually do the conditionnal t-call-assets
to web.assets_tests, if tests debug mode is activated.
4. In addition to separating the tour-tests files in a separate bundle, we also
moved those files to a specific folder under /static/tests/tours next to
QUnit tests.
5. Also, tour files will be moved in a specific folder /static/src/js/tours for
cleanness purpose (those files will still be kept in their 'normal' assets
as needed outside test mode since it is tours).

closes odoo/odoo#33213

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-06-05 09:42:45 +02:00
Jeremy Kersten 7a3046a38f [IMP] tools: add DotDict helper
This function allow a quck dot.notation access to dictionary attributes

We need to make it re-usable for a future enterprise commit
2019-06-05 05:56:33 +00:00
Romain Derie 72f7139f52 [IMP] *: use new helper config.isDebug()
Before this commit, both config and session were aliases to odoo.debug.
Now, config.isDebug() should be call, with possibility to pass a parameter to
check if we are in a specific debug mode such as 'tests' or 'assets'.

task-1934445
Coming with https://github.com/odoo/enterprise/pull/4281
Closes https://github.com/odoo/odoo/pull/33213
2019-06-05 05:56:33 +00:00
Romain Derie 73327db065 [IMP] *: add debug manager in frontend
Now that the debug mode is stored in session, we need a clear indication that
debug mode is activated.
In backend, the 'fa-bug' is doing the trick but in frontend there is no visible
clue that debug mode is enabled.

This commit separate the debug manager code/feature so we can instanciate it in
frontend only with usefull options (such as enable assets, leave debug mode..).

Now, in frontend, people having access to the navbar (o_main_navbar) will see
the same 'fa-bug' icon with minimal options as mentioned above.
Also, in the footer, there will be another 'fa-bug' icon without any options.
It will be usefull when the navbar is not shown, typically the case for
public user, or for portal (without website installed)).
Clicking on it will simply leave debug mode as hinted in tooltip.

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie fbe5b64eb3 [IMP] web: rename file to prepare changes on next commit
As this file will be split in 2 parts, this will minimize diff.

task-1934445
Comes with odoo/enterprise#4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie 3c37e0e110 [IMP] web, web_tour, website, point_of_sale: adapt code to new debug
As now the debug state is stored in session, the JS framework code and some
templates needed some changes.
First, the debug state is retrieved from session and not the URL anymore.
Second, the debug state does not need to be forwarded as it is now persistent.

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie cd4cd51721 [IMP] project, website_slides(_forum): no need to forward debug in URL
Now that the debug mode is stored in session (see parent commit), there is no
need anymore to forward the debug query param.

This commit clean the occurence of code that were doing that by using mainly
`keep_query`.

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie fdbf11643f [IMP] *: move test and tour files to new folder hierarchy and asset
As we now have a new debug mode 'tests' which load a new asset bundle
containing tour-test files, we moved those files to a new folder hierarchy.
That will clean the .js files trees.
Also, those files should be included in the new asset.

Basically, the .js tour files (not test) should be inside /static/src/js/tours
while .js tour test files (test=true) should be inside /static/tests/tours next
to QUnit tests, inside a tours folder.

+ test_new_api: don't run the test in debug assets

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
Romain Derie d7cd97a9be [IMP] *: new asset for test files, new debug mode (stored in session)
This commit goal is to encapsulate every tour-test into a separate assets
bundle that would be called only during tests (command line) or by URL
(debug=tests). That way, a lot of .js files would not be loaded anymore
uselessly outside test mode and will speed up the page loads (especially in the
frontend as the backend do not reload the page anyway).

In order to do that, we needed to propagate the `debug` state from page to
page.
Otherwise, every page change during a test would simply lose the debug mode and
the test would stop as the test assets would not be loaded.
As we could not add the `&debug=tests` on every link (either hardcoded or
preprocess during the rendering), it has been decided to store it in session.

Technical summary:
1. `debug` state (currently only stored in URL) will be stored in session.
   Either when adding the `debug` param in URL (handled with _dispatch) or by
   starting Odoo with `test-enable` or `test-file` (handled by session init).
2. Once activated (and so set in session), debug mode will remain activated
   even if not visible in URL (after a page navigation eg).
   To deactivate it, set its value to nothing, `debug=`. That will exit debug mode
   (whatever mode it is: debug, assets, tests).
3. As tour-test files are now in a separate bundle, every layout (when needed)
   should `t-call="web.conditional_assets_tests"`.
   As it would be redundant and verbose, no `t-if` is needed on the t-call to
   load it only in test debug mode. That will be handled by
   `compiled_assets_tests` that will actually do the conditionnal t-call-assets
   to web.assets_tests, if tests debug mode is activated.
4. In addition to separating the tour-tests files in a separate bundle, we also
   moved those files to a specific folder under /static/tests/tours next to
   QUnit tests.
5. Also, tour files will be moved in a specific folder /static/src/js/tours for
   cleanness purpose (those files will still be kept in their 'normal' assets
   as needed outside test mode since it is tours).
   This will be done in the next commit.
6. It is possible to enable multiple debug mode, such as 'tests' and 'assets'
   together. Simply separate debug modes with a comma, eg '?debug=assets,tests'

task-1934445
Comes with https://github.com/odoo/enterprise/pull/4281
Closes #33213
2019-06-05 05:56:33 +00:00
David 2fab076e84 [IMP] point_of_sale: add ticket reference in payment
Before this commit, when creating a payment from a pos, the reference was:
Main/0000:

After this patch, it is now:
Main/0000 - Order 00000-000-0000

The number of the ticket is useful as it what is printed on the ticket and what
the customer knows (when trying to reconcile order and payment manually)

Closes odoo/odoo#33696

closes odoo/odoo#33757

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-05-29 12:54:48 +00:00
Elisabeth Dickinsonandqsm-odoo b68311454d [IMP] website_forum: review design of forum index
- Allow to set an image on each forum
- Review the form view
- Redesign the forum index with cards and header

task-1984582

closes odoo/odoo#33530

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>


Co-authored-by: qsm-odoo <qsm@odoo.com>
2019-06-04 22:26:50 +00:00
Robot Odoo bae24d7bdd [MERGE] web, web_editor, *: allow image optimize from media dialog
Merge commit for PR #31208

Before this task, many websites were slow due to big images.

Most users upload images without understanding the impact on SEO and speed.

Each upload of an image is important and require some configuration to find the
best solution between speed and quality according to the situation.

After this task, users will have more control on the upload of images,
especially they are given the possibility to reduce their size, quality, and
change the filename.

task-1930726

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-06-05 02:03:30 +02:00
Sébastien Theys 87a35d4263 [IMP] web, web_editor, *: add media image optimize dialog
* = website, website_blog

The goal is to give the user an opportunity to optimize his images before using
them.

For this we introduce a preview/configuration dialog after every image upload,
where appropriate default values are filled for the quality and resolution,
based on where the image is going to be used. Since this is not going to be
perfect all the time, we still allow the user to configure them, and we display
a preview to ease this process.

Indeed it is important for SEO and for usability in general that the images are
as light as possible in size.

Technically the original image is uploaded and saved first, and then it can be
optimized. This way the upload only happens once, and the preview can be
computed from the already saved image.

task-1930726
PR: #31208
2019-06-04 22:14:13 +02:00