Commit Graph

168 Commits

Author SHA1 Message Date
Thibault Delavallée c76a3aba8f [CLEAN] ir_qweb: simplified and cleaned QWebcontext implementation
- now using openerp.tools.safe_eval, instead of a custom eval with custom builtins
- removed undefined_handler, hardcoded to a lambda function that returns None for
a missing attribute

tools.safe_eval: added a parameter locals_builtins. This allows to copy the builtins
in the locals. This hack is due to the fact that the locals always returns None, allowing
to simplify templates. Otherwise we would have to test the existence of each variable
before actually using it.
However as the locals always return None for every key, the globals are never checked.
Copying the builtins inside the local allows to have a complete locals, but sligtly
break the globals/locals separation.

To be reviewed and approved.

bzr revid: tde@openerp.com-20140116182750-1rnw8iljt5a9gb4u
2014-01-16 19:27:50 +01:00
Thibault Delavallée ab5c23079a [MERGE] Sync with trunk, solved conflicts.
bzr revid: tde@openerp.com-20140116091716-zk1n5ots94i65io5
2014-01-16 10:17:16 +01:00
Xavier Morel b741852c3d [IMP] correctly handle writing to a view without a model_data (e.g. test views)
bzr revid: xmo@openerp.com-20131218134932-382cvndk8asr82ip
2013-12-18 14:49:32 +01:00
Thibault Delavallée 56f18f56c5 [FIX] ir_ui_view: still usign context without being sure it exists
bzr revid: tde@openerp.com-20131218105511-fuf8ca99nimzbcpc
2013-12-18 11:55:11 +01:00
Fabien Meghazi f229af7b57 [IMP] Set ir.model.data noupdate flag to touched views
bzr revid: fme@openerp.com-20131217131439-b0rv83oeqat5rue8
2013-12-17 14:14:39 +01:00
Xavier Morel 0546993327 [FIX] merge from trunk and fix handling of view inheritance
main problem, view inheritance model field would use model from the
root view (after following inherit_id links) rather than the base view
(the requested one) -> with divergent models, it was possible for the
requested view itself to never be returned.

bzr revid: xmo@openerp.com-20131212134422-uxg6h21w1jhth9ow
2013-12-12 14:44:22 +01:00
Christophe Matthieu 1bf1f0de8f [FIX] forgotten fix for fields_view_get in orm.py (moved to ir_ui_view.py): [MERGE] forward port of branch saas-2 up to revid 4987 chs@openerp.com-20131127105828-ng8z4by1tszmj9d2
bzr revid: chm@openerp.com-20131202191411-edf01rvvpngyezok
2013-12-02 20:14:11 +01:00
Fabien Pinckaers e477c1f617 [FIX] temporary fix, should be cleaned by removing editable context
bzr revid: fp@tinyerp.com-20131201115142-mok8vlkua5f4tb5l
2013-12-01 12:51:42 +01:00
Fabien Pinckaers 4a3529afdf [IMP] Performance improvement: improved cache with context, better get_object
bzr revid: fp@tinyerp.com-20131130154723-05r90b2yhwwovpx4
2013-11-30 16:47:23 +01:00
Fabien Meghazi 071ef9702b [REV] Previous commit loses the inherit_branding context's key
bzr revid: fme@openerp.com-20131128094809-l77nyyqglzha3tuh
2013-11-28 10:48:09 +01:00
Fabien Pinckaers 2fef12e984 [IMP] cache on read_template, divide by 2 number of SQL queries on page loading
bzr revid: fp@tinyerp.com-20131127230024-cqhvjy9yg57cxunv
2013-11-28 00:00:24 +01:00
Fabien Pinckaers 0dbc41aca0 [IMP] access right when accessing object, not second checks in view rendering
bzr revid: fp@tinyerp.com-20131127223831-7r06xxuimrx21fzw
2013-11-27 23:38:31 +01:00
Fabien Meghazi 54b15928cf [FIX] ahem, fix previous commit
bzr revid: fme@openerp.com-20131121205959-jvlmcofp5yq5s7ht
2013-11-21 21:59:59 +01:00
Fabien Meghazi 9f43e80662 [IMP] rendering context not mandatory for ir.ui.view#render()
bzr revid: fme@openerp.com-20131121203230-uo485jls4uk15n7x
2013-11-21 21:32:30 +01:00
Xavier Morel 3389198f81 [IMP] remove unnecessary keys() calls
bzr revid: xmo@openerp.com-20131104125735-wtnngolx07755o1u
2013-11-04 13:57:35 +01:00
Xavier Morel 55c38976c0 [ADD] cr, uid, context to qweb.render & qweb rendering context
bzr revid: xmo@openerp.com-20131018144546-p693x1iur5gm98ez
2013-10-18 16:45:46 +02:00
Xavier Morel 8d6302f260 [IMP] use existing tools for the job
bzr revid: xmo@openerp.com-20131018141510-1x1w5ba5fqfzebfk
2013-10-18 16:15:10 +02:00
Xavier Morel 64ea89e3be [MERGE] from parent
bzr revid: xmo@openerp.com-20131014085215-qoqytud1mkpdqbz0
2013-10-14 10:52:15 +02:00
Christophe Matthieu 1a0b74d033 [IMP] ir_ui_view: improve security dev. Log a warning message if the browse record used in the views have a SUPERUSER access.
bzr revid: chm@openerp.com-20131008095805-8ek62kl4k0spw9b8
2013-10-08 11:58:05 +02:00
Xavier Morel d414f8c7cf [IMP] make view rendering engine kinda sorta pluggable
bzr revid: xmo@openerp.com-20131008082555-l8b2mu8ny8ouf5n5
2013-10-08 10:25:55 +02:00
Xavier Morel 0bce14ccd7 [MERGE] from trunk for tests fixes
bzr revid: xmo@openerp.com-20131007093527-gkem29e7agcmt0rd
2013-10-07 11:35:27 +02:00
Xavier Morel cd31b4af4d [IMP] move field conversion around
ir.fields architecture turns out not to be a very good or simple fit,
especially as different widgets/fields need different granularity of
customizations. Having objects dedicated to each field type/widget
makes things simpler as it allows a conversion pipeline which can be
plugged into at any point.

bzr revid: xmo@openerp.com-20131007091556-03azc2mdhcb7kmwo
2013-10-07 11:15:56 +02:00
Thibault Delavallée b94389dfca [FIX] ir_ui_view: MOVABLE_BRANDING back, was deleted by error when merging trunk
bzr revid: tde@openerp.com-20131007090206-f0y2vtv84113tbcd
2013-10-07 11:02:06 +02:00
Xavier Morel 856e3d0b91 [MERGE] from trunk
bzr revid: xmo@openerp.com-20131007085815-sfzb0lrhysxsdxzg
2013-10-07 10:58:15 +02:00
Thibault Delavallée b74c255168 [MERGE] Sync with trunk until revision 4967 (including al cleaning)
bzr revid: tde@openerp.com-20131007081039-adyay7oy1tpx4g2k
2013-10-07 10:10:39 +02:00
Antony Lesuisse 31a8dc36e5 [REM] shortcuts, deprecated by bookmarks
bzr revid: al@openerp.com-20131006132424-bpd8w0zzuf42s55l
2013-10-06 15:24:24 +02:00
Xavier Morel 40ab4f6e83 [MERGE] from trunk
bzr revid: xmo@openerp.com-20131004144724-pj6kd1ftw0sy0lbd
2013-10-04 16:47:24 +02:00
Xavier Morel 81a82ca37f [IMP] make qweb into an openerp object
also attempt to improve/simplify a few implementation details

bzr revid: xmo@openerp.com-20131004114155-j2639jx6dwvkz3hh
2013-10-04 13:41:55 +02:00
Thibault Delavallée 54933118a4 [MERGE] Sync with trunk until revision 4957.
bzr revid: tde@openerp.com-20131002133820-8xomdumexexqp3pk
2013-10-02 15:38:20 +02:00
Fabien Meghazi 9051c44d68 [ADD] oe-source-id in inherit branding
bzr revid: fme@openerp.com-20130925154155-v23u1l1go1spedzz
2013-09-25 17:41:55 +02:00
Fabien Meghazi e01f97e8f7 [MERGE] upstream
bzr revid: fme@openerp.com-20130925085305-wbmdcm75i6o1qm30
2013-09-25 10:53:05 +02:00
Thibault Delavallée 2939c58e72 [CLEAN] ir_ui_view: removed print statement
bzr revid: tde@openerp.com-20130923144830-i5iqzfc1pydm9pge
2013-09-23 16:48:30 +02:00
Thibault Delavallée e07531f451 [FIX] don't try to set attributes on comments, it makes no sense
bzr revid: tde@openerp.com-20130923143349-y922fxtbkotsjzpf
2013-09-23 16:33:49 +02:00
Fabien Meghazi 1fbe796ec3 [WIP] Temporary qweb translation
TODO: refactor of ir.ui.view in order to abstract translations

bzr revid: fme@openerp.com-20130923114649-0ykl77hclzmjmkq3
2013-09-23 13:46:49 +02:00
Xavier Morel 724bbffc88 [FIX] Partially revert xmo@openerp.com-20130812074509-yopeb4pxtsads4d9
Change attempted to simplify branding distribution, but based node
branding on final view. To be able to rewrite, node branding must be
based on source views positions before applying inheritance.

Reintroduce manual generation of xpath in distribute_branding as
ElementTree.getpath() can't handle it.

Note: why isn't branding distribution performed during initial views
reading (e.g. inherit_branding)? Surely that would obviate the need
for special casing and manually creating paths no?

bzr revid: xmo@openerp.com-20130919130847-3t8zfpv9m9pcibg0
2013-09-19 15:08:47 +02:00
Christophe Simonis ffdcf33673 [IMP] ir.ui.view: log traceback when validation of view arch fail
bzr revid: chs@openerp.com-20130919114508-72pv3u1stxw4l3ry
2013-09-19 13:45:08 +02:00
Christophe Simonis fd9a9577df [MERGE] forward port of branch saas-1 up to revid 4908 dle@openerp.com-20130918160049-fo88fl7uyhfoofkv
bzr revid: chs@openerp.com-20130918171816-cxxt3c9ktcq4a8oz
2013-09-18 19:18:16 +02:00
Xavier Morel 4b89b246a8 [FIX] distribute branding on t-if, t-for and t-att
bzr revid: xmo@openerp.com-20130917163708-u61ol5yqr3nrd9mu
2013-09-17 18:37:08 +02:00
Xavier Morel 47fac4836b [IMP] avoid using Element.attrib when unnecessary
bzr revid: xmo@openerp.com-20130917154505-4kf77rqjrg1bncvk
2013-09-17 17:45:05 +02:00
Xavier Morel 8159503eb1 [FIX] ensure we distribute branding only over actual element, not over e.g. comments
bzr revid: xmo@openerp.com-20130917154414-zdbv7861e9p6mdgi
2013-09-17 17:44:14 +02:00
Christophe Simonis 7081038378 [IMP] validate custom views at the end of update of database
bzr revid: chs@openerp.com-20130912182926-3lectt8mvd9smwfb
2013-09-12 20:29:26 +02:00
Christophe Simonis e13ffe7e11 [MERGE] forward port of branch 7.0 up to revid 5075 chs@openerp.com-20130912141018-qmcyase8zqov9d01
bzr revid: chs@openerp.com-20130906165207-1oklc8cqs0rex3kg
bzr revid: dle@openerp.com-20130909170248-a4t5y6qd5ikkhhac
bzr revid: dle@openerp.com-20130911083736-6jfkb140jxbbx7j6
bzr revid: chs@openerp.com-20130912150616-v0c383trj7gaa7eu
2013-09-12 17:06:16 +02:00
Xavier Morel cbb5bf3c56 [MERGE] from parent
bzr revid: xmo@openerp.com-20130912141037-xqu3qpcyjph4xltu
2013-09-12 16:10:37 +02:00
Christophe Simonis 1d91378ce2 [FIX] ir.ui.view: properly validate newly created inheriting views
When a new inheriting view is imported during a module
    installation, it is validated thanks to the _constraints
    on the ir.ui.view model. However the validation uses
    a rather convoluted system for validating the whole
    view tree at once (root view + all inherited changes)
    while only taking into account the views that belong
    to modules that are currently loaded.

    This complicated system is necessary to be able to
    operate on-the-fly at any point during the registry
    loading/initialization.

    Now because _constraints are checked during create()
    this particular validation happens *before* the
    external ID (ir.model.data entry) of that new view
    can be created (it obviously needs to wait until
    the view record is inserted). As a consequence the
    view validation cannot determine the module to
    which that new view belongs, and was erroneously
    ignoring it.
    Changing the view filtering to also include views
    that have triggered this check.
    Manually created views are not check during registry
    update.

bzr revid: chs@openerp.com-20130912141018-qmcyase8zqov9d01
2013-09-12 16:10:18 +02:00
Xavier Morel cc187b884b [IMP] re-enable XML check on view arch
bzr revid: xmo@openerp.com-20130912124334-skafqdt0hxna7frx
2013-09-12 14:43:34 +02:00
Xavier Morel bb14116785 [MERGE] from trunk
bzr revid: xmo@openerp.com-20130909095042-zf9p1qybf4f2b7gu
2013-09-09 11:50:42 +02:00
Xavier Morel a61e7b5efa [REM] view.save, move to website module where it belongs
bzr revid: xmo@openerp.com-20130906130905-86ul9efvjt6wo1j2
2013-09-06 15:09:05 +02:00
Xavier Morel 4f6af7f857 [REM] page attribute on views, doesn't belong in server
bzr revid: xmo@openerp.com-20130906091108-gk2biyqyi2xaekxl
2013-09-06 11:11:08 +02:00
Xavier Morel 3d42f63246 [IMP] remove unused imports
bzr revid: xmo@openerp.com-20130906091013-4smmete74hc9kpj1
2013-09-06 11:10:13 +02:00
Christophe Matthieu c36bfe173e [MERGE] from trunk
bzr revid: chm@openerp.com-20130828161130-641xsmbr8xm53xjx
2013-08-28 18:11:30 +02:00