poker-html-client
Version:
HTML client for online poker
49 lines (41 loc) • 1.3 kB
text/typescript
/* tslint:disable:no-string-literal */
import { debugSettings } from "../debugsettings";
export class PageBase implements Page {
/**
* Indicating whether page is currently visible
*/
public visible: KnockoutObservable<boolean>;
constructor() {
this.visible = ko.observable(false);
}
/**
* Method called upon page activation.
* pageName String Name of the page which is activated.
*/
public activate(pageName?: string) {
const theConstructor: any = this["constructor"];
this.trace("Activate " + theConstructor.name);
this.visible(true);
}
/**
* Method called upon page deactivation.
* pageName String Name of the page which is deactivated.
*/
public deactivate(pageName?: string) {
const theConstructor: any = this["constructor"];
this.trace("Deactivate " + theConstructor.name);
this.visible(false);
}
/**
* Performs check that page could be activated
*/
public canActivate() {
return true;
}
private trace(message: string) {
if (debugSettings.ui.tracePages) {
// tslint:disable-next-line:no-console
console.log(message);
}
}
}