A self hosted chat application with end-to-end encrypted messaging.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
import { Controller } from "./AbstractController"; import "../model/AbstractModel" import "../model/UserModel" import "../view/AbstractView" import "../view/UserView" import { Model } from "../model/AbstractModel"; import { View } from "../view/AbstractView"; import { ActiveUserViewModel } from "../viewmodel/ActiveUserViewModel"; import { UserView } from "../view/UserView"; import { UserModel } from "../model/UserModel";
export class UserController { private _model: UserModel; private _view: UserView;
constructor(model: UserModel, view: UserView) { this._model = model; this._view = view; }
/** * eventHandler */ public eventHandler(vm: ActiveUserViewModel[]): void { this._model.someBusinessMethod(vm); }
public test(): void { const activeUsersMock: ActiveUserViewModel[] = []; let activeUserViewModelMock = new ActiveUserViewModel(); activeUserViewModelMock.userName = "some user"; // activeUserViewModelMock.lastActive = "3 hrs ago";
activeUserViewModelMock.online = true; activeUsersMock.push(activeUserViewModelMock); activeUserViewModelMock = new ActiveUserViewModel(); // activeUserViewModelMock.lastActive = "3 hrs ago";
activeUserViewModelMock.online = true; activeUserViewModelMock.userName = "some user 2"; activeUsersMock.push(activeUserViewModelMock); this.eventHandler(activeUsersMock); }
public getActiveUsers(): void { this._model.getActiveUsers(); }
}
|