Commit Graph
278 Commits
Author SHA1 Message Date
Christophe Simonis 8376f538b5 [MERGE] forward port branch saas-6 up to 9d04d14669 2017-03-24 17:11:48 +01:00
Christophe Simonis 8caac6bc44 [MERGE] forward port branch 8.0 up to 5847de4aaf 2017-03-24 15:23:16 +01:00
qsm-odoo b2d66d0c14 [FIX] web: properly combine domains with "OR" in CompoundDomain
The CompoundDomain class allows to regroup several domains with an
implicit "AND"; these domains can be either a string, an array or
another CompoundDomain. A CompoundDomain can then be converted to
an array thanks to pyeval.js.
For example, if a CompoundDomain is initialized with `[A, B]` and
`[C]`, the array conversion gave `[A, B, C]` (which is expected).

However, a hackish method was used with CompoundDomain. If one of the
domain of a CompoundDomain is equal to `["|"]` (an array with the
OR operator in it), the two next subdomains were supposed to be joined
by a OR operator. Indeed, for the case of a CompoundDomain initialized
with `["|"]`, `[A]` and `[B]`, the array conversion gave `["|", A, B]`
(which is expected). However, if initialized with `["|"]`, `[A, B]` and
`[C]`, the array conversion gave `["|", A, B, C]` which is very wrong
as what was expected is `["|", "&", A, B, C]`. The problem is that the
given `[A, B]` contains implicit "&" operators.

This commit fixes the problem by normalizing only if the CompoundDomain
starts with a ["|"] or ["!"] array which is the standard odoo case.
This allows to limit breaking custom code (e.g we want a simple "AND"
of `[A]` and `[B]` to stay `[A, B]`, not become `["&", A, B]`).

The commit also modifies a test so that it checks that the problem is
properly solved.
2017-03-24 15:03:54 +01:00
Christophe Simonis 0a2317d303 [FIX] test_new_api,web: tests 9.0 adjustments
Rev e37ba61 forward-ported 8.0 revision f02b230 from PR #12379.
This patch introduces extra tests and views for o2m onchange behavior,
including new fields in the test models.

In 9.0 a new convert_to_onchange() mechanism had been
introduced at 9f81c6d

The combination of both requires some adaptation to the
expected results of the new tests and adaptation of existing tests.

The test models in `test_new_api` have an implicit depencies between
models which cannot be express on ORM:
    messages depends on participants of their discussion.

So, when editing a discussion, the field `participants` should be
processed before field `messages`. This is not always done because
field processing order depends of the iteration order of a `dict` (which
is undefined in python).
The testing tour `widget_x2many` worked by chance until now.
Adapt the tour to save the participants before the messages.
2016-06-21 11:23:18 +02:00
Nicolas Martinelli 50b94ef079 [FIX] web: search input of date
When the user searches for date (or a datetime) in the search bar, the
suggested date can become completely wrong. For example, in the French
localization where the date format is DD/MM/YYYY, the system will search
for the date MM/DD/YYYY. This is even worse when the date is not fully
written: DD/MM could be converted to MM/DD/0000, which doesn't make any
sense. This is related to the moment issue
https://github.com/moment/moment/issues/1407.

The fix is to make sure that the input date has a correct format thanks
to `parse_value`. The latter converts the date into a fixed format.

Fixes #11876
opw-676604
2016-05-10 11:19:22 +02:00
Géry Debongnie 29427bdcb3 [FIX] web: reimplement autosize for fun (and some bugfixing)
autosize does not work correctly (it moves the screen in all directions
sometimes when the user press enter in the bottom of the screen in some
browser),

So, we decided to have our own version, because of course, we can do it better.  A
few horrible hacks later, I proudly present you "autoresize" (it was
almost named "odooresize" but common sense prevailed).

As added benefits, it plays better with our web client, so when you open
a dialog in a modal for example, the autosize fields should have the
correct height automagically (or should I say 'odoomagically')
2016-01-11 14:32:51 +01:00
Christophe Simonis 56a442e205 [MERGE] forward port of branch saas-6 up to dade7e3 2015-11-25 13:26:02 +01:00
Denis Ledoux 32fd520d97 [MERGE] forward port of branch 8.0 up to 6f29cbe 2015-11-23 17:40:15 +01:00
Thomas Groutars b665478fa7 [FIX] py.js: unhandled prefix not
closes #6129
2015-11-19 13:54:26 +01:00
Denis Ledoux a3648fd23a [MERGE] forward port of branch 8.0 up to aabbdc7 2015-09-21 16:01:58 +02:00
Olivier Dony 0f06e5f54f [FIX] tests: outdated resource paths in manual test files 2015-09-18 15:52:11 +02:00
qsm-odoo 1a405ed7c4 [FIX] web: widget_x2many tour
The test was not stable enough since listview editable and onchange
API changes.
+ Some step were wrong (test of the wrong element)
+ Minimize differences with enterprise version (so that the two tests
are testing the same things)
2015-09-08 14:14:31 +02:00
qsm-odoo 3f7d350fe2 [FIX] web: Listview editable
(backport of enterprise version)

Fix various problems with list view editable :
* Click outside which should discard/save the line in edition
* Warnings which should not appear when line is being discarded/saved
* JS test

+ JS code refactoring
2015-09-08 14:14:31 +02:00
Nicolas Martinelli 0414c9dd6a [IMP] web, website*: adaptation due to the new Sale module
Major changes:
- No use of UoS anymore
- Specific method to calculate delivery

Reason: complete rewrite of the Sale module.

Responsible: fp, dbo, nim
2015-08-27 19:21:37 +02:00
Christophe Matthieu a102a9f3fc [IMP] web: add a test to check the one2many create form and onchange 2015-08-27 15:01:09 +02:00
Ronak Baxi 0e603b9927 [FIX] web: x2many tour: broken selector
of a button in a modal footer
2015-08-19 08:10:45 +02:00
Christophe Simonis 98ef7e29f3 [FIX] web: correct x2many js test tour.
Now that users are ordered by name, we need to explictly choose the
correct participants.
2015-08-16 00:52:04 +02:00
Christophe Matthieu 7c10cb47f1 [FIX] web: readonly fields not transferred from dialog to 2many field
Transfer options to 'data_create' and 'data_update'
Add tour to check the fix
2015-08-14 15:34:58 +02:00
Aaron Bohy 83dab472f3 [REF] web(_tests),test_new_api: split and remove web_tests
Move the widget_x2many tour to web and call it from test_new_api as it needs
to be overrided for the new design, and it requires models and data from
test_new_api.

Clean other unnecessary stuff from web_tests, and thus remove the addon.
2015-08-05 14:38:00 +02:00
qsm-odoo 86c399f3bd [IMP] web: New notification system
Backport of the Notification system
2015-07-23 10:51:12 +02:00
Aaron Bohy 27df65c878 [IMP] board,google_spreadsheet,web,web_calendar: Favorites menu
Adapt the Favorites menu so that addons appending stuff in it are compliant with
the enterprise edition.

Mainly, creation of dashboard.less from of dashboard.sass so that we can use mixins
defined in the web addon.

Some changes as well in the dashboard view to make it compliant with the enterprise
edition.

Use correct naming convention: classnames with underscores, less mixins with hyphens.
2015-07-15 13:32:56 +02:00
Christophe Matthieu 500c33b184 [IMP] web: split model.js into model.js and data_model.js. Web js modules must call web.DataModel. 2015-07-10 16:32:35 +02:00
qsm-odoo 46bf047e86 [IMP] web, web_*, mail, board : New modals and dialogs 2015-06-17 09:49:46 +02:00
Christophe Simonis fe2b5f35a4 [MERGE] forward port of branch saas-6 up to bf1e999 2015-05-28 14:27:38 +02:00
qdp-odoo c04065abd8 [IMP] accounting v9. Yeeeeaah 2015-05-05 17:28:04 +02:00
Christophe Simonis 9c5a1d8231 [MERGE] forward port of branch 8.0 up to cf4d14c 2015-04-27 17:33:44 +02:00
Denis Ledoux 84e10ad03b [FIX] web: translation of default M2O values in search bar
When a many2one field of a searchview was selected
by default, through a default_*_id within the context,
the many2one value name wasn't translated.

e.g. with Spanish loaded (and l10n_multilang installed),
translate a project.project name in Spanish.
Then, while being in Spanish, in the project.project kanban,
click on the Tasks link of a project (tareas),
then, notice the value of the project name in the
search bar.

opw-632818
2015-04-22 17:53:35 +02:00
Géry Debongnie ebc39b8788 [FIX] update tests to new module system
Various tests (mostly tours) were broken with the large changes in the
way the js code works.
2015-03-18 09:23:37 +01:00
Géry Debongnie 4fdf74fe21 [IMP] web+addons: improvement to module system
The module system needs to know the dependencies of a given module
before executing the function.  This is why the dependencies were
defined once in an array, and then were described one more times in the
call to require.

But a trick can simplify this: the boot function can parse the string
representation of the module and extract the calls to require from it.
It is more work for the processor, but it leads to simpler module
definitions.
2015-03-18 09:23:37 +01:00
Géry Debongnie b960f8ad52 [REF] web: update test suite to new module system
The test suite needs to be adapted to the modules.  Also, the update
of qunit changes the API, so the tests needs to be changed as well.
2015-03-18 09:01:50 +01:00
Christophe Simonis bc2fd0515b [MERGE] forward port of branch 8.0 up to 017f346 2015-03-04 15:16:10 +01:00
Xavier Morel f64a2fa386 [ADD] js tests: more relativedelta tests
* add some more boundary tests and nudges
* add test for weekday

ref #5089
2015-03-03 11:55:18 +01:00
Géry Debongnie 77413fc764 [FIX] update tests and change search logic (webclient)
previous commit broke some tests.  The issue is that the search view
now avoid making requests if there is no action id.  But this is an
assumption that tests use, so some slight adjustments have to be made.

Also, this is the moment to give properly the action id to the favorite
menu.  Instead of bypassing its parent, it now receives the action id
from the search view.
2014-11-20 14:58:10 +01:00
Fabien Meghazi a29c44be31 [FIX] python strftime to moment.js format conversion 2014-11-05 15:28:00 +01:00
Cedric Snauwaert a878de477f [FIX] web: fix remarks from pr 2014-11-05 15:27:59 +01:00
Cedric Snauwaert a8d9743c0c [FIX] web: fix tests on date parsing 2014-11-05 15:27:59 +01:00
Cedric Snauwaert ef886aed2f [FIX] web: remove datejs and replace by momentjs 2014-11-05 15:27:59 +01:00
Géry Debongnie f25608c6fc [FIX] remove search.invisible tests
The search view architecture allowed an 'invisible' attribute in fields.  These fields were ignored for the autocompletion and did not appear in the interface.  The goal was to allow default parameters to create facets, without displaying the field in the interface.  Since that functionality is not used and the new search view does not support it right now, the tests can be removed.
2014-10-21 09:33:51 +02:00
Géry Debongnie d9f95e855e [FIX] update tests in search view 2014-10-21 09:33:51 +02:00
Géry Debongnie 2e43d4be29 [FIX] update the search tests
The search tests are totally outdated since the search view rewrite. This commit update them to the new search view.
2014-10-21 09:33:51 +02:00
Christophe Simonis 52fee2811d [MERGE] forward port of branch 8.0 up to 2b192be 2014-10-16 16:04:39 +02:00
Xavier Morel 62fcce9054 [ADD] JS widgets reference documentation
Also fixed Widget#alive's behavior and tested it
2014-10-07 10:21:44 +02:00
Denis Ledoux 7aa5d397c8 [Revert] cb30783aba & 6349048ba0
[FIX] web: avoid force_reload in list editable
[FIX] web: force load record after reload page

These fixes prevent to open existing record form
2014-10-03 14:03:12 +02:00
Martin Trigaux cb30783aba [FIX] web: avoid force_reload in list editable
When creating a new record in list editable, due to previous commit 6349048, the load_record was called twice and the first record of the current list view (self.dataset.index) was used to fill the new record.
With this, we make sure a new record is indeed created.
Fix the web test to have a default_get call in mock models and increase the number of default_get assertions (for creations in list editable, the default_get is then called twice, not optimal but due to the absence of distinction between empty datarecord and filled with default values).
2014-10-03 11:41:00 +02:00
Christophe Simonis 709c9868de [MERGE] forward port of branch 8.0 up to e883193 2014-10-01 19:18:14 +02:00
Géry Debongnie 2d81f2cfdd [FIX] update autocomplete test
Autocompletion of many2one fields only accepts domains in the form of
arrays, not as strings.
2014-09-18 11:52:38 +02:00
Christophe Simonis 31bf30d2d0 [MERGE] forward port of branch 8.0 up to ed1c173 2014-09-05 15:28:22 +02:00
Denis Ledoux 82adba4714 [FIX] web: wait onchanges to be processed before save 2014-09-04 17:22:04 +02:00
Christophe Simonis 135962184d [FIX] web: make search by id possible.
+ correct tests
2014-08-06 17:27:27 +02:00
Christophe Matthieu eb23f30c7e [IMP] tour: add a tour to click on all menu items, sub menu items, need action, and views 2014-08-06 17:22:03 +02:00