Add init hook as a way to effectively monkey patch constructors

Related to #246
This commit is contained in:
Toby Zerner
2015-09-08 10:27:02 +09:30
parent 1aaff46f8e
commit e8621636c5
6 changed files with 23 additions and 13 deletions

View File

@ -71,7 +71,7 @@ export default class UserPage extends Page {
* @param {User} user
* @protected
*/
init(user) {
show(user) {
this.user = user;
app.setTitle(user.username());
@ -90,13 +90,13 @@ export default class UserPage extends Page {
app.store.all('users').some(user => {
if (user.username().toLowerCase() === lowercaseUsername && user.joinTime()) {
this.init(user);
this.show(user);
return true;
}
});
if (!this.user) {
app.store.find('users', username).then(this.init.bind(this));
app.store.find('users', username).then(this.show.bind(this));
}
}