Commit Graph
258 Commits
Author SHA1 Message Date
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
rlu-odoo 8b67a7202d [REF] OpenERP --> Odoo in various UI texts
Rebranding has been done in:
- data/demo files
- html templates
- help notices
- comments
- logger messages
- and other various messages

(Commit taken from odoo-dev:8.0-improve-openerp-odoo-rlu at rev 7deaa08)

Closes #1260
2014-07-18 13:45:41 +02:00
Olivier Dony 9132b1d306 [IMP] ir.filters: new filters are local to the menu/action by default
Allow binding an optional `action_id` to filters.
The web client will try to identify the specific
action ID when saving new filters. If no contextual
action exists, the filter is saved globally for
the model.

This will automatically keep filters within their
original menu when there are several menus/actions
leading to a given list of documents.
In some cases the action_id will not match the
filter model, which should be fine (e.g. when opening
a many2one completion popup for model `foo` within
a menu of model `bar`).

It is also still be possible to have a filter apply
to all actions/menus for a given model by manually
deleting the action_id value in the filter
(e.g. via the Manage Filters debug menu).

When updating a filter the action_id value is ignored
so that old global filters will be gradually replaced
by new "local" filters.

Also added an _order to ensure stable ordering of the
filters.
2014-07-01 03:29:05 +02:00
Géry Debongnie 88bb66e784 [FIX] fix tests in autocompletion 2014-06-30 16:13:02 +02:00
Géry Debongnie 0a4a7f3d20 [IMP] new autocomplete widget
Task #5009

This new autocomplete widget (the one used in the search bar) does not
do remote calls automatically, but on demand. In theory, it should lead
to a better user experience, not having the ui blocked every time long
remote calls are done.

It also has the benefits of bringing us one step closer to not
depending on jquery.ui. Bonus point: the code is quite short (< 200 loc
i believe)
2014-06-25 13:26:41 +02:00
Géry Debongnie bb8b659ce3 [FIX] adjust the tests after changes to the searchview
* oe_searchview_custom has been split in oe_searchview_custom and
oe_searchview_filter: a test need to take that into account
* in adjust_top, the parent might not have a $ method.
2014-05-26 16:43:04 +02:00
Géry Debongnie a24020e004 [FIX] update the searchview tests
to accomodate the fact that the searchview has been changed.
Two changes need to be accounted:
(1) the drawer html structure has changed (oe_selected class is
replaced by badge, some li tags are replaced by spans, ...) and
(2) the CustomFilters has been split into CustomReports and
SaveFilter, so there is an extra filter in the drawer inputs.

Also, the searchview need a parent to react to the switch_mode event,
so the tests add a fake parent to the view in make_search_view
2014-05-22 09:59:32 +02:00
Fabien Meghazi 9c58bd5538 [FIX] listview test shall not assume default color is black
bzr revid: fme@openerp.com-20140425093053-3644kvcz13481fxo
2014-04-25 11:30:53 +02:00
Christophe Simonis f1d3f2a0c4 [MERGE] forward port of branch saas-3 up to revid 3995 chs@openerp.com-20140407144625-jfimvsx4mgrkztqv
bzr revid: chs@openerp.com-20140407161728-ccudwnqo970ac8ay
2014-04-07 18:17:28 +02:00
Denis Ledoux f652402dd7 [FIX] web: read_ids of data.js use method search_read if check_access_rule option is true.
This fix is related to revision 3985 revid:dle@openerp.com-20140326142040-pls0dk2kd03z55ro, which did not worked for buffered dataset (virtual one2many line in view form
search_read is used instead of read to not return records for which we lose the access rights

bzr revid: dle@openerp.com-20140327112456-iyceuf9dnn07hwke
2014-03-27 12:24:56 +01:00
Olivier Dony e80a179d02 [FIX] search widgets: m2o autocompletion had been disabled when @operator or @filter_domain were set, but it was actually useful
Was disabled at rev 3878 revid:xmo@openerp.com-20131107111231-nkrllqv0afqdmix6

bzr revid: odo@openerp.com-20140326170818-sc5hqnmq89ayufso
2014-03-26 18:08:18 +01:00
Denis Ledoux 7acaaf5894 [FIX] web: use search_read instead of read on form reload and record reload in list, to check if the user can still read the record
bzr revid: dle@openerp.com-20140326142040-pls0dk2kd03z55ro
2014-03-26 15:20:40 +01:00
Antony Lesuisse 5cc7237f63 [REM] useless jsonrpc tests and controllers
bzr revid: al@openerp.com-20140316141228-0c35ymruttd5mx2j
2014-03-16 15:12:28 +01:00
Christophe Simonis c3827cb8f7 [MERGE] forward port of branch saas-3 up to revid 3967 jke@openerp.com-20140311093515-02xw8phrcqhgz6zx
bzr revid: chs@openerp.com-20140311132200-1bln6gaj80njyh18
2014-03-11 14:22:00 +01:00
Xavier Morel bb7eb52699 [REM] RPC from js/qunit tests
They're a pain in the ass, they never worked right and they're basically
useless. Screw it.

bzr revid: xmo@openerp.com-20140221143518-hv3rjkw2b00ughvh
2014-02-21 15:35:18 +01:00
Xavier Morel cdc83a0763 [FIX] dataset.read_ids should always return records in the order of the parameter ids
BufferedDataSet.read_ids assumes the input and output orders are the same, and
returns wonky results when not the case, which in turns fucks up its cache as
it associates ids and records incorrectly.

bzr revid: xmo@openerp.com-20140225162813-8ofxpiy1012eehgk
2014-02-25 17:28:13 +01:00
Xavier Morel e9a3d8bcec [FIX] enable jsonrpc-auth tests, remove stray log
bzr revid: xmo@openerp.com-20140131154147-oi30v8u8h3c3htx7
2014-01-31 16:41:47 +01:00
Antony Lesuisse f051043a26 [MERGE] trunk-website-al
bzr revid: al@openerp.com-20140131005202-sjsfy3tc8ys1a325
2014-01-31 01:52:02 +01:00
Antony Lesuisse 698d02e3b5 web disable jsonrpc test
bzr revid: al@openerp.com-20140131003956-jo9grgfizich2dlu
2014-01-31 01:39:56 +01:00
Martin Trigaux 802d64ca92 [MERGE] [ADD] ways to correctly handle local datetimes in e.g. domains
* Alter datetime.now(), generate a local datetime (add utcnow() which generates a UTC datetime)
* Implement datetime.replace() to manipulate local datetimes
* Implement date.today(), generates a local date
* Implement datetime.toJSON(), returns a javascript Date (assumes datetime attributes are local)
* Add conversion hook in JSON and JSONP handlers, automatically converts a Date object to a UTC datetime formatted according to server formats

Should allow the generation of correctly working (from the end-user's POV) [Today] filters, amongst other things.
Eg: a local expression in a domain for 'Today 00:00:00' would now be expressed as 'datetime.datetime.now().replace(hour=0, minute=0, second=0)' (no .strftime) and will be converted to UTC when sent to the server

bzr revid: mat@openerp.com-20140128133706-4yp610pp5w06tcia
2014-01-28 14:37:06 +01:00
Xavier Morel 5b7ade9db1 [ADD] ways to correctly handle local datetimes in e.g. domains
* change datetime.now() to generate user-local naive datetimes
* add datetime.utcnow() behaving as the old now()
* add date.today() generating a user-local date (for the current day)
* add datetime.replace() to replace any specific attribute of the
  datetime object (except tzinfo, for now)
* datetime.toJSON() now returns the equivalent javascript Date object
  (warning: uses the datetime attributes directly, since datetimes are
  naive if they were created with utcnow() the Date result is going to
  be complete nonsense). With the previous commit datetime.now()
  generates a user-local now() which is converted to the correct UTC
  datetime when sent to the server.

This means it becomes possible to generate datetime bounds for the
user's local today with either

    datetime.datetime.now().replace(hour=0, minute=0, second=0)

or

    datetime.datetime.combine(
        datetime.date.today(),
        datetime.time())

and once send over JSON-RPC the server will get the local datetime
in UTC to the server's format.

nb: user-local means "in the timezone of the user's browser" in this
context.

bzr revid: xmo@openerp.com-20140122151911-akn1nr6e739eg92s
2014-01-22 16:19:11 +01:00