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.
|
|
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var TemplateFactory_1 = require("../template/TemplateFactory"); var UserView = /** @class */ (function () { // private userBoxes: any[] = [];
function UserView(model, chatModel, element) { this._model = model; this._chatModel = chatModel; this._element = element; } Object.defineProperty(UserView.prototype, "model", { /** * Getter model * @return {Model} */ get: function () { return this._model; }, enumerable: true, configurable: true }); Object.defineProperty(UserView.prototype, "element", { /** * Getter element * @return {any} */ get: function () { return this._element; }, enumerable: true, configurable: true }); // /**
// * Setter model
// * @param {Model} value
// */
// public set model(value: Model) {
// this._model = value;
// }
// /**
// * Setter element
// * @param {any} value
// */
// public set element(value: any) {
// this._element = value;
// }
UserView.prototype.update = function (data) { var template = TemplateFactory_1.TemplateFactory.getTemplate(); var html = ""; data.forEach(function (element) { html += template(element); }); this.element.innerHTML = html; this.addUserCallBacks(); console.log(this.element.innerHTML); }; UserView.prototype.helper = function () { }; UserView.prototype.addUserCallBacks = function () { var userBoxes = document.getElementsByClassName('user-box'); for (var i = 0; i < userBoxes.length; i++) { var userBox = userBoxes[i]; userBoxes[i].addEventListener('click', this.userCallBack.bind(this, userBox)); } }; UserView.prototype.userCallBack = function (el) { var current = document.getElementsByClassName('user-box active'); var passphrase = ""; if (current.length > 0) { if (passphrase == '') { // alert('Please input passphrase')
// alertify.error('Please enter a passphrase');
// return;
} current[0].className = current[0].className.replace(" active", ""); } // Add the active class to the current/clicked button
else if (current.length == 0) { var elem_1 = document.getElementById('passphrase-initial'); passphrase = ""; if (passphrase == '') { // // alert('Please input passphrase')
// // alertify.error('Please enter a passphrase');
// return;
} // @ts-ignore: Object is possibly 'null'.
document.getElementById('no-user-selected').hidden = true; // @ts-ignore: Object is possibly 'null'.
document.getElementById('chat-card').hidden = false; // @ts-ignore: Object is possibly 'null'.
elem_1.hidden = true; } // console.log(this.getElementsByClassName('to-user-span'));
var elem = el.getElementsByClassName('to-user-span')[0]; var userName = elem.innerText; // @ts-ignore: Object is possibly 'null'.
document.getElementById('user-name-span').innerText = userName; // populateMessages(userName, passphrase);
sessionStorage.setItem('selectedUser', userName); el.className += " active"; }; return UserView; }()); exports.UserView = UserView;
|