diff options
| author | rr- <rr-@sakuya.pl> | 2016-06-14 10:31:48 +0200 |
|---|---|---|
| committer | rr- <rr-@sakuya.pl> | 2016-06-18 10:35:20 +0200 |
| commit | 54e3099c5696e0b4fc7b05fb5ecc41ab4726628b (patch) | |
| tree | 29127e1c3d3d3d9bebfccefdf148da7305e2d5b3 /client/js/api.js | |
| parent | c74f06da35af3c35d565a3c96e3d048f7a1ec011 (diff) | |
client/general: refactor control flow
- Controller lifetime is bound to route lifetime
- View lifetime is bound to controller lifetime
- Control lifetime is bound to view lifetime
- Enhanced event dispatching
- Enhanced responsiveness in some places
- Views communicate user input to controllers via new event system
Diffstat (limited to 'client/js/api.js')
| -rw-r--r-- | client/js/api.js | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/client/js/api.js b/client/js/api.js index 24537de..3390a66 100644 --- a/client/js/api.js +++ b/client/js/api.js @@ -6,8 +6,9 @@ const request = require('superagent'); const config = require('./config.js'); const events = require('./events.js'); -class Api { +class Api extends events.EventTarget { constructor() { + super(); this.user = null; this.userName = null; this.userPassword = null; @@ -136,11 +137,10 @@ class Api { options); this.user = response; resolve(); - events.notify(events.Authentication); + this.dispatchEvent(new CustomEvent('login')); }).catch(response => { reject(response.description); this.logout(); - events.notify(events.Authentication); }); }); } @@ -149,7 +149,7 @@ class Api { this.user = null; this.userName = null; this.userPassword = null; - events.notify(events.Authentication); + this.dispatchEvent(new CustomEvent('logout')); } forget() { |