diff options
| author | Mohammed Shekha <msh@odoo.com> | 2020-03-12 10:28:30 +0000 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2020-03-24 08:02:13 +0000 |
| commit | 5353fb249609e89485a63d06d4f2088b6a9d307d (patch) | |
| tree | bdbbe35844c1fe295f6c022f1cb6ec8ef1791a78 /addons | |
| parent | efd5401ee1efbdd388d9623d59a96353e93bf21d (diff) | |
[IMP] web: trim FieldEmail widget value
before this commit, email widget was not trimming value and due to which
space aroung email value remain as it is added by user.
after this commit, email widget will trim the value and remove leading/trailing
space.
task-2197432
closes odoo/odoo#47470
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/web/static/src/js/fields/basic_fields.js | 14 | ||||
| -rw-r--r-- | addons/web/static/tests/fields/basic_fields_tests.js | 23 |
2 files changed, 37 insertions, 0 deletions
diff --git a/addons/web/static/src/js/fields/basic_fields.js b/addons/web/static/src/js/fields/basic_fields.js index 9bdf4bc62a1..879ee978220 100644 --- a/addons/web/static/src/js/fields/basic_fields.js +++ b/addons/web/static/src/js/fields/basic_fields.js @@ -1506,6 +1506,20 @@ var FieldEmail = InputField.extend({ this.$el.text(''); } }, + /** + * Trim the value input by the user. + * + * @override + * @private + * @param {any} value + * @param {Object} [options] + */ + _setValue: function (value, options) { + if (this.field.trim) { + value = value.trim(); + } + return this._super(value, options); + }, //-------------------------------------------------------------------------- // Handlers diff --git a/addons/web/static/tests/fields/basic_fields_tests.js b/addons/web/static/tests/fields/basic_fields_tests.js index eaa41651c20..6bd62b2d25c 100644 --- a/addons/web/static/tests/fields/basic_fields_tests.js +++ b/addons/web/static/tests/fields/basic_fields_tests.js @@ -1065,6 +1065,29 @@ QUnit.module('basic_fields', { form.destroy(); }); + QUnit.test('email field trim user value', async function (assert) { + assert.expect(1); + + const form = await createView({ + View: FormView, + model: 'partner', + data: this.data, + arch: '<form><field name="foo" widget="email"/></form>', + res_id: 1, + viewOptions: { + mode: 'edit', + }, + }); + + await testUtils.fields.editInput(form.$('input[name="foo"]'), ' abc@abc.com '); + await testUtils.form.clickSave(form); + await testUtils.form.clickEdit(form); + assert.strictEqual(form.$('input[name="foo"]').val(), 'abc@abc.com', + "Foo value should have been trimmed"); + + form.destroy(); + }); + QUnit.module('FieldChar'); |
