diff --git a/js/forum/dist/app.js b/js/forum/dist/app.js index 59581b663..60d91d479 100644 --- a/js/forum/dist/app.js +++ b/js/forum/dist/app.js @@ -21756,10 +21756,9 @@ System.register('flarum/components/EditUserModal', ['flarum/components/Modal', ' 'Username' ), m('input', { className: 'FormControl', placeholder: extractText(app.translator.trans('core.forum.edit_user.username_label')), - value: this.username(), - onchange: m.withAttr('value', this.username) }) + bidi: this.username }) ), - m( + app.session.user !== this.props.user ? [m( 'div', { className: 'Form-group' }, m( @@ -21771,11 +21770,9 @@ System.register('flarum/components/EditUserModal', ['flarum/components/Modal', ' 'div', null, m('input', { className: 'FormControl', placeholder: extractText(app.translator.trans('core.forum.edit_user.email_label')), - value: this.email(), - onchange: m.withAttr('value', this.email) }) + bidi: this.email }) ) - ), - m( + ), m( 'div', { className: 'Form-group' }, m( @@ -21798,10 +21795,9 @@ System.register('flarum/components/EditUserModal', ['flarum/components/Modal', ' 'Set new password' ), this.setPassword() ? m('input', { className: 'FormControl', type: 'password', name: 'password', placeholder: extractText(app.translator.trans('core.forum.edit_user.password_label')), - value: this.password(), - onchange: m.withAttr('value', this.password) }) : '' + bidi: this.password }) : '' ) - ), + )] : '', m( 'div', { className: 'Form-group EditUserModal-groups' }, @@ -21820,9 +21816,8 @@ System.register('flarum/components/EditUserModal', ['flarum/components/Modal', ' 'label', { className: 'checkbox' }, m('input', { type: 'checkbox', - checked: _this3.groups[group.id()](), - disabled: _this3.props.user.id() === '1' && group.id() === Group.ADMINISTRATOR_ID, - onchange: m.withAttr('checked', _this3.groups[group.id()]) }), + bidi: _this3.groups[group.id()], + disabled: _this3.props.user.id() === '1' && group.id() === Group.ADMINISTRATOR_ID }), GroupBadge.component({ group: group, label: '' }), ' ', group.nameSingular() @@ -21856,10 +21851,13 @@ System.register('flarum/components/EditUserModal', ['flarum/components/Modal', ' var data = { username: this.username(), - email: this.email(), relationships: { groups: groups } }; + if (app.session.user !== this.props.user) { + data.email = this.email(); + } + if (this.setPassword()) { data.password = this.password(); } diff --git a/js/forum/src/components/EditUserModal.js b/js/forum/src/components/EditUserModal.js index 317c1a985..f7aa2e335 100644 --- a/js/forum/src/components/EditUserModal.js +++ b/js/forum/src/components/EditUserModal.js @@ -39,38 +39,37 @@ export default class EditUserModal extends Modal { <div className="Form-group"> <label>Username</label> <input className="FormControl" placeholder={extractText(app.translator.trans('core.forum.edit_user.username_label'))} - value={this.username()} - onchange={m.withAttr('value', this.username)} /> + bidi={this.username} /> </div> - <div className="Form-group"> - <label>Email</label> - <div> - <input className="FormControl" placeholder={extractText(app.translator.trans('core.forum.edit_user.email_label'))} - value={this.email()} - onchange={m.withAttr('value', this.email)} /> - </div> - </div> + {app.session.user !== this.props.user ? [ + <div className="Form-group"> + <label>Email</label> + <div> + <input className="FormControl" placeholder={extractText(app.translator.trans('core.forum.edit_user.email_label'))} + bidi={this.email} /> + </div> + </div>, - <div className="Form-group"> - <label>Password</label> - <div> - <label className="checkbox"> - <input type="checkbox" checked={this.setPassword()} onchange={e => { - this.setPassword(e.target.checked); - m.redraw(true); - if (e.target.checked) this.$('[name=password]').select(); - m.redraw.strategy('none'); - }}/> - Set new password - </label> - {this.setPassword() ? ( - <input className="FormControl" type="password" name="password" placeholder={extractText(app.translator.trans('core.forum.edit_user.password_label'))} - value={this.password()} - onchange={m.withAttr('value', this.password)} /> - ) : ''} + <div className="Form-group"> + <label>Password</label> + <div> + <label className="checkbox"> + <input type="checkbox" checked={this.setPassword()} onchange={e => { + this.setPassword(e.target.checked); + m.redraw(true); + if (e.target.checked) this.$('[name=password]').select(); + m.redraw.strategy('none'); + }}/> + Set new password + </label> + {this.setPassword() ? ( + <input className="FormControl" type="password" name="password" placeholder={extractText(app.translator.trans('core.forum.edit_user.password_label'))} + bidi={this.password} /> + ) : ''} + </div> </div> - </div> + ] : ''} <div className="Form-group EditUserModal-groups"> <label>Groups</label> @@ -80,9 +79,8 @@ export default class EditUserModal extends Modal { .map(group => ( <label className="checkbox"> <input type="checkbox" - checked={this.groups[group.id()]()} - disabled={this.props.user.id() === '1' && group.id() === Group.ADMINISTRATOR_ID} - onchange={m.withAttr('checked', this.groups[group.id()])}/> + bidi={this.groups[group.id()]} + disabled={this.props.user.id() === '1' && group.id() === Group.ADMINISTRATOR_ID} /> {GroupBadge.component({group, label: ''})} {group.nameSingular()} </label> ))} @@ -109,10 +107,13 @@ export default class EditUserModal extends Modal { const data = { username: this.username(), - email: this.email(), relationships: {groups} }; + if (app.session.user !== this.props.user) { + data.email = this.email(); + } + if (this.setPassword()) { data.password = this.password(); }