Commit Graph
603 Commits
Author SHA1 Message Date
qsm-odoo a2ae219d4e [FIX] web_editor, website: fix customize_template_get
Commit e11f23b701 split the website
customize_template_get into web_editor and website ones. This split
was not perfect and commit 20861b482a
tried to make it work... but did not made it totally and added an
indirect dependency to website module in web_editor...

As the final result is wrong and inconsistent and that the previous
9.0 implementation was already ugly, this was not possible to make
a consistent full-stable fix.

This commit tries to make a fix as stable as possible (the main method
name did not change, the arguments did not change, their purpose is
the same, ...) which makes the code work and be less ugly. However,
the function returns are now slightly different (and JS depends on it).
It returns only valid view information (not header stuff which is not
related to anything and the inherit_id value is now a combination of
the inherit view id and name). Also, a new private method has been
created.

Also, the method contained code which was deprecated since saas-6 but
was never removed (and never broke anything "by chance").

In master these methods will be refactored to make more sense.
2016-10-14 13:16:49 +02:00
Frédéric Gilson ad8af74477 [FIX] website,account,website_sale: Enhance and clean website and ecommerce planners
Lots of typos, wrong links, outdated content.
2016-10-03 16:59:38 +02:00
Martin Geubelle e11f23b701 [REF] web_editor, website: move ACE editor to web_editor
The commit e59a7fe3ff has moved
the ACE editor from website to web_editor. As some code on ir_ui_view
was used for this widget, the code has also been moved to web_editor.
2016-09-28 16:55:51 +02:00
Jérome Maes bd7543f4f7 [FIX] website: migration typo and default method for website.menu 2016-09-27 17:05:34 +02:00
Christophe Simonis 37ea415c99 [FIX] website: remove duplicated field 2016-09-27 13:21:41 +02:00
Martin Trigaux 11812b0b9e [FIX] all: remove external ids fakely from base
Several modules defines records with the external ID `base.foo_bar` while it is
created inside this module (typically menus and groups).
While there is no technical reasons to do so but this may introduce issues:

- these records will not be deleted during uninstall
- if a language is loaded before the installation of the module, it won't be
  translated

The uninstallation will only remove the records with an external id linked to
this module (these would only be removed when removing base).

Installing a language before the module will drop the translations not linked
to an existing external id (as it can not be resolved).

This commit correct all the external ids tagged as from base or other incorrect
modules.
2016-09-02 16:14:26 +02:00
Raphael Collet 70dec2d896 [REF] registry: now mapping model name to model class 2016-08-31 17:21:59 +02:00
Raphael Collet 75dc39e042 [REF] openerp.http: make request.context consistent with request.env.context 2016-08-31 17:21:58 +02:00
Denis Vermylen (dve) f90290d1c2 [IMP] website,w_sale: Website Admin settings view
- Add optional products and pricelists to ecommerce section
- add mail template sent when confirming a sale order
- rename and clarify using radio widgets
2016-08-31 17:17:37 +02:00
Christophe Matthieu 50890347c1 [IMP] website: increase in performance using the cache
Avoid the excessive use of with_context method
2016-08-29 15:32:44 +02:00
Nicolas Martinelli 61f2c90d50 [FIX] website: Google Maps API Key
Move the key field to the website config
2016-08-29 08:32:12 +02:00
Nicolas Martinelli c82b65c855 [IMP] website, website_{*}: Google Maps API Key
As of June 22 2016, the use of API key is required to access the
following:
- Google Maps JavaScript API
- Google Static Maps API
- Google Street View Image API

https://developers.google.com/maps/pricing-and-plans/standard-plan-2016-update

For domains accessing the API before June 22, it will still work without
an API key. Since Google advises to use the API key, we hide the Maps if
no API key is defined.
2016-08-25 16:33:23 +02:00
Simon Lejeune f9d2f0b509 [FIX] various: slug of a non-existing record
better patch for rev e9b649b555

* also fixes website_event which present the same issue (depends
  on a function that slugs)
* raise an exception when slug is called with wrong arguments
  instead of returning None (which was unclear)
* before calling slug in a function where we got a depends, check
  that the record is actually created
2016-08-22 19:48:16 +02:00
Simon Lejeune e9b649b555 [FIX] website, website_slides: slug of a non-existing record
When you execute the slug method on a virtual record (not yet
saved, virtualid/newid) the slugs obviously fails as it needs
an id and a display_name.

This issue happens when there's a depends on a function field
using the slug method: just after the create and during the
onchanges, they'll raise.

This patch makes the slug method returns None in these case,
anyway the depends are re-triggered after the write and at
this time they have an id and everything is working fine.
2016-08-22 15:19:05 +02:00
Raphael Collet 38e7a1318a [REM] most uses of self.pool 2016-08-16 09:55:46 +02:00
Jérome Maes 9f6ecb239e [REF] website_*: clean method to override when using 2016-08-04 12:02:14 +02:00
Jérome Maes 8a399930f3 [REF] website_*: remove render method on website
Since saas-3, website controllers use `request.website.render`
to render the template of a web page. This was kept for retro
compatibility. It's time to stop using deprecated stuff.
Same for `_render` method on website.

'json' route don't use `request.render` since
`JsonRequest` has no `render` method.
2016-08-04 12:02:14 +02:00
Ravi Gadhia fd09ddb6f3 [MIG] website: migration to new api
Migration of website module to new API.
The tricky phase is ir_http.py : we need to use `request.env`
only when the authenfication phase is done. Normally by
calling `super` of `_dispatch` method, but website module
required it to be done before. This is important since
`env`is a lazy property of `request` object.

Some hack were kept since this commit is a migration ('RequestUID'
in ir.http, ...)

Some docstrings were added.
2016-08-04 12:02:14 +02:00
Jérome Maes 73749499f0 [MOV] website: split files, reoganize file per models 2016-08-04 12:02:13 +02:00
fwi-odoo d4e813b873 [REF] web, *: change deprecated import openerp.addons.web.http to odoo.http
We also remove the mock in web as there is no need for it anymore.
2016-08-03 13:42:05 +02:00
Fabien Pinckaers 3ff7f12bb7 [IMP] website: improving rename dialog 2016-07-04 17:24:00 +02:00
Christophe Matthieu 83ba577c30 [IMP] qweb: improve code documentation 2016-06-14 13:12:19 +02:00
Raphael Collet a32053d308 [IMP] qweb: rename methods + small code improvements
_switch_directives() -> _compile_directives()
_serialize_static_attributes() -> _compile_static_attributes
2016-06-14 13:12:19 +02:00
Christophe Matthieu 1e48122800 [IMP] qweb: don't use directive for static content 2016-06-14 13:12:18 +02:00
Christophe Matthieu f015746549 [REM] ir_http: remove cache for public user (no longer necessary) 2016-06-14 13:12:17 +02:00
Christophe Matthieu 1583194845 [IMP] qweb: typo: remove qwebcontext and use values 2016-06-14 13:12:15 +02:00
Christophe Matthieu b3302398bc [IMP] ir.qweb: extract and create independent qweb class from ir.qweb
The goal is to make the code more readable, more easily be optimized, allowing to share the library "QWEB" (python and js) separately Odoo.
2016-06-14 13:12:14 +02:00
Christophe Matthieu d9efca0908 [IMP] qweb: t-field-options is a python dict, safe_eval for compile template, not need to eval in field methods 2016-06-14 13:12:14 +02:00
Christophe Matthieu 7ede9bcb2d [IMP] base ir.qweb: compile template (and use ast) to improve rendering speed
* The compiled templates are cached per user, lang, inherit context values
* ir.ui.fields: attributes method return an dict, and record_to_html return only the content value of the field
* all rendered text use build_text and all attributes use build_attribute
* t-esc-options is removed and replace by format_value method
* AssetsBundle receive the list files and remains
2016-06-14 09:46:25 +02:00
Christophe Simonis e4500d06fc [MERGE] forward port of branch saas-10 up to 57944db 2016-05-26 16:55:37 +02:00
Christophe Simonis 57944db19a [MERGE] forward port of branch saas-9 up to b7fce22 2016-05-26 16:48:33 +02:00
Christophe Simonis b7fce227cc [MERGE] forward port of branch 9.0 up to 9bd223f 2016-05-26 16:47:37 +02:00
Julien Legros 9bd223f50d [FIX] website: robust attribute checking
When installing website or one of its dependencies directly, the website
attribute is not defined on request. If the installation triggers qweb
rendering [1], we need to correctly check the presence of the website
attribute, which this commit does.

[1]: This is the case in website_blog since
4a132e2afb
2016-05-26 16:44:01 +02:00
Jeremy Kersten 93e0980035 [IMP] openerp: tools - merge --debug mode in --dev mode
- Merge debug mode in dev mode.
- Allow to select dev feature ony by one

--dev=all will active all dev tool
--dev=
      xml        will read template in xml file and not in db
                 if not updated meanwhile
      reload     Add a watcher to reload the server if python code is modified
      qweb       Allow to add t-debug in template qweb
      werkzeug   Active the werkeug debugger console when an exception is raised
      (i)p(u)db  Allow to break before that the error is raised (old --debug mode)

To NEVER uses in production, since it give a console access in frontend.
2016-04-27 10:28:49 +02:00
Christophe Simonis 9b5ba8b238 [MERGE] forward port of branch saas-10 up to 21c7ef8 2016-04-12 12:38:02 +02:00
Christophe Simonis 21c7ef8bf5 [MERGE] forward port of branch saas-9 up to eb44341 2016-04-12 11:56:44 +02:00
Christophe Simonis eb443410ff [MERGE] forward port of branch 9.0 up to afba8ce 2016-04-12 11:12:57 +02:00
Olivier Dony a445fc996b [MERGE] Forward-port saas-6 up to edf81b54b5 2016-04-11 14:38:53 +02:00
Olivier Dony edf81b54b5 [MERGE] Forward-port 8.0 up to bf163700e4 2016-04-11 14:35:49 +02:00
Nicolas Lempereur 0c9355a8fb [FIX] website: prefer to get exact language
request.website.get_languages returns a list of tuple in the form:

        (`language code`, `language name`)

With this commit the code first check if there is a language exactly
matching, and only if failed check if there is a match on the short
form.

closes #11613
opw-672412
2016-04-06 15:31:58 +02:00
Christophe Simonis 6c8141a1df [MERGE] forward port of branch saas-10 up to 2483327 2016-04-01 16:15:35 +02:00
Christophe Simonis ddb0fb2739 [MERGE] forward port of branch saas-9 up to 59d3f63 2016-03-24 16:53:45 +01:00
Raphael Collet 4ddc323139 [FIX] base: fix and complete migration of base/ir
- add or fix decorators on methods
- fix most compute methods (wrong dependencies)
- revert changes in `eval_context` of `ir.actions`
- various code simplifications and improvements
- migrate methods that were not
- ir_qweb: modify `QWebContext` to take an environment instead of `cr`, `uid`, `context`
- ir_qweb: convert `AssetsBundle` to use new API `env`
- ir_ui_view: use decorator `multi` on method `read_combined`
- ir_ui_view: ensure that method `render` is never called with an xml_id
- ir_ui_view: factor out part of the `ormcache` key of method `_read_template`
2016-03-21 13:46:44 +01:00
Deep Bundela eb04aa1e39 [MIG] base: migrate base/ir to the new API 2016-03-21 13:46:44 +01:00
Christophe Simonis 5238b77430 [MERGE] forward port of branch 9.0 up to e8b965f 2016-03-16 16:09:13 +01:00
Christophe Simonis a34d496069 [MERGE] forward port of branch saas-6 up to 1431ba2
Also include 2939800ed4 which seems to
have been forgotten during previous forward-ports
2016-03-16 15:30:03 +01:00
Darshan Kalola 54393e9aa2 [ADD] website: Easy website Favicon configuration from website admin panel
Easy solution: a binary field in website.config.settings
2016-03-11 14:02:21 +01:00
Denis Ledoux 6e09293b7d [MERGE] forward port of branch 9.0 up to 8e69043 2016-03-11 11:42:43 +01:00
Nicolas Lempereur b0b6b9afb5 [FIX] website{,_version}: get current version view
customize_template_get which gets template inheritence informations was
not taken into account by website version, so at one time we could get
an erroneous view version instead of the wanted one.

This commit refactor some of the code adding a function to sort view and
find the most suitable one (based on website and version in request).

This function is then used in ir.ui.view `_view_obj`'s function to
select the correct view.

related to opw-667225
2016-03-08 17:13:58 +01:00
Christophe Simonis e46f65ab26 [MERGE] forward port of branch saas-6 up to 62fc257 2016-03-04 15:03:39 +01:00