diff options
| author | niv-openerp <nicolas.vanhoren@openerp.com> | 2012-03-16 12:33:22 +0100 |
|---|---|---|
| committer | niv-openerp <nicolas.vanhoren@openerp.com> | 2012-03-16 12:33:22 +0100 |
| commit | 7cee52681f157c44863a8a41f66a18480cf0055e (patch) | |
| tree | f1ad3d53ed05278c9df1f9a7d3afe406d0c26ba5 /addons/web/static/src/js | |
| parent | 36ba035431cecf4d7f3faf7b377079ce827d5809 (diff) | |
[imp] made email readonly-able
bzr revid: nicolas.vanhoren@openerp.com-20120316113322-wgg7ixwal4qwc55f
Diffstat (limited to 'addons/web/static/src/js')
| -rw-r--r-- | addons/web/static/src/js/view_form.js | 13 | ||||
| -rw-r--r-- | addons/web/static/src/js/view_page.js | 7 |
2 files changed, 11 insertions, 9 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index c6426095cb1..61cc19c3782 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -1490,10 +1490,19 @@ openerp.web.form.FieldID = openerp.web.form.FieldChar.extend({ openerp.web.form.FieldEmail = openerp.web.form.FieldChar.extend({ template: 'FieldEmail', - start: function() { - this._super.apply(this, arguments); + bind_events: function() { + this._super(); this.$element.find('button').click(this.on_button_clicked); }, + render_value: function() { + if (!this.get("effective_readonly")) { + this._super(); + } else { + this.$element.find('a') + .attr('href', 'mailto:' + this.value) + .text(this.value); + } + }, on_button_clicked: function() { if (!this.value || !this.is_valid()) { this.do_warn("E-mail error", "Can't send email to invalid e-mail address"); diff --git a/addons/web/static/src/js/view_page.js b/addons/web/static/src/js/view_page.js index c263582f94b..dd62cfb72e9 100644 --- a/addons/web/static/src/js/view_page.js +++ b/addons/web/static/src/js/view_page.js @@ -75,14 +75,8 @@ openerp.web.page = function (openerp) { return value; }, set_value: function (value) { - this.$element.find('a') - .attr('href', this.scheme + ':' + value) - .text(this.format_value(value)); } }); - openerp.web.page.FieldEmailReadonly = openerp.web.page.FieldURIReadonly.extend({ - scheme: 'mailto' - }); openerp.web.page.FieldUrlReadonly = openerp.web.page.FieldURIReadonly.extend({ set_value: function (value) { var s = /(\w+):(.+)/.exec(value); @@ -175,7 +169,6 @@ openerp.web.page = function (openerp) { }); openerp.web.page.readonly = openerp.web.form.widgets.extend({ 'frame': 'openerp.web.page.WidgetFrameReadonly', - 'email': 'openerp.web.page.FieldEmailReadonly', 'url': 'openerp.web.page.FieldUrlReadonly', 'selection' : 'openerp.web.page.FieldSelectionReadonly', 'reference': 'openerp.web.page.FieldReferenceReadonly', |
