diff --git a/frontend/client/src/views/fields/password.js b/frontend/client/src/views/fields/password.js index eaa555cd6d..b26c6c0781 100644 --- a/frontend/client/src/views/fields/password.js +++ b/frontend/client/src/views/fields/password.js @@ -33,12 +33,16 @@ Espo.define('Views.Fields.Password', 'Views.Fields.Base', function (Dep) { events: { 'click [data-action="change"]': function (e) { - $(e.currentTarget).addClass('hidden'); - this.$element.removeClass('hidden'); - this.changing = true; + this.changePassword(); }, }, + changePassword: function () { + this.$el.find('[data-action="change"]').addClass('hidden'); + this.$element.removeClass('hidden'); + this.changing = true; + }, + data: function () { return _.extend({ isNew: this.model.isNew(), @@ -57,7 +61,12 @@ Espo.define('Views.Fields.Password', 'Views.Fields.Base', function (Dep) { afterRender: function () { Dep.prototype.afterRender.call(this); + this.changing = false; + + if (this.params.readyToChange) { + this.changePassword(); + } }, fetch: function () { diff --git a/frontend/client/src/views/user/record/edit.js b/frontend/client/src/views/user/record/edit.js index a403c3d0c1..1c2a1483be 100644 --- a/frontend/client/src/views/user/record/edit.js +++ b/frontend/client/src/views/user/record/edit.js @@ -50,14 +50,16 @@ Espo.define('Views.User.Record.Edit', 'Views.Record.Edit', function (Dep) { name: 'password', type: 'password', params: { - required: self.isNew + required: self.isNew, + readyToChange: true } }], [{ name: 'passwordConfirm', type: 'password', params: { - required: self.isNew + required: self.isNew, + readyToChange: true } }] ],