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 000000000..c556019cb Binary files /dev/null and b/src/assets/images/pdf.png differ diff --git a/src/assets/images/webtrix-logo.png b/src/assets/images/webtrix-logo.png new file mode 100644 index 000000000..94498f472 Binary files /dev/null and b/src/assets/images/webtrix-logo.png differ 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 {