diff options
| author | rr- <rr-@sakuya.pl> | 2016-08-22 21:38:21 +0200 |
|---|---|---|
| committer | rr- <rr-@sakuya.pl> | 2016-08-22 21:38:34 +0200 |
| commit | fec31d7946b936ecafffcbfcb36dd4275c49c7ab (patch) | |
| tree | 2cac6d91731ecfc18dbbb1c159416948a5648e6e /client/js/controllers/user_controller.js | |
| parent | ea947ed91e5c19ca725670ba34a1db69c4e01730 (diff) | |
client/users: add exit confirmation for edit form
Diffstat (limited to 'client/js/controllers/user_controller.js')
| -rw-r--r-- | client/js/controllers/user_controller.js | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/client/js/controllers/user_controller.js b/client/js/controllers/user_controller.js index 20f8c99..7c34eb8 100644 --- a/client/js/controllers/user_controller.js +++ b/client/js/controllers/user_controller.js @@ -2,6 +2,7 @@ const router = require('../router.js'); const api = require('../api.js'); +const misc = require('../util/misc.js'); const config = require('../config.js'); const views = require('../util/views.js'); const User = require('../models/user.js'); @@ -51,6 +52,7 @@ class UserController { canDelete: api.hasPrivilege(`users:delete:${infix}`), ranks: ranks, }); + this._view.addEventListener('change', e => this._evtChange(e)); this._view.addEventListener('submit', e => this._evtUpdate(e)); this._view.addEventListener('delete', e => this._evtDelete(e)); }, errorMessage => { @@ -59,7 +61,12 @@ class UserController { }); } + _evtChange(e) { + misc.enableExitConfirmation(); + } + _evtSaved(e) { + misc.disableExitConfirmation(); if (this._name !== e.detail.user.name) { router.replace( '/user/' + e.detail.user.name + '/edit', null, false); |