diff options
| author | David Monjoie <dmo@odoo.com> | 2015-09-11 09:59:00 +0200 |
|---|---|---|
| committer | David Monjoie <dmo@odoo.com> | 2015-09-15 14:00:36 +0200 |
| commit | d210744ef01f10f88fcd482f9cdbe3273a05281c (patch) | |
| tree | f246a4f86bcae8ac621f725ddc488e1ff5396419 /addons/website_form/models/models.py | |
| parent | 09025549539b15eda850889ea83f3a308156c474 (diff) | |
[IMP] website_form: various improvements
- Fixed the module name and category in manifest
- Fixed website_form_blacklisted being ignored
- Unauthorized readonly and magic fields
- Reset the form on successfull submit
- Added missing date field
- Added date and datetime validation
Diffstat (limited to 'addons/website_form/models/models.py')
| -rw-r--r-- | addons/website_form/models/models.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/addons/website_form/models/models.py b/addons/website_form/models/models.py index 8fdc5e4bf9a..e6e769f59e5 100644 --- a/addons/website_form/models/models.py +++ b/addons/website_form/models/models.py @@ -1,6 +1,7 @@ from openerp import tools from openerp import models, fields, api +MAGIC_FIELDS = ["id", "create_uid", "create_date", "write_uid", "write_date", "__last_update"] class website_form_config(models.Model): _inherit = 'website' @@ -23,9 +24,8 @@ class website_form_model(models.Model): def get_authorized_fields(self): model = self.env[self.model] fields_get = model.fields_get() - domain = [('model_id', 'in', self.all_inherited_model_ids()), ('website_form_blacklisted', '=', False)] - for elem in self.env['ir.model.fields'].search(domain): + for elem in self.env['ir.model.fields'].search([('model_id', 'in', self.all_inherited_model_ids())]): if elem.website_form_blacklisted: fields_get.pop(elem.name, None) for key, val in model._inherits.iteritems(): @@ -36,6 +36,11 @@ class website_form_model(models.Model): for field in [f for f in fields_get if f in default_values]: fields_get[field]['required'] = False + # Remove readonly and magic fields + for field in fields_get.keys(): + if fields_get[field]['readonly'] or field in MAGIC_FIELDS: + del fields_get[field] + return fields_get |
