Commit Graph
336 Commits
Author SHA1 Message Date
Raphael Collet cbe2dbb672 [MERGE] new v8 api by rco
A squashed merge is required as the conversion of the apiculture branch from
bzr to git was not correctly done. The git history contains irrelevant blobs
and commits. This branch brings a lot of changes and fixes, too many to list
exhaustively.

- New orm api, objects are now used instead of ids
- Environements to encapsulates cr uid context while maintaining backward compatibility
- Field compute attribute is a new object oriented way to define function fields
- Shared browse record cache
- New onchange protocol
- Optional copy flag on fields
- Documentation update
- Dead code cleanup
- Lots of fixes
2014-07-06 17:05:41 +02:00
Olivier Dony 34bfa1b44f [MERGE] Forward-port saas-5 up to d9cda97 2014-07-05 01:45:45 +02:00
Olivier Dony d9cda97cf4 [MERGE] Forward-port saas-4 up to 5ceded9 2014-07-05 01:28:19 +02:00
Fabien Pinckaers 0c702bdfa7 Merge pull request #885 from odoo-dev/master-shop-fp
Fixes for perf issues /shop + cleaning pricelists & currencies
2014-07-02 20:34:21 +02:00
Fabien Pinckaers 1ce0b70a02 Speed Improvements 2014-07-02 19:03:10 +02:00
Fabien Pinckaers 470503dc8b Speed Improvement: caching security 2014-07-02 18:35:09 +02:00
Xavier Morel b18d83c0e0 [IMP] convert qweb to use lxml instead of minidom
should be >20x faster at parsing document strings and gain close to 40s on crawling
2014-07-02 16:01:36 +02:00
Simon Lejeune 2870af3b49 [FIX] navbar cache: do not use ormcache as it does not handle kwargs. instead, only get the root menu_ids in rendering context 2014-06-30 19:45:12 +02:00
Jeremy Kersten e77594c3c3 [IMP] website: backport 5112421a (unslug)
Update the regexp to be not case sensitive
2014-06-30 18:29:20 +02:00
Jeremy Kersten f4733aa895 [FIX] website - force to test isdigit on a string else a tb "'int' object has no attribute 'isdigit'" can exist if the page var was right and so already and int 2014-06-30 12:27:49 +02:00
Jeremy Kersten 7ba41e75e2 [FIX] Website pager - Be sure that page in get param is a digit else use page 1.
Need to find which controller add ?page= instead of &page= because google find some url with '?page=1?page=2' --> page = '1?page=2'. According to google, the referrer is the old website.
2014-06-30 12:10:49 +02:00
Simon Lejeune 20f4da67b3 Merge remote-tracking branch 'odoo/master' into master-report-translation-fix-sle 2014-06-27 18:17:15 +02:00
Christophe Simonis 1f57528bc6 [MERGE] forward port of branch saas-5 up to 8dfd5ea 2014-06-27 16:14:40 +02:00
Christophe Simonis 8dfd5eab01 [MERGE] forward port of branch saas-4 up to a4bc65c 2014-06-27 16:08:09 +02:00
Christophe Simonis a4bc65cdba [MERGE] forward port of branch saas-3 up to bdc4dd4 2014-06-27 16:06:37 +02:00
Simon Lejeune 95c1769d55 [FIX] typo 2014-06-27 13:46:46 +02:00
Olivier Dony a7aa853737 [FIX] website: exception handling: let redirects pass untouched
The website module normally tries to render user-friendly
error pages for any error occurring during the processing
of a website-enabled request.
This happens even for werkzeug's HTTPExceptions that have
their own response, because we want the website layout to
be applied on top of the error page.

One special sort of HTTPException should be preserved
without rewriting: the manually-crafted ones generated
with abort(), and usually wrapping a redirect response,
which bears no alteration.
2014-06-27 13:04:31 +02:00
Christophe Simonis 3db44722d4 [FIX] website: correct geoip resolver
- "`record_by_addr()` method require the city database.
- The loaded geoip database can be specified via config file
2014-06-27 12:46:56 +02:00
Simon Lejeune 195fa93168 [MERGE] backend front end integration
Render the top-menu (backend menu or frontend editbar) server-side.
Use Fontawesome icons (mail, timezone, chat).
Refactor website widgets, split Website.editorBarin editorbar, ace, editorbar- content, editorbarCustomize.
2014-06-27 11:03:34 +02:00
Antony Lesuisse 893aace122 [MERGE] website_sale optional-products 2014-06-26 12:31:15 +02:00
Olivier Dony 668b8c2b2d [FIX] Forward-port of saas-5 up to 0d330ca 2014-06-25 18:58:19 +02:00
Olivier Dony 0d330ca25c [MERGE] Forward-port of saas-4 up to fa739ac 2014-06-25 18:44:51 +02:00
Olivier Dony fa739ac8de [FIX] website: default mimetype for web-published attachments, avoids crash 2014-06-25 18:37:03 +02:00
Olivier Dony 4d488408b2 [MERGE] Forward-port of saas-3 up to 141e1b2 2014-06-25 18:34:03 +02:00
Jaydeep Barot 026e38b48f [REM] Unnecessary size parameters on char fields 2014-06-25 17:13:43 +02:00
Fabien Meghazi f988d75035 [FIX] check after openerp's AccessErrors in website's _handle_exception 2014-06-25 12:20:40 +02:00
Christophe Matthieu f0ca6fbf75 merge upstream 2014-06-25 12:02:10 +02:00
Fabien Meghazi 4e0799e163 [FIX] _handle_exception() logic amongst requests and ir_http objects
Changes in website's ir_http#_handle_exception():

- exception is mandatory, can't be None anymore
- we don't touch non website_enabled requests
- we don't touch explicits plain responses from parent
- logic flow is now easier to read (I hope so)

Change in website's ir_http#_dispatch():

- In case of real 404, instead of returning self._handle_exception(),
  just let parent do the job (so we call super())
2014-06-25 11:47:44 +02:00
Christophe Simonis 5112421a93 [FIX] website: correct slug parsing 2014-06-25 11:08:51 +02:00
Christophe Matthieu 204a62499a [IMP] website_sale_options 2014-06-24 15:11:53 +02:00
Christophe Matthieu bad13f0234 merge upstream 2014-06-23 10:07:56 +02:00
Franck Bret b4afff3618 Unify website slugify method behavior with or without python-slugify, and add some unit tests 2014-06-20 11:25:44 +02:00
Xavier Morel 56009e8804 [FIX] website: missing timezone conversion back to UTC
In t-field, datetime fields (formatted and not formatted versions) are
converted to the context/user's timezone (through
fields.datetime.context_timestamp) when displayed, but were saved without
converting back so the next display would go forward (or back) of the user's
tzoffset.

Fix that by applying context_timestamp's conversion backwards, from the
context/user's timezone back to UTC, before saving the field's value.
2014-06-18 16:09:02 +02:00
Christophe Matthieu 6ba14b38cb [FIX] website: geoip can't be none 2014-06-18 15:43:28 +02:00
Christophe Matthieu 890a9ac652 [IMP] website: set geoip in user session 2014-06-18 14:50:24 +02:00
Xavier Morel 1587663fd2 [FIX] postprocessing of request arguments in website
If website is installed but not used/enabled for the current controller,
overridden methods like _get_converters will *still run* for the controller's
dispatch.

This means a ModelConverter used in a controller with website installed but
not enabled will use website.models.ir_http.ModelConverter, not
base.ir.ir_http.ModelConverter, and base's args postprocessing will *not* be
able to convert the placeholder object to a real UID, only website's
postprocessing can do so.

And as far as I can see there's no reason to skip the URL building validation
either, only the multilang stuff relies on and requires that the controller be
website enabled (and in fact that it be multilang enabled), so only *that*
should be gated behind a flag.

Also always call super(), there's no reason not to and others might add args
to postprocess on base rather than website, ending up after website in the
MRO.
2014-06-13 16:11:56 +02:00
Olivier Dony f15cbd6520 [MERGE] Forward-port saas-4 bugfixes up to ad4c6ca 2014-06-12 18:54:36 +02:00
Olivier Dony 6b85d80f23 [FIX] Wrap werkzeug.utils.escape() to accomodate signature change in 0.9
We always want to escape quotes (") as part of the process of
generating HTML output. This option (quote=True) turned into
an implicit flag with a DeprecationWarning in werkzeug 0.9.0
It is likely to disappear in a future release of werkzeug too.
A wrapper avoids this warning without loss of compatibility
2014-06-10 18:46:40 +02:00
Xavier Morel 46712acaec [FIX] bunch of changes lost in incorrect merge f4d78ae738 2014-05-30 17:00:52 +02:00
Xavier Morel d325c0caef [REV] attempt to revert incorrect removals in f4d78ae738 2014-05-30 16:00:28 +02:00
Olivier Dony 04211015fc [MERGE] Forward-port of latest saas-4 fixes, up to 0452851 2014-05-27 20:49:49 +02:00
Christophe Simonis 045285123f [FIX] website: correct bad code indentation introduced during previous commit 2014-05-27 18:46:18 +02:00
Olivier Dony fd21abd847 [MERGE] Forward-port latest saas-3 bugfixes, up to 30f43da 2014-05-27 17:18:43 +02:00
Xavier Morel e06f5b414b [IMP] inherit_option_id -> application 2014-05-27 12:13:51 +02:00
Xavier Morel d67161b649 [IMP] renamed some stuff for clarity 2014-05-27 11:57:06 +02:00
Xavier Morel da4441246e [IMP] use set to collect inherit_id and inherit_option_id
Also add a few comments to note understanding of code
2014-05-27 11:57:05 +02:00
Xavier Morel 4e3864c1fb [IMP] no need to ensure an actual context if the method does not use it
just forwarding the context object does not count as using it, if callees want
a context they can ensure they've got one on their own
2014-05-27 11:57:04 +02:00
Xavier Morel 85c466611a [IMP] don't pointlessly recreate view_obj every time _views_get is called, better use of pool & data APIs 2014-05-27 11:57:04 +02:00
Xavier Morel ad33728043 [IMP] use sorted + key instead of sort + cmp 2014-05-27 11:57:03 +02:00
Xavier Morel 3d91b2dfa2 [REM] unused stack_result parameter 2014-05-27 11:57:03 +02:00