add progress bar

This commit is contained in:
tiago.kayaya
2021-01-27 16:01:49 +01:00
parent 585f5a1fb0
commit 942eeb2bde
44 changed files with 448 additions and 510 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -37,8 +37,8 @@
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/res/google-services/debug" type="java-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/res/rs/debug" type="java-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/ap_generated_sources/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/aidl_source_output_dir/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/aidl_source_output_dir/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/renderscript_source_output_dir/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/res/rs/androidTest/debug" type="java-test-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../app/build/generated/ap_generated_sources/debugUnitTest/out" isTestSource="true" generated="true" />
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
#Wed Jan 27 14:08:17 WAT 2021
#Wed Jan 27 15:04:01 WAT 2021
path.3=classes_1.dex
path.2=classes_0.dex
path.1=classes.dex
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -165,14 +165,14 @@ let LoginPage = class LoginPage {
yield alert.present();
});
}
loginRocketChat() {
loginRocketChat(user) {
let postData = {
"user": this.username,
"password": this.password
"user": user.username,
"password": user.password,
};
this.authService.loginChat(postData).subscribe((res) => {
console.log(res.data);
this.storageService.store(src_app_config_auth_constants__WEBPACK_IMPORTED_MODULE_8__["AuthConnstants"].AUTH, res.data);
console.log('Logged user \n' + res.data);
console.log('Login to Rocket chat OK');
}, (error) => {
console.log('Network error');
@@ -193,7 +193,7 @@ let LoginPage = class LoginPage {
};
if (yield this.authService.login(this.userattempt)) {
console.log(this.userattempt);
this.loginRocketChat();
this.loginRocketChat(this.userattempt);
this.router.navigate(['/home/events']);
}
else {
File diff suppressed because one or more lines are too long
@@ -314,17 +314,18 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
}
}, {
key: "loginRocketChat",
value: function loginRocketChat() {
value: function loginRocketChat(user) {
var _this = this;
var postData = {
"user": this.username,
"password": this.password
"user": user.username,
"password": user.password
};
this.authService.loginChat(postData).subscribe(function (res) {
console.log(res.data);
_this.storageService.store(src_app_config_auth_constants__WEBPACK_IMPORTED_MODULE_8__["AuthConnstants"].AUTH, res.data);
console.log('Logged user \n' + res.data);
console.log('Login to Rocket chat OK');
}, function (error) {
console.log('Network error');
@@ -363,7 +364,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
}
console.log(this.userattempt);
this.loginRocketChat();
this.loginRocketChat(this.userattempt);
this.router.navigate(['/home/events']);
_context2.next = 12;
break;
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -88,20 +88,7 @@ let ChatService = class ChatService {
getAllConnectedUsers() {
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'users.presence', this.options);
}
//Check whether user is online or offline
getUserPresence(id) {
let params = new _angular_common_http__WEBPACK_IMPORTED_MODULE_1__["HttpParams"]();
params = params.set("userId", id);
let opts = {
headers: this.headers,
params: params
};
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'users.getPresence', opts);
}
//Load messages from roomId
loadJoinedRooms() {
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'im.list', this.options);
}
getAllDirectMessages() {
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'im.list', this.options);
}
@@ -216,6 +203,9 @@ let ChatService = class ChatService {
};
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'groups.info', opts);
}
renameGroup(body) {
return this.http.post(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'groups.rename', body, this.options);
}
};
ChatService.ctorParameters = () => [
{ type: _angular_common_http__WEBPACK_IMPORTED_MODULE_1__["HttpClient"] },
@@ -153,25 +153,8 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
key: "getAllConnectedUsers",
value: function getAllConnectedUsers() {
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'users.presence', this.options);
} //Check whether user is online or offline
}, {
key: "getUserPresence",
value: function getUserPresence(id) {
var params = new _angular_common_http__WEBPACK_IMPORTED_MODULE_1__["HttpParams"]();
params = params.set("userId", id);
var opts = {
headers: this.headers,
params: params
};
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'users.getPresence', opts);
} //Load messages from roomId
}, {
key: "loadJoinedRooms",
value: function loadJoinedRooms() {
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'im.list', this.options);
}
}, {
key: "getAllDirectMessages",
value: function getAllDirectMessages() {
@@ -324,6 +307,11 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
};
return this.http.get(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'groups.info', opts);
}
}, {
key: "renameGroup",
value: function renameGroup(body) {
return this.http.post(src_environments_environment__WEBPACK_IMPORTED_MODULE_6__["environment"].apiChatUrl + 'groups.rename', body, this.options);
}
}]);
return ChatService;
Binary file not shown.
@@ -9,7 +9,7 @@
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("<ion-header>\r\n <app-header></app-header>\r\n</ion-header>\r\n<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"bg-blue\">\r\n <div class=\"main-header\">\r\n <div class=\"title-content\">\r\n <div class=\"div-title\">\r\n <ion-label class=\"title\">Chat</ion-label>\r\n </div>\r\n <div class=\"div-icon\">\r\n <ion-icon slot=\"end\" (click)=\"newGroup()\" src=\"assets/images/icons-chat-new-group.svg\" ></ion-icon>\r\n <ion-icon slot=\"end\" (click)=\"selectContact()\" src=\"assets/images/icons-chat-new-conversation.svg\"></ion-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <div class=\"main-content\">\r\n <ion-toolbar >\r\n <ion-segment [(ngModel)]=\"segment\" (ionChange)=\"onSegmentChange()\">\r\n <ion-segment-button value=\"Contactos\">\r\n Conversas\r\n </ion-segment-button>\r\n <ion-segment-button value=\"Grupos\">\r\n Grupos\r\n </ion-segment-button>\r\n </ion-segment>\r\n </ion-toolbar>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n </ion-refresher>\r\n <div [ngSwitch]=\"segment\">\r\n <ion-list *ngSwitchCase=\"'Contactos'\">\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let dm of userDirectMessages\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openMessages(dm)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label *ngFor=\"let user of dm.usernames\">\r\n <span *ngIf=\"user !=loggedUser.me.username\">\r\n {{user}}\r\n </span>\r\n </ion-label>\r\n </div>\r\n <div class=\"item-date\">{{dm._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\">\r\n <ion-label *ngIf=\"dm.lastMessage\">{{dm.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-item-sliding>\r\n </ion-item-group>\r\n </ion-list>\r\n <ion-list *ngSwitchCase=\"'Grupos'\" >\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let group of allGroups\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-group-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openGroupMessages(group)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label>{{group.name.split('-').join(' ')}}</ion-label>\r\n </div>\r\n <div class=\"item-date\" *ngIf=\"group.lastMessage\">{{group.lastMessage._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\" *ngIf=\"group.lastMessage\">\r\n <ion-label>{{group.lastMessage.u.name}}: {{group.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div> \r\n </ion-item-sliding>\r\n </ion-item-group>\r\n \r\n </ion-list>\r\n </div>\r\n</div>\r\n</ion-content>\r\n\r\n\r\n");
/* harmony default export */ __webpack_exports__["default"] = ("<ion-header>\r\n <app-header></app-header>\r\n</ion-header>\r\n<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"bg-blue\">\r\n <div class=\"main-header\">\r\n <div class=\"title-content\">\r\n <div class=\"div-title\">\r\n <ion-label class=\"title\">Chat</ion-label>\r\n </div>\r\n <div class=\"div-icon\">\r\n <ion-icon slot=\"end\" (click)=\"newGroup()\" src=\"assets/images/icons-chat-new-group.svg\" ></ion-icon>\r\n <ion-icon slot=\"end\" (click)=\"selectContact()\" src=\"assets/images/icons-chat-new-conversation.svg\"></ion-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n <ion-refresher-content>\r\n </ion-refresher-content>\r\n </ion-refresher>\r\n <div class=\"main-content\">\r\n <ion-toolbar >\r\n <ion-segment [(ngModel)]=\"segment\" (ionChange)=\"onSegmentChange()\">\r\n <ion-segment-button value=\"Contactos\">\r\n Conversas\r\n </ion-segment-button>\r\n <ion-segment-button value=\"Grupos\">\r\n Grupos\r\n </ion-segment-button>\r\n </ion-segment>\r\n </ion-toolbar>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n </ion-refresher>\r\n <div [ngSwitch]=\"segment\">\r\n <ion-list *ngSwitchCase=\"'Contactos'\">\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let dm of userDirectMessages\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openMessages(dm)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label *ngFor=\"let user of dm.usernames\">\r\n <span *ngIf=\"user !=loggedUser.me.username\">\r\n {{user}}\r\n </span>\r\n </ion-label>\r\n </div>\r\n <div class=\"item-date\">{{dm._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\">\r\n <ion-label *ngIf=\"dm.lastMessage\">{{dm.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-item-sliding>\r\n </ion-item-group>\r\n </ion-list>\r\n <ion-list *ngSwitchCase=\"'Grupos'\" >\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let group of allGroups\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-group-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openGroupMessages(group)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label>{{group.name.split('-').join(' ')}}</ion-label>\r\n </div>\r\n <div class=\"item-date\" *ngIf=\"group.lastMessage\">{{group.lastMessage._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\" *ngIf=\"group.lastMessage\">\r\n <ion-label>{{group.lastMessage.u.name}}: {{group.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div> \r\n </ion-item-sliding>\r\n </ion-item-group>\r\n \r\n </ion-list>\r\n </div>\r\n</div>\r\n</ion-content>\r\n\r\n\r\n");
/***/ }),
@@ -48,7 +48,7 @@ __webpack_require__.r(__webpack_exports__);
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\">\r\n <ion-label class=\"title\">{{roomName}}</ion-label>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div (click)=\"addContacts()\" class=\"header-bottom\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label *ngFor=\"let member of members\" >\r\n {{member.name}},\r\n </ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n\r\n<ion-content>\r\n <div class=\"welcome-text\">\r\n <ion-label>Esta conversa passou a grupo</ion-label><br />\r\n <ion-label>A conversa original mantêm-se como chat individual</ion-label>\r\n </div>\r\n <div *ngFor=\"let msg of messages\" class=\"messages\">\r\n <div *ngIf=\"msg.t != 'r'\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.username}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n <div *ngIf=\"msg.t == 'r'\" class=\"info-text\">\r\n <ion-label>Alterou o assunto de para \"{{msg.msg.split('-').join(' ')}}\"</ion-label><br />\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n");
/* harmony default export */ __webpack_exports__["default"] = ("<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\">\r\n <ion-label class=\"title\">{{roomName}}</ion-label>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div (click)=\"addContacts()\" class=\"header-bottom\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label *ngFor=\"let member of members\" >\r\n {{member.name}},\r\n </ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n\r\n<ion-content>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n <ion-refresher-content>\r\n </ion-refresher-content>\r\n </ion-refresher>\r\n <div class=\"welcome-text\">\r\n <ion-label>Esta conversa passou a grupo</ion-label><br />\r\n <ion-label>A conversa original mantêm-se como chat individual</ion-label>\r\n </div>\r\n <div *ngFor=\"let msg of messages\" class=\"messages\">\r\n <div *ngIf=\"msg.t != 'r'\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.name}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n <div *ngIf=\"msg.t == 'r'\" class=\"info-text\">\r\n <ion-label>Alterou o assunto de para \"{{msg.msg.split('-').join(' ')}}\"</ion-label><br />\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n");
/***/ }),
@@ -74,7 +74,7 @@ __webpack_require__.r(__webpack_exports__);
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\" *ngFor=\"let users of dmUsers\">\r\n <ion-label class=\"title\">{{users.name}}</ion-label>\r\n <span><ion-icon class=\"{{users.status}}\" name=\"ellipse\"></ion-icon></span>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openMessagesOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div class=\"header-bottom\" (click)=\"addContacts()\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label class=\"text-color-blue\">Adicionar contacto</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <div class=\"messages\" #scrollMe>\r\n <!-- <ion-infinite-scroll position=\"top\" threshold=\"25%\" (ionInfinite)=\"loadMoreMessages($event)\">\r\n <ion-infinite-scroll-content loadindSpiniter=\"crescent\" loadingText=\"Carregando...\">\r\n\r\n </ion-infinite-scroll-content>\r\n </ion-infinite-scroll> -->\r\n <!-- <div class=\"incoming\">\r\n <div class=\"title\">\r\n <ion-label>Secretário Assuntos sociais</ion-label>\r\n <span class=\"time\">14:23</span>\r\n </div>\r\n <div>\r\n <img src='assets/images/1.jpg' tappable>\r\n <ion-label hidden >Investidura Filipe Nyusi</ion-label>\r\n </div>\r\n </div> -->\r\n <div *ngFor=\"let msg of messages\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.name}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea clearOnEdit=\"true\" placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n");
/* harmony default export */ __webpack_exports__["default"] = ("<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\" *ngFor=\"let users of dmUsers\">\r\n <ion-label class=\"title\">{{users.name}}</ion-label>\r\n <span><ion-icon class=\"{{users.status}}\" name=\"ellipse\"></ion-icon></span>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openMessagesOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div class=\"header-bottom\" (click)=\"addContacts()\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label class=\"text-color-blue\">Adicionar contacto</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n <ion-refresher-content>\r\n </ion-refresher-content>\r\n </ion-refresher>\r\n <div class=\"messages\" #scrollMe>\r\n <!-- <ion-infinite-scroll position=\"top\" threshold=\"25%\" (ionInfinite)=\"loadMoreMessages($event)\">\r\n <ion-infinite-scroll-content loadindSpiniter=\"crescent\" loadingText=\"Carregando...\">\r\n\r\n </ion-infinite-scroll-content>\r\n </ion-infinite-scroll> -->\r\n <!-- <div class=\"incoming\">\r\n <div class=\"title\">\r\n <ion-label>Secretário Assuntos sociais</ion-label>\r\n <span class=\"time\">14:23</span>\r\n </div>\r\n <div>\r\n <img src='assets/images/1.jpg' tappable>\r\n <ion-label hidden >Investidura Filipe Nyusi</ion-label>\r\n </div>\r\n </div> -->\r\n <div *ngFor=\"let msg of messages\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.name}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea clearOnEdit=\"true\" placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n");
/***/ }),
@@ -311,17 +311,24 @@ let ChatPage = class ChatPage {
this.loggedUser = res;
console.log(this.loggedUser);
});
this.doRefresh();
this.load();
}
onSegmentChange() {
this.doRefresh();
this.load();
}
doRefresh() {
/* setInterval(()=>{ */
this.getDirectMessages();
this.getGroups();
/* this.customRoom(); */
/* }, 2000); */
doRefresh(ev) {
this.load();
ev.target.complete();
}
load() {
switch (this.segment) {
case "Contactos":
this.getDirectMessages();
break;
case "Grupos":
this.getGroups();
break;
}
}
customRoom() {
let params = new _angular_common_http__WEBPACK_IMPORTED_MODULE_1__["HttpParams"]();
@@ -337,10 +344,10 @@ let ChatPage = class ChatPage {
this.userDirectMessages = res.ims.sort((a, b) => {
var dateA = new Date(a._updatedAt).getTime();
var dateB = new Date(b._updatedAt).getTime();
this.showLoader = false;
return dateB - dateA;
});
console.log(this.userDirectMessages);
this.showLoader = false;
});
}
getChatMembers() {
@@ -358,10 +365,10 @@ let ChatPage = class ChatPage {
this.allGroups = all.sort((a, b) => {
var dateA = new Date(a._updatedAt).getTime();
var dateB = new Date(b._updatedAt).getTime();
this.showLoader = false;
return dateB - dateA;
});
console.log(this.allGroups);
this.showLoader = false;
});
});
}
@@ -822,22 +829,27 @@ let GroupMessagesPage = class GroupMessagesPage {
this.loggedUser = res;
console.log(this.loggedUser);
});
this.doRefresh();
this.load();
}
load() {
this.getGroupContacts();
this.loadGroupMessages();
}
close() {
this.modalController.dismiss();
}
doRefresh( /* event */) {
this.getGroupContacts();
this.loadGroupMessages();
/* event.target.complete(); */
doRefresh(ev) {
this.load();
ev.target.complete();
}
getGroupContacts() {
this.showLoader = true;
//If group is private call getGroupMembers
if (this.room.t === 'p') {
this.chatService.getGroupMembers(this.room._id).subscribe(res => {
console.log(res);
this.members = res['members'];
this.showLoader = false;
});
}
//Otherwise call getChannelMembers for públic groups
@@ -845,16 +857,19 @@ let GroupMessagesPage = class GroupMessagesPage {
this.chatService.getChannelMembers(this.room._id).subscribe(res => {
console.log(res);
this.members = res['members'];
this.showLoader = false;
});
}
}
loadGroupMessages() {
this.showLoader = true;
//If group is private call getGroupMembers
if (this.room.t === 'p') {
this.chatService.getPrivateGroupMessages(this.room._id).subscribe(res => {
console.log(res);
let msgOnly = res['messages'].filter(data => data.t != 'au');
this.messages = msgOnly.reverse();
this.showLoader = false;
});
}
//Otherwise call getChannelMembers for públic groups
@@ -889,9 +904,12 @@ let GroupMessagesPage = class GroupMessagesPage {
});
yield popover.present();
popover.onDidDismiss().then(res => {
console.log(res);
if (res.data) {
this.doRefresh();
this.modalController.dismiss();
this.roomName = res.data.name.split('-').join(' ');
console.log(this.roomName);
this.load();
/* this.modalController.dismiss(); */
}
;
});
@@ -927,7 +945,7 @@ let GroupMessagesPage = class GroupMessagesPage {
});
yield modal.present();
modal.onDidDismiss().then(() => {
this.doRefresh();
this.load();
});
});
}
@@ -1179,14 +1197,17 @@ let MessagesPage = class MessagesPage {
this.loggedUser = res;
console.log(this.loggedUser);
});
/* console.log(this.dm); */
/* setInterval(()=>{ */
this.load();
/* }, 9000); */
}
load() {
this.loadMessages();
/* }, 2000); */
this.getChatMembers();
}
loadUser() {
console.log('working');
doRefresh(ev) {
this.load();
ev.target.complete();
}
ngAfterViewChecked() {
this.scrollToBottom();
@@ -1211,6 +1232,7 @@ let MessagesPage = class MessagesPage {
this.message = "";
}
loadMessages() {
this.showLoader = true;
this.chatService.getRoomMessages(this.dm._id).subscribe(res => {
/* console.log(res); */
this.messages = res['messages'].reverse();
@@ -1218,10 +1240,12 @@ let MessagesPage = class MessagesPage {
});
}
getChatMembers() {
this.showLoader = true;
this.chatService.getMembers(this.dm._id).subscribe(res => {
this.dmUsers = res['members'].filter(data => data.username != this.loggedUser.me.username);
console.log(res);
console.log(this.dmUsers);
this.showLoader = false;
});
}
openMessagesOptions(ev) {
File diff suppressed because one or more lines are too long
@@ -21,7 +21,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
/* harmony default export */
__webpack_exports__["default"] = "<ion-header>\r\n <app-header></app-header>\r\n</ion-header>\r\n<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"bg-blue\">\r\n <div class=\"main-header\">\r\n <div class=\"title-content\">\r\n <div class=\"div-title\">\r\n <ion-label class=\"title\">Chat</ion-label>\r\n </div>\r\n <div class=\"div-icon\">\r\n <ion-icon slot=\"end\" (click)=\"newGroup()\" src=\"assets/images/icons-chat-new-group.svg\" ></ion-icon>\r\n <ion-icon slot=\"end\" (click)=\"selectContact()\" src=\"assets/images/icons-chat-new-conversation.svg\"></ion-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <div class=\"main-content\">\r\n <ion-toolbar >\r\n <ion-segment [(ngModel)]=\"segment\" (ionChange)=\"onSegmentChange()\">\r\n <ion-segment-button value=\"Contactos\">\r\n Conversas\r\n </ion-segment-button>\r\n <ion-segment-button value=\"Grupos\">\r\n Grupos\r\n </ion-segment-button>\r\n </ion-segment>\r\n </ion-toolbar>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n </ion-refresher>\r\n <div [ngSwitch]=\"segment\">\r\n <ion-list *ngSwitchCase=\"'Contactos'\">\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let dm of userDirectMessages\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openMessages(dm)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label *ngFor=\"let user of dm.usernames\">\r\n <span *ngIf=\"user !=loggedUser.me.username\">\r\n {{user}}\r\n </span>\r\n </ion-label>\r\n </div>\r\n <div class=\"item-date\">{{dm._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\">\r\n <ion-label *ngIf=\"dm.lastMessage\">{{dm.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-item-sliding>\r\n </ion-item-group>\r\n </ion-list>\r\n <ion-list *ngSwitchCase=\"'Grupos'\" >\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let group of allGroups\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-group-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openGroupMessages(group)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label>{{group.name.split('-').join(' ')}}</ion-label>\r\n </div>\r\n <div class=\"item-date\" *ngIf=\"group.lastMessage\">{{group.lastMessage._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\" *ngIf=\"group.lastMessage\">\r\n <ion-label>{{group.lastMessage.u.name}}: {{group.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div> \r\n </ion-item-sliding>\r\n </ion-item-group>\r\n \r\n </ion-list>\r\n </div>\r\n</div>\r\n</ion-content>\r\n\r\n\r\n";
__webpack_exports__["default"] = "<ion-header>\r\n <app-header></app-header>\r\n</ion-header>\r\n<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"bg-blue\">\r\n <div class=\"main-header\">\r\n <div class=\"title-content\">\r\n <div class=\"div-title\">\r\n <ion-label class=\"title\">Chat</ion-label>\r\n </div>\r\n <div class=\"div-icon\">\r\n <ion-icon slot=\"end\" (click)=\"newGroup()\" src=\"assets/images/icons-chat-new-group.svg\" ></ion-icon>\r\n <ion-icon slot=\"end\" (click)=\"selectContact()\" src=\"assets/images/icons-chat-new-conversation.svg\"></ion-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n <ion-refresher-content>\r\n </ion-refresher-content>\r\n </ion-refresher>\r\n <div class=\"main-content\">\r\n <ion-toolbar >\r\n <ion-segment [(ngModel)]=\"segment\" (ionChange)=\"onSegmentChange()\">\r\n <ion-segment-button value=\"Contactos\">\r\n Conversas\r\n </ion-segment-button>\r\n <ion-segment-button value=\"Grupos\">\r\n Grupos\r\n </ion-segment-button>\r\n </ion-segment>\r\n </ion-toolbar>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n </ion-refresher>\r\n <div [ngSwitch]=\"segment\">\r\n <ion-list *ngSwitchCase=\"'Contactos'\">\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let dm of userDirectMessages\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openMessages(dm)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label *ngFor=\"let user of dm.usernames\">\r\n <span *ngIf=\"user !=loggedUser.me.username\">\r\n {{user}}\r\n </span>\r\n </ion-label>\r\n </div>\r\n <div class=\"item-date\">{{dm._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\">\r\n <ion-label *ngIf=\"dm.lastMessage\">{{dm.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-item-sliding>\r\n </ion-item-group>\r\n </ion-list>\r\n <ion-list *ngSwitchCase=\"'Grupos'\" >\r\n <ion-item-group>\r\n <ion-item-sliding>\r\n <div *ngFor=\"let group of allGroups\" class=\"item\">\r\n <div class=\"item-icon\">\r\n <ion-icon class=\"icon\" slot=\"start\" src=\"assets/images/icons-chat-group-chat-40.svg\"></ion-icon>\r\n </div>\r\n <div (click)=\"openGroupMessages(group)\" class=\"item-content\">\r\n <div class=\"item-title-time\">\r\n <div class=\"item-title\">\r\n <ion-label>{{group.name.split('-').join(' ')}}</ion-label>\r\n </div>\r\n <div class=\"item-date\" *ngIf=\"group.lastMessage\">{{group.lastMessage._updatedAt | date: 'HH:mm'}}</div>\r\n </div>\r\n <div class=\"item-description\" *ngIf=\"group.lastMessage\">\r\n <ion-label>{{group.lastMessage.u.name}}: {{group.lastMessage.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div> \r\n </ion-item-sliding>\r\n </ion-item-group>\r\n \r\n </ion-list>\r\n </div>\r\n</div>\r\n</ion-content>\r\n\r\n\r\n";
/***/
},
@@ -81,7 +81,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
/* harmony default export */
__webpack_exports__["default"] = "<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\">\r\n <ion-label class=\"title\">{{roomName}}</ion-label>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div (click)=\"addContacts()\" class=\"header-bottom\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label *ngFor=\"let member of members\" >\r\n {{member.name}},\r\n </ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n\r\n<ion-content>\r\n <div class=\"welcome-text\">\r\n <ion-label>Esta conversa passou a grupo</ion-label><br />\r\n <ion-label>A conversa original mantêm-se como chat individual</ion-label>\r\n </div>\r\n <div *ngFor=\"let msg of messages\" class=\"messages\">\r\n <div *ngIf=\"msg.t != 'r'\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.username}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n <div *ngIf=\"msg.t == 'r'\" class=\"info-text\">\r\n <ion-label>Alterou o assunto de para \"{{msg.msg.split('-').join(' ')}}\"</ion-label><br />\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n";
__webpack_exports__["default"] = "<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\">\r\n <ion-label class=\"title\">{{roomName}}</ion-label>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div (click)=\"addContacts()\" class=\"header-bottom\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label *ngFor=\"let member of members\" >\r\n {{member.name}},\r\n </ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n\r\n<ion-content>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n <ion-refresher-content>\r\n </ion-refresher-content>\r\n </ion-refresher>\r\n <div class=\"welcome-text\">\r\n <ion-label>Esta conversa passou a grupo</ion-label><br />\r\n <ion-label>A conversa original mantêm-se como chat individual</ion-label>\r\n </div>\r\n <div *ngFor=\"let msg of messages\" class=\"messages\">\r\n <div *ngIf=\"msg.t != 'r'\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.name}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n <div *ngIf=\"msg.t == 'r'\" class=\"info-text\">\r\n <ion-label>Alterou o assunto de para \"{{msg.msg.split('-').join(' ')}}\"</ion-label><br />\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n";
/***/
},
@@ -121,7 +121,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
/* harmony default export */
__webpack_exports__["default"] = "<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\" *ngFor=\"let users of dmUsers\">\r\n <ion-label class=\"title\">{{users.name}}</ion-label>\r\n <span><ion-icon class=\"{{users.status}}\" name=\"ellipse\"></ion-icon></span>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openMessagesOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div class=\"header-bottom\" (click)=\"addContacts()\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label class=\"text-color-blue\">Adicionar contacto</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <div class=\"messages\" #scrollMe>\r\n <!-- <ion-infinite-scroll position=\"top\" threshold=\"25%\" (ionInfinite)=\"loadMoreMessages($event)\">\r\n <ion-infinite-scroll-content loadindSpiniter=\"crescent\" loadingText=\"Carregando...\">\r\n\r\n </ion-infinite-scroll-content>\r\n </ion-infinite-scroll> -->\r\n <!-- <div class=\"incoming\">\r\n <div class=\"title\">\r\n <ion-label>Secretário Assuntos sociais</ion-label>\r\n <span class=\"time\">14:23</span>\r\n </div>\r\n <div>\r\n <img src='assets/images/1.jpg' tappable>\r\n <ion-label hidden >Investidura Filipe Nyusi</ion-label>\r\n </div>\r\n </div> -->\r\n <div *ngFor=\"let msg of messages\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.name}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea clearOnEdit=\"true\" placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n";
__webpack_exports__["default"] = "<ion-header class=\"ion-no-border\">\r\n <ion-toolbar class=\"header-toolbar\">\r\n <div class=\"main-header\">\r\n <div class=\"header-top\">\r\n <app-btn-modal-dismiss></app-btn-modal-dismiss>\r\n <div class=\"middle\" *ngFor=\"let users of dmUsers\">\r\n <ion-label class=\"title\">{{users.name}}</ion-label>\r\n <span><ion-icon class=\"{{users.status}}\" name=\"ellipse\"></ion-icon></span>\r\n </div>\r\n <div class=\"right\">\r\n <ion-icon (click)=\"openMessagesOptions()\" src=\"assets/images/icons-menu.svg\"></ion-icon>\r\n </div> \r\n </div>\r\n <div class=\"header-bottom\" (click)=\"addContacts()\">\r\n <div class=\"header-bottom-icon\">\r\n <ion-icon src=\"assets/icon/icons-user.svg\"></ion-icon>\r\n </div>\r\n <div class=\"header-bottom-contacts\">\r\n <ion-label class=\"text-color-blue\">Adicionar contacto</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <ion-refresher name=\"refresher\" slot=\"fixed\" (ionRefresh)=\"doRefresh($event)\">\r\n <ion-progress-bar type=\"indeterminate\" *ngIf=\"showLoader\"></ion-progress-bar>\r\n <ion-refresher-content>\r\n </ion-refresher-content>\r\n </ion-refresher>\r\n <div class=\"messages\" #scrollMe>\r\n <!-- <ion-infinite-scroll position=\"top\" threshold=\"25%\" (ionInfinite)=\"loadMoreMessages($event)\">\r\n <ion-infinite-scroll-content loadindSpiniter=\"crescent\" loadingText=\"Carregando...\">\r\n\r\n </ion-infinite-scroll-content>\r\n </ion-infinite-scroll> -->\r\n <!-- <div class=\"incoming\">\r\n <div class=\"title\">\r\n <ion-label>Secretário Assuntos sociais</ion-label>\r\n <span class=\"time\">14:23</span>\r\n </div>\r\n <div>\r\n <img src='assets/images/1.jpg' tappable>\r\n <ion-label hidden >Investidura Filipe Nyusi</ion-label>\r\n </div>\r\n </div> -->\r\n <div *ngFor=\"let msg of messages\" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>\r\n <div class=\"title\">\r\n <ion-label>{{msg.u.name}}</ion-label>\r\n <span class=\"time\">{{msg._updatedAt | date: 'HH:mm' }}</span>\r\n </div>\r\n <div>\r\n <ion-label>{{msg.msg}}</ion-label>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</ion-content>\r\n<ion-footer>\r\n <ion-toolbar>\r\n <ion-row align-items-center class=\"row\">\r\n <ion-col size=\"1\">\r\n <ion-label class=\"ion-no-padding\" lines=\"none\">\r\n <ion-icon (click)=\"openChatOptions()\" class=\"chat-icon-options\" src=\"assets/icon/icons-chat-options.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n <ion-col size=\"9\">\r\n <ion-item class=\"ion-no-padding type-message\" lines=\"none\">\r\n <ion-textarea clearOnEdit=\"true\" placeholder=\"Escrever uma mensagem\" auto-grow class=\"message-input\" rows=\"1\" [(ngModel)]=\"message\"></ion-textarea>\r\n <ion-icon slot=\"end\" src=\"assets/icon/icons-chat-mic.svg\"></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"2\">\r\n <!-- [disabled]=\"message === ''\" -->\r\n <ion-label>\r\n <ion-icon (click)=\"sendMessage()\" class=\"chat-icon-send\" src=\"assets/icon/icons-chat-send.svg\"></ion-icon>\r\n </ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-toolbar>\r\n</ion-footer>\r\n";
/***/
},
@@ -560,22 +560,31 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
_this.loggedUser = res;
console.log(_this.loggedUser);
});
this.doRefresh();
this.load();
}
}, {
key: "onSegmentChange",
value: function onSegmentChange() {
this.doRefresh();
this.load();
}
}, {
key: "doRefresh",
value: function doRefresh() {
/* setInterval(()=>{ */
this.getDirectMessages();
this.getGroups();
/* this.customRoom(); */
value: function doRefresh(ev) {
this.load();
ev.target.complete();
}
}, {
key: "load",
value: function load() {
switch (this.segment) {
case "Contactos":
this.getDirectMessages();
break;
/* }, 2000); */
case "Grupos":
this.getGroups();
break;
}
}
}, {
key: "customRoom",
@@ -597,10 +606,10 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
_this2.userDirectMessages = res.ims.sort(function (a, b) {
var dateA = new Date(a._updatedAt).getTime();
var dateB = new Date(b._updatedAt).getTime();
_this2.showLoader = false;
return dateB - dateA;
});
console.log(_this2.userDirectMessages);
_this2.showLoader = false;
});
}
}, {
@@ -630,10 +639,10 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
_this4.allGroups = all.sort(function (a, b) {
var dateA = new Date(a._updatedAt).getTime();
var dateB = new Date(b._updatedAt).getTime();
_this4.showLoader = false;
return dateB - dateA;
});
console.log(_this4.allGroups);
_this4.showLoader = false;
});
});
}
@@ -1489,7 +1498,13 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
_this10.loggedUser = res;
console.log(_this10.loggedUser);
});
this.doRefresh();
this.load();
}
}, {
key: "load",
value: function load() {
this.getGroupContacts();
this.loadGroupMessages();
}
}, {
key: "close",
@@ -1498,29 +1513,29 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
}
}, {
key: "doRefresh",
value: function doRefresh()
/* event */
{
this.getGroupContacts();
this.loadGroupMessages();
/* event.target.complete(); */
value: function doRefresh(ev) {
this.load();
ev.target.complete();
}
}, {
key: "getGroupContacts",
value: function getGroupContacts() {
var _this11 = this;
//If group is private call getGroupMembers
this.showLoader = true; //If group is private call getGroupMembers
if (this.room.t === 'p') {
this.chatService.getGroupMembers(this.room._id).subscribe(function (res) {
console.log(res);
_this11.members = res['members'];
_this11.showLoader = false;
});
} //Otherwise call getChannelMembers for públic groups
else {
this.chatService.getChannelMembers(this.room._id).subscribe(function (res) {
console.log(res);
_this11.members = res['members'];
_this11.showLoader = false;
});
}
}
@@ -1529,7 +1544,8 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
value: function loadGroupMessages() {
var _this12 = this;
//If group is private call getGroupMembers
this.showLoader = true; //If group is private call getGroupMembers
if (this.room.t === 'p') {
this.chatService.getPrivateGroupMessages(this.room._id).subscribe(function (res) {
console.log(res);
@@ -1537,6 +1553,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
return data.t != 'au';
});
_this12.messages = msgOnly.reverse();
_this12.showLoader = false;
});
} //Otherwise call getChannelMembers for públic groups
else {
@@ -1591,10 +1608,15 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
case 5:
popover.onDidDismiss().then(function (res) {
if (res.data) {
_this14.doRefresh();
console.log(res);
if (res.data) {
_this14.roomName = res.data.name.split('-').join(' ');
console.log(_this14.roomName);
_this14.load();
/* this.modalController.dismiss(); */
_this14.modalController.dismiss();
}
;
@@ -1676,7 +1698,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
case 6:
modal.onDidDismiss().then(function () {
_this15.doRefresh();
_this15.load();
});
case 7:
@@ -2133,19 +2155,22 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
_this20.loggedUser = res;
console.log(_this20.loggedUser);
});
/* console.log(this.dm); */
/* setInterval(()=>{ */
this.load();
/* }, 9000); */
}
}, {
key: "load",
value: function load() {
this.loadMessages();
/* }, 2000); */
this.getChatMembers();
}
}, {
key: "loadUser",
value: function loadUser() {
console.log('working');
key: "doRefresh",
value: function doRefresh(ev) {
this.load();
ev.target.complete();
}
}, {
key: "ngAfterViewChecked",
@@ -2183,6 +2208,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
value: function loadMessages() {
var _this22 = this;
this.showLoader = true;
this.chatService.getRoomMessages(this.dm._id).subscribe(function (res) {
/* console.log(res); */
_this22.messages = res['messages'].reverse();
@@ -2194,12 +2220,14 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
value: function getChatMembers() {
var _this23 = this;
this.showLoader = true;
this.chatService.getMembers(this.dm._id).subscribe(function (res) {
_this23.dmUsers = res['members'].filter(function (data) {
return data.username != _this23.loggedUser.me.username;
});
console.log(res);
console.log(_this23.dmUsers);
_this23.showLoader = false;
});
}
}, {
File diff suppressed because one or more lines are too long
@@ -165,14 +165,14 @@ let LoginPage = class LoginPage {
yield alert.present();
});
}
loginRocketChat() {
loginRocketChat(user) {
let postData = {
"user": this.username,
"password": this.password
"user": user.username,
"password": user.password,
};
this.authService.loginChat(postData).subscribe((res) => {
console.log(res.data);
this.storageService.store(src_app_config_auth_constants__WEBPACK_IMPORTED_MODULE_8__["AuthConnstants"].AUTH, res.data);
console.log('Logged user \n' + res.data);
console.log('Login to Rocket chat OK');
}, (error) => {
console.log('Network error');
@@ -193,7 +193,7 @@ let LoginPage = class LoginPage {
};
if (yield this.authService.login(this.userattempt)) {
console.log(this.userattempt);
this.loginRocketChat();
this.loginRocketChat(this.userattempt);
this.router.navigate(['/home/events']);
}
else {
File diff suppressed because one or more lines are too long
@@ -314,17 +314,18 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
}
}, {
key: "loginRocketChat",
value: function loginRocketChat() {
value: function loginRocketChat(user) {
var _this = this;
var postData = {
"user": this.username,
"password": this.password
"user": user.username,
"password": user.password
};
this.authService.loginChat(postData).subscribe(function (res) {
console.log(res.data);
_this.storageService.store(src_app_config_auth_constants__WEBPACK_IMPORTED_MODULE_8__["AuthConnstants"].AUTH, res.data);
console.log('Logged user \n' + res.data);
console.log('Login to Rocket chat OK');
}, function (error) {
console.log('Network error');
@@ -363,7 +364,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
}
console.log(this.userattempt);
this.loginRocketChat();
this.loginRocketChat(this.userattempt);
this.router.navigate(['/home/events']);
_context2.next = 12;
break;
File diff suppressed because one or more lines are too long
+5
View File
@@ -18,6 +18,11 @@
</ion-header>
<ion-content>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<div class="main-content">
<ion-toolbar >
<ion-segment [(ngModel)]="segment" (ionChange)="onSegmentChange()">
+21 -13
View File
@@ -17,12 +17,13 @@ import { NewchatPage } from './newchat/newchat.page';
})
export class ChatPage implements OnInit {
showLoader: boolean;
headers: HttpHeaders;
options:any;
X_User_Id:any;
X_Auth_Token:any;
showLoader: boolean;
loggedUser: any;
/* Set segment variable */
segment:string;
@@ -55,18 +56,27 @@ export class ChatPage implements OnInit {
console.log(this.loggedUser);
});
this.doRefresh();
this.load();
}
onSegmentChange(){
this.doRefresh();
this.load();
}
doRefresh(){
/* setInterval(()=>{ */
this.getDirectMessages();
this.getGroups();
/* this.customRoom(); */
/* }, 2000); */
doRefresh(ev:any){
this.load();
ev.target.complete();
}
load(){
switch (this.segment)
{
case "Contactos":
this.getDirectMessages();
break;
case "Grupos":
this.getGroups();
break;
}
}
customRoom(){
let params = new HttpParams();
@@ -85,11 +95,10 @@ export class ChatPage implements OnInit {
this.userDirectMessages = res.ims.sort((a,b)=>{
var dateA = new Date(a._updatedAt).getTime();
var dateB = new Date(b._updatedAt).getTime();
this.showLoader = false;
return dateB - dateA;
});
console.log(this.userDirectMessages);
this.showLoader = false;
});
}
getChatMembers(){
@@ -107,11 +116,10 @@ export class ChatPage implements OnInit {
this.allGroups = all.sort((a,b)=>{
var dateA = new Date(a._updatedAt).getTime();
var dateB = new Date(b._updatedAt).getTime();
this.showLoader = false;
return dateB - dateA;
});
console.log(this.allGroups);
this.showLoader = false;
});
});
}
@@ -6,7 +6,7 @@
<ion-icon (click)="close()" slot="end" src='assets/images/icons-arrow-arrow-left.svg'></ion-icon>
</div>
<div class="middle">
<ion-label class="title">Alterar Nome do grupo</ion-label>
<ion-label class="title">Alterar assunto</ion-label>
</div>
<app-btn-seguinte *ngIf="groupName" (click)="changeGroupName()"></app-btn-seguinte>
</div>
@@ -41,9 +41,8 @@ export class EditGroupPage implements OnInit {
"name": name,
}
this.chatService.renameGroup(body).subscribe(res=>{
console.log(res);
this.modalController.dismiss(res['group']);
});
this.close();
}
else{
console.log("Invalid name!");
@@ -26,6 +26,11 @@
<ion-content>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<div class="welcome-text">
<ion-label>Esta conversa passou a grupo</ion-label><br />
<ion-label>A conversa original mantêm-se como chat individual</ion-label>
@@ -33,7 +38,7 @@
<div *ngFor="let msg of messages" class="messages">
<div *ngIf="msg.t != 'r'" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>
<div class="title">
<ion-label>{{msg.u.username}}</ion-label>
<ion-label>{{msg.u.name}}</ion-label>
<span class="time">{{msg._updatedAt | date: 'HH:mm' }}</span>
</div>
<div>
@@ -14,6 +14,7 @@ import { GroupContactsPage } from './group-contacts/group-contacts.page';
styleUrls: ['./group-messages.page.scss'],
})
export class GroupMessagesPage implements OnInit {
showLoader: boolean;
isGroupCreated:boolean;
loggedUser: any;
message:any;
@@ -44,25 +45,30 @@ export class GroupMessagesPage implements OnInit {
this.loggedUser=res;
console.log(this.loggedUser);
});
this.doRefresh();
this.load();
}
load(){
this.getGroupContacts();
this.loadGroupMessages();
}
close(){
this.modalController.dismiss();
}
doRefresh(/* event */) {
this.getGroupContacts();
this.loadGroupMessages()
/* event.target.complete(); */
doRefresh(ev:any){
this.load();
ev.target.complete();
}
getGroupContacts(){
this.showLoader = true;
//If group is private call getGroupMembers
if(this.room.t === 'p'){
this.chatService.getGroupMembers(this.room._id).subscribe(res=>{
console.log(res);
this.members = res['members'];
this.showLoader = false;
});
}
//Otherwise call getChannelMembers for públic groups
@@ -70,17 +76,19 @@ export class GroupMessagesPage implements OnInit {
this.chatService.getChannelMembers(this.room._id).subscribe(res=>{
console.log(res);
this.members = res['members'];
this.showLoader = false;
});
}
}
loadGroupMessages(){
this.showLoader = true;
//If group is private call getGroupMembers
if(this.room.t === 'p'){
this.chatService.getPrivateGroupMessages(this.room._id).subscribe(res=>{
console.log(res);
let msgOnly = res['messages'].filter(data => data.t != 'au');
this.messages = msgOnly.reverse();
this.showLoader = false;
});
}
//Otherwise call getChannelMembers for públic groups
@@ -118,9 +126,13 @@ export class GroupMessagesPage implements OnInit {
});
await popover.present();
popover.onDidDismiss().then(res=>{
console.log(res);
if(res.data){
this.doRefresh();
this.modalController.dismiss();
this.roomName = res.data.name.split('-').join(' ');
console.log(this.roomName);
this.load();
/* this.modalController.dismiss(); */
};
});
@@ -155,7 +167,7 @@ export class GroupMessagesPage implements OnInit {
await modal.present();
modal.onDidDismiss().then(()=>{
this.doRefresh();
this.load();
});
}
@@ -24,6 +24,11 @@
</ion-header>
<ion-content>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<div class="messages" #scrollMe>
<!-- <ion-infinite-scroll position="top" threshold="25%" (ionInfinite)="loadMoreMessages($event)">
<ion-infinite-scroll-content loadindSpiniter="crescent" loadingText="Carregando...">
+14 -10
View File
@@ -13,6 +13,7 @@ import { ContactsPage } from '../new-group/contacts/contacts.page';
styleUrls: ['./messages.page.scss'],
})
export class MessagesPage implements OnInit, AfterViewChecked {
showLoader: boolean;
@ViewChild('scrollMe') private myScrollContainer: ElementRef;
@@ -43,21 +44,21 @@ export class MessagesPage implements OnInit, AfterViewChecked {
this.loggedUser=res;
console.log(this.loggedUser);
});
/* console.log(this.dm); */
/* setInterval(()=>{ */
this.loadMessages();
/* }, 2000); */
this.load();
/* }, 9000); */
}
load(){
this.loadMessages();
this.getChatMembers();
}
loadUser(){
console.log('working');
doRefresh(ev:any){
this.load();
ev.target.complete();
}
ngAfterViewChecked() {
this.scrollToBottom();
}
@@ -86,6 +87,7 @@ export class MessagesPage implements OnInit, AfterViewChecked {
}
loadMessages(){
this.showLoader = true;
this.chatService.getRoomMessages(this.dm._id).subscribe(res => {
/* console.log(res); */
this.messages = res['messages'].reverse();
@@ -94,10 +96,12 @@ export class MessagesPage implements OnInit, AfterViewChecked {
})
}
getChatMembers(){
this.showLoader = true;
this.chatService.getMembers(this.dm._id).subscribe(res=> {
this.dmUsers = res['members'].filter(data => data.username != this.loggedUser.me.username)
console.log(res);
console.log(this.dmUsers);
this.showLoader = false;
});
}
+5 -5
View File
@@ -52,15 +52,15 @@ export class LoginPage implements OnInit {
await alert.present();
}
loginRocketChat(){
loginRocketChat(user:any){
let postData = {
"user": this.username,
"password": this.password
"user": user.username,
"password": user.password,
}
this.authService.loginChat(postData).subscribe((res: any) =>{
console.log(res.data);
this.storageService.store(AuthConnstants.AUTH, res.data);
console.log('Logged user \n'+res.data);
console.log('Login to Rocket chat OK');
},(error:any) =>{
console.log('Network error');
@@ -84,7 +84,7 @@ export class LoginPage implements OnInit {
if (await this.authService.login(this.userattempt)){
console.log(this.userattempt);
this.loginRocketChat();
this.loginRocketChat(this.userattempt);
this.router.navigate(['/home/events']);
}
else
@@ -70,8 +70,9 @@ export class ChatPopoverPage implements OnInit {
});
await modal.present();
modal.onDidDismiss().then(()=>{
return true;
modal.onDidDismiss().then((res)=>{
console.log(res.data);
this.popoverController.dismiss(res.data);
});
}