The App Class
(Outlook version 1)
Introduction
This app is the home page of the various mutall
services also called the index.html of the chama,
tracker, postek e.t.c
Class Summary
export abstract class app extends outlook.view{
}
/**
Properties */
public dbname :string;
public dbase?: schema.database;
public user?: outlook.user;
public products: products;
public static current: app;
public logo?: string;
public name?: string;
public tagline?: string;
public subject: outlook.subject;
public id: string;
/**
Methods */
constructor(config:app_config)
protected get_Iproducts(): outlook.assets.products
async initialize():Promise <void>
private get_role_id(ename:library.ename, dbase:schema.database): boolean
async set_dbase()
async login(User ?: outlook.user)
private async welcome_user(): Promise <void>
async activate_products(): Promise <void>
async register(): Promise<Array<string>|undefined>
private get_report(imala: library.Imala)<a href="#">: {is_error:boolean, html?:string}
private get_runtime_errors(r_results: Array<[library.Iexp, library.position]>):Array<string>
private get_subscription_data(): Array<library.label>
new_crud(mother: outlook.view, subject: outlook.subject, Xverbs: Array<outlook.assets.verb>): crud.page
async crud(subject: outlook.subject, Xverbs: Array<outlook.assets.verb>): Promise<void>
private async paint_welcome(usertype: "visitor" | "regular"): Promise<void>
private welcome_visitor()
async logout()
Properties
dbname
The database name that is retrived from a config file
dbase
The actual database constructed during initialization
user
The visitor/regular user who is attached to the application.
products
The roles available for a user of this application (as an array of class
objects, rather than a role interface). The roles a user can play in this application
static_current
Remember that static properties cannot reference class parameters, we cannot
do public static current: app<role_id, ename>
logo
Image associatd witn this app
name
The full trademark name of the application
tagline
For advertis=ing purposes
subject
The subject (entity) driving the content panel
id
The id of this application; if not given, we use this
constructors name. The short name for this application