From 07cbb237e4573b328a8654f97506c8034b97b3a8 Mon Sep 17 00:00:00 2001 From: "tiago.kayaya" Date: Thu, 23 Sep 2021 12:13:20 +0100 Subject: [PATCH] further improvements --- .../chat-options-features.page.html | 2 +- .../chat-options-features.page.ts | 9 ++ .../group-messages/group-messages.module.ts | 1 - .../group-messages/group-messages.page.html | 29 +++++-- .../pages/chat/messages/messages.module.ts | 3 +- .../pages/chat/messages/messages.page.html | 28 ++++-- src/app/pages/chat/messages/messages.page.ts | 3 +- src/app/services/functions/file.service.ts | 18 ++-- .../group-messages/group-messages.module.ts | 3 +- .../group-messages/group-messages.page.html | 36 ++++---- .../group-messages/group-messages.page.scss | 3 + .../group-messages/group-messages.page.ts | 82 ++++++++++-------- .../shared/chat/messages/messages.module.ts | 2 + .../shared/chat/messages/messages.page.html | 30 ++++--- .../shared/chat/messages/messages.page.scss | 24 ++++- src/app/shared/chat/messages/messages.page.ts | 44 ++++++---- src/assets/icon/webtrix.svg | 1 + src/assets/images/pdf.png | Bin 0 -> 9862 bytes src/assets/images/webtrix-logo.png | Bin 0 -> 3975 bytes src/global.scss | 42 +++++++++ 20 files changed, 249 insertions(+), 111 deletions(-) create mode 100644 src/assets/icon/webtrix.svg create mode 100644 src/assets/images/pdf.png create mode 100644 src/assets/images/webtrix-logo.png diff --git a/src/app/modals/chat-options-features/chat-options-features.page.html b/src/app/modals/chat-options-features/chat-options-features.page.html index 5660e9d17..40c40b512 100644 --- a/src/app/modals/chat-options-features/chat-options-features.page.html +++ b/src/app/modals/chat-options-features/chat-options-features.page.html @@ -5,7 +5,7 @@
- + diff --git a/src/app/modals/chat-options-features/chat-options-features.page.ts b/src/app/modals/chat-options-features/chat-options-features.page.ts index ca9c464cf..f10cc16cc 100644 --- a/src/app/modals/chat-options-features/chat-options-features.page.ts +++ b/src/app/modals/chat-options-features/chat-options-features.page.ts @@ -72,6 +72,15 @@ export class ChatOptionsFeaturesPage implements OnInit { this.modalController.dismiss('add-document'); } + takePicture(){ + if( window.innerWidth < 701){ + this.popoverController.dismiss('take-picture'); + } + else{ + this.modalController.dismiss('take-picture'); + } + } + addPicture(){ this.modalController.dismiss('add-picture'); } diff --git a/src/app/pages/chat/group-messages/group-messages.module.ts b/src/app/pages/chat/group-messages/group-messages.module.ts index c0e419c06..a799129af 100644 --- a/src/app/pages/chat/group-messages/group-messages.module.ts +++ b/src/app/pages/chat/group-messages/group-messages.module.ts @@ -21,7 +21,6 @@ import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; FormsModule, FontAwesomeModule, IonicModule, - GroupMessagesPageRoutingModule, ChatPopoverPageModule, BtnModalDismissPageModule, diff --git a/src/app/pages/chat/group-messages/group-messages.page.html b/src/app/pages/chat/group-messages/group-messages.page.html index 2d3cb7834..277f1c5d3 100644 --- a/src/app/pages/chat/group-messages/group-messages.page.html +++ b/src/app/pages/chat/group-messages/group-messages.page.html @@ -50,15 +50,26 @@
image -
-
- - image - - -

{{file.title}}

-

{{file.text}}

-
+
+
+
+ + + + + + + {{file.title}} + + +
+
+ + {{file.description}} + + {{msg.file.type.replace('application/','').toUpperCase()}} + +
diff --git a/src/app/pages/chat/messages/messages.module.ts b/src/app/pages/chat/messages/messages.module.ts index bfcf1d45d..a6e1c19f6 100644 --- a/src/app/pages/chat/messages/messages.module.ts +++ b/src/app/pages/chat/messages/messages.module.ts @@ -9,6 +9,7 @@ import { MessagesPageRoutingModule } from './messages-routing.module'; import { MessagesPage } from './messages.page'; import { SharedModule } from 'src/app/shared/shared.module'; import { BtnModalDismissPage } from 'src/app/shared/btn-modal-dismiss/btn-modal-dismiss.page'; +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; @NgModule({ @@ -16,7 +17,7 @@ import { BtnModalDismissPage } from 'src/app/shared/btn-modal-dismiss/btn-modal- CommonModule, FormsModule, IonicModule, - + FontAwesomeModule, MessagesPageRoutingModule ], declarations: [MessagesPage] diff --git a/src/app/pages/chat/messages/messages.page.html b/src/app/pages/chat/messages/messages.page.html index c43e03ac0..9c38399f3 100644 --- a/src/app/pages/chat/messages/messages.page.html +++ b/src/app/pages/chat/messages/messages.page.html @@ -47,15 +47,25 @@
image
-
- - image - - - -

{{file.title}}

-

{{file.text}}

-
+
+
+ + + + + + + {{file.title}} + + +
+
+ + {{file.description}} + + {{msg.file.type.replace('application/','').toUpperCase()}} + +
diff --git a/src/app/pages/chat/messages/messages.page.ts b/src/app/pages/chat/messages/messages.page.ts index 0febfe9c7..bfbd506de 100644 --- a/src/app/pages/chat/messages/messages.page.ts +++ b/src/app/pages/chat/messages/messages.page.ts @@ -339,7 +339,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy { // happens when the synchro was pending for too long // let's reconnect await this.serverLongPull(); - } else if (res != 200) { + } + else if (res != 200) { // Show Error //showMessage(response.statusText); //this.loadMessages() diff --git a/src/app/services/functions/file.service.ts b/src/app/services/functions/file.service.ts index 4b9757981..037f7031a 100644 --- a/src/app/services/functions/file.service.ts +++ b/src/app/services/functions/file.service.ts @@ -206,9 +206,11 @@ export class FileService { }); await modal.present(); modal.onDidDismiss().then(async res=>{ - if(res){ + const data = res.data; + + if(data.selected){ const loader = this.toastService.loading(); - const data = res.data; + this.documents.push(data.selected); console.log(res.data.selected); console.log(res.data.selected.Id); @@ -226,12 +228,16 @@ export class FileService { "msg": "", "attachments": [{ "title": res.data.selected.Assunto, - "text": res.data.selected.DocTypeDesc, + "description": res.data.selected.DocTypeDesc, "title_link": url_no_options, "title_link_download": true, - "thumb_url": "https://static.ichimura.ed.jp/uploads/2017/10/pdf-icon.png", + //"thumb_url": "assets/images/webtrix-logo.png", "message_link": url_no_options, - }] + }], + "file":{ + "name": res.data.selected.Assunto, + "type": "application/webtrix" + } } } this.chatService.sendMessage(body).subscribe(res=> { @@ -240,7 +246,7 @@ export class FileService { },(error) => { loader.remove(); }); - + loader.remove(); } }); } diff --git a/src/app/shared/chat/group-messages/group-messages.module.ts b/src/app/shared/chat/group-messages/group-messages.module.ts index b7deec448..5bb1d5128 100644 --- a/src/app/shared/chat/group-messages/group-messages.module.ts +++ b/src/app/shared/chat/group-messages/group-messages.module.ts @@ -12,17 +12,18 @@ import { SharedModule } from 'src/app/shared/shared.module'; import { ChatPopoverPageModule } from '../../popover/chat-popover/chat-popover.module'; import { NewEventPageModule } from '../../agenda/new-event/new-event.module'; import { PdfViewerModule } from 'ng2-pdf-viewer'; +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; @NgModule({ imports: [ CommonModule, FormsModule, IonicModule, + FontAwesomeModule, PdfViewerModule, ChatPopoverPageModule, GroupMessagesPageRoutingModule, // - PdfViewerModule, ], exports: [GroupMessagesPage], schemas: [CUSTOM_ELEMENTS_SCHEMA], diff --git a/src/app/shared/chat/group-messages/group-messages.page.html b/src/app/shared/chat/group-messages/group-messages.page.html index faf23e61f..2ee87572b 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.html +++ b/src/app/shared/chat/group-messages/group-messages.page.html @@ -50,23 +50,25 @@
image
-
- - image - - - -

{{file.title}}

-

{{file.text}}

-
- - +
+
+ + + + + + + {{file.title}} + + +
+
+ + {{file.description}} + + {{msg.file.type.replace('application/','').toUpperCase()}} + +
diff --git a/src/app/shared/chat/group-messages/group-messages.page.scss b/src/app/shared/chat/group-messages/group-messages.page.scss index 6dc562742..cfe8a412a 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.scss +++ b/src/app/shared/chat/group-messages/group-messages.page.scss @@ -1,4 +1,7 @@ @import '~src/function.scss'; + div{ + overflow: auto; + } .header-toolbar{ --background:transparent; --opacity: 1; diff --git a/src/app/shared/chat/group-messages/group-messages.page.ts b/src/app/shared/chat/group-messages/group-messages.page.ts index 4216d8563..c03f567b4 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.ts +++ b/src/app/shared/chat/group-messages/group-messages.page.ts @@ -632,57 +632,67 @@ export class GroupMessagesPage implements OnInit, OnChanges, AfterViewInit, OnDe } this.openNewEventPage.emit(data); } + else if(res['data'] == 'take-picture'){ + this.fileService.addCameraPictureToChat(this.roomId); + //this.loadPicture(); + } else if(res['data'] == 'add-picture'){ - this.loadPicture(); + this.fileService.addPictureToChat(this.roomId); + //this.loadPicture(); } else if(res['data'] == 'add-document'){ this.loadDocument(); } else if(res['data'] == 'documentoGestaoDocumental'){ - this.addDocGestaoDocumental(); + this.fileService.addDocGestaoDocumentalToChat(this.roomId); + //this.addDocGestaoDocumental(); } }); } async serverLongPull(){ - this.chatService.getPrivateGroupMessages(this.roomId).subscribe(async res => { - if (res == 502) { - // Connection timeout - // happens when the connection was pending for too long - // let's reconnect - await this.serverLongPull(); - } else if (res != 200) { - // Show Error - //showMessage(response.statusText); - //this.loadMessages() - let msgOnly = res['messages'].filter(data => data.t != 'au'); - this.messages = msgOnly.reverse(); - console.log(this.messages); - // Reconnect in one second - if(this.route.url != "/home/chat"){ - //console.log("Timer message stop") - } else { - if(document.querySelector('app-group-messages')){ - await new Promise(resolve => setTimeout(resolve,3000)); - await this.serverLongPull(); - this.getGroups.emit(); - //console.log('Timer message running') - } - else{ - - } - } - - } else { - // Got message - //let message = await response.text(); - //this.loadMessages() - await this.serverLongPull(); + if(this.route.url != "/home/chat" && document.querySelector('app-group-messages')){ + console.log("Timer message stop") + } + else + { + + this.chatService.getPrivateGroupMessages(this.roomId).subscribe(async res => + { + if(res['success'] == true) { + // Show Error + //showMessage(response.statusText); + //this.loadMessages() + let msgOnly = res['messages'].filter(data => data.t != 'au'); + this.messages = msgOnly.reverse(); + console.log(this.messages); + // Reconnect in one second + + if(document.querySelector('app-group-messages')){ + await new Promise(resolve => setTimeout(resolve,5000)); + this.getGroups.emit(); + console.log('Timer message running') + await this.serverLongPull(); + } + + } + else { + alert('HEY2') + // Got message + //let message = await response.text(); + //this.loadMessages() + await this.serverLongPull(); + } + }, (error)=>{ + console.log(error); + this.serverLongPull(); + }); } - }); } + + } diff --git a/src/app/shared/chat/messages/messages.module.ts b/src/app/shared/chat/messages/messages.module.ts index 209edd0a0..c30940c65 100644 --- a/src/app/shared/chat/messages/messages.module.ts +++ b/src/app/shared/chat/messages/messages.module.ts @@ -8,12 +8,14 @@ import { MessagesPageRoutingModule } from './messages-routing.module'; import { MessagesPage } from './messages.page'; import { SharedModule } from 'src/app/shared/shared.module'; +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; @NgModule({ imports: [ CommonModule, FormsModule, IonicModule, + FontAwesomeModule, MessagesPageRoutingModule ], exports: [MessagesPage], diff --git a/src/app/shared/chat/messages/messages.page.html b/src/app/shared/chat/messages/messages.page.html index 855ed613e..6727cbe35 100644 --- a/src/app/shared/chat/messages/messages.page.html +++ b/src/app/shared/chat/messages/messages.page.html @@ -42,18 +42,26 @@
image -
-
- - image - - - -

{{file.title}}

-

{{file.text}}

-
+
+
+ + + + + + + {{file.title}} + + +
+
+ + {{file.description}} + + {{msg.file.type.replace('application/','').toUpperCase()}} + +
-
{{last ? scrollToBottom() : ''}} diff --git a/src/app/shared/chat/messages/messages.page.scss b/src/app/shared/chat/messages/messages.page.scss index 657d5510a..127bf4a5c 100644 --- a/src/app/shared/chat/messages/messages.page.scss +++ b/src/app/shared/chat/messages/messages.page.scss @@ -151,7 +151,29 @@ margin-left: 10px; float: right; } - } + } + .message{ + .message-attachments{ + .file{ + align-items: center; + + .file-details{ + width: 100%; + + .file-title{ + color: #000; + text-decoration: underline; + white-space: nowrap; + overflow: hidden !important; + text-overflow: ellipsis !important; + } + .file-title:hover{ + color: #0782c9; + } + } + } + } + } } ion-footer{ diff --git a/src/app/shared/chat/messages/messages.page.ts b/src/app/shared/chat/messages/messages.page.ts index 8fbf4ce18..d4dbd0524 100644 --- a/src/app/shared/chat/messages/messages.page.ts +++ b/src/app/shared/chat/messages/messages.page.ts @@ -139,6 +139,8 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy this.scrollingOnce = false; } this.currentPosition = scroll; + /* console.log(this.currentPosition); + console.log(this.scrollingOnce); */ } ngOnDestroy() { @@ -356,6 +358,10 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy } this.openNewEventPage.emit(data); } + else if(res['data'] == 'take-picture'){ + this.fileService.addCameraPictureToChat(this.roomId); + //this.loadPicture(); + } else if(res['data'] == 'add-picture'){ this.fileService.addPictureToChat(this.roomId); //this.loadPicture(); @@ -376,38 +382,42 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy async serverLongPull() { - const roomId = this.roomId - this.chatService.getRoomMessages(this.roomId).subscribe(async res => { + const roomId = this.roomId; - if (res == 502) { - // Connection timeout - // happens when the connection was pending for too long - // let's reconnect - await this.serverLongPull(); - } else if (res != 200) { + this.chatService.getRoomMessages(this.roomId).subscribe(async res => { + console.log(res['success']); + + + if (res['success'] == true) { // Show Error //showMessage(response.statusText); //this.loadMessages() this.messages = res['messages'].reverse(); this.chatMessageStore.add(roomId, this.messages) + console.log(this.messages); // Reconnect in one second if(this.route.url != "/home/chat"){ console.log("Timer message stop") - } else { - if(document.querySelector('app-messages')){ - await new Promise(resolve => setTimeout(resolve, 5000)); - await this.serverLongPull(); - this.getDirectMessages.emit(); - console.log('Timer message running') - } } - } else { + else{ + if(document.querySelector('app-messages')){ + await new Promise(resolve => setTimeout(resolve, 5000)); + await this.serverLongPull(); + this.getDirectMessages.emit(); + console.log('Timer message running') + } + } + } /* else { // Got message //let message = await response.text(); //this.loadMessages() await this.serverLongPull(); - } + } */ + }, (error)=>{ + console.log(error); + this.serverLongPull(); + }); } diff --git a/src/assets/icon/webtrix.svg b/src/assets/icon/webtrix.svg new file mode 100644 index 000000000..fcf80f480 --- /dev/null +++ b/src/assets/icon/webtrix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/pdf.png b/src/assets/images/pdf.png new file mode 100644 index 0000000000000000000000000000000000000000..c556019cb1ee39567965cfc3ab3c38c566ecfcd7 GIT binary patch literal 9862 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 literal 0 HcmV?d00001 diff --git a/src/global.scss b/src/global.scss index 444d76438..1b1a38085 100644 --- a/src/global.scss +++ b/src/global.scss @@ -1072,6 +1072,48 @@ ngx-mat-datetime-content{ } } +.message-attachments{ + border-radius: 5px; + background-color: #42b9fe13; + padding: 1px; + .file{ + ion-thumbnail{ + --size: 20px; + } + .file-details{ + max-width: calc(100% - 20px); + padding-left: 5px; + + .file-title:hover{ + color: #0782c9; + text-decoration: underline; + } + + span{ + white-space: nowrap; + overflow: hidden !important; + text-overflow: ellipsis !important; + } + .pdf-icon{ + color: #a40404; + } + .word-icon{ + color: #295497; + } + .excel-icon{ + color: #1f7244; + } + .powerpoint-icon{ + color: #d24726; + } + } + } + .file-details-optional{ + font-size: xx-small; + padding-left: 5px; + } +} + @media only screen and (min-width: 665px) { .loading-blocker {