This commit is contained in:
tiago.kayaya
2021-09-14 10:30:13 +01:00
parent 9994ba1a5d
commit 4ad15f822c
7 changed files with 74 additions and 33 deletions
@@ -40,7 +40,7 @@
<ion-label>A conversa original mantêm-se como chat individual</ion-label>
</div>
<div *ngFor="let msg of messages; let last = last" >
<div *ngIf="msg.t != 'r' || msg.t != 'ul' && msg.t != 'ru'" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>
<div *ngIf="msg.t != 'r' && msg.t != 'ul' && msg.t != 'ru'" class='incoming-{{msg.u.username!=loggedUser.me.username}}'>
<div class="title">
<ion-label>{{msg.u.name}}</ion-label>
<span class="time">{{showDateDuration(msg._updatedAt)}}</span>
@@ -13,6 +13,7 @@ import { EditGroupPage } from '../edit-group/edit-group.page';
import { TimeService } from 'src/app/services/functions/time.service';
import { FileLoaderService } from 'src/app/services/file/file-loader.service';
import { FileToBase64Service } from 'src/app/services/file/file-to-base64.service';
import { FileService } from 'src/app/services/functions/file.service';
@Component({
selector: 'app-group-messages',
@@ -59,6 +60,7 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy {
private timeService: TimeService,
private fileLoaderService: FileLoaderService,
private fileToBase64Service: FileToBase64Service,
private fileService: FileService,
) {
this.loggedUserChat = authService.ValidatedUserChat['data'];
this.isGroupCreated = true;
@@ -328,9 +330,34 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy {
});
await popover.present();
await popover.onDidDismiss().then((res)=>{
if(res['data'] == "picture"){
if(res['data'] == "loadPicture"){
this.loadPicture();
}
else if(res['data'] == "takePicture"){
let data = this.fileService.takePicture();
alert(data);
alert(data.name);
if(data.name != null){
let body = {
"message":
{
"rid": this.roomId,
"msg": "",
"attachments": [{
"title": data.name,
"title_link_download": false,
"image_url": data.image,
}]
}
}
this.chatService.sendMessage(body).subscribe(res=> {
console.log(res);
},(error) => {
});
}
}
});
}
@@ -1,6 +1,8 @@
import { Injectable } from '@angular/core';
import { FileLoaderService } from '../file/file-loader.service';
import { FileToBase64Service } from '../file/file-to-base64.service';
//Cordova
import { Camera, CameraOptions } from '@ionic-native/camera/ngx';
@Injectable({
providedIn: 'root'
@@ -11,10 +13,39 @@ export class FileService {
capturedImageTitle:any;
constructor(
private camera: Camera,
private fileLoaderService: FileLoaderService,
private fileToBase64Service: FileToBase64Service,
) { }
takePicture() {
const options: CameraOptions = {
quality: 50,
destinationType: this.camera.DestinationType.DATA_URL,
encodingType: this.camera.EncodingType.JPEG,
mediaType: this.camera.MediaType.PICTURE,
targetWidth: 720,
targetHeight: 720,
}
this.camera.getPicture(options).then((imageData) => {
// imageData is either a base64 encoded string or a file URI
// If it's base64 (DATA_URL): m
//let base64Image = 'data:image/jpeg;base64,' + imageData;
this.capturedImage = 'data:image/png;base64,'+imageData;
this.capturedImageTitle = new Date().getTime() + '.jpeg';
}, (err) => {
/* console.log(err); */
});
let data = {
image:this.capturedImage,
name: this.capturedImageTitle
}
return data;
}
loadPicture() {
const input = this.fileLoaderService.createInput({
accept: ['image/apng', 'image/jpeg', 'image/png']
@@ -398,32 +398,6 @@ export class GroupMessagesPage implements OnInit, OnChanges, AfterViewInit, OnDe
});
}
/* async actionSheet() {
const actionSheet = await this.actionSheetController.create({
cssClass: 'my-custom-class',
buttons: [{
text: 'Sair do grupo',
handler: () => {
console.log('Delete clicked');
}
}, {
text: 'Alterar nome do grupo1',
handler: () => {
console.log('Alterar nome do grupo');
this.openChangeGroupName()
}
}, {
text: 'Apagar o grupo',
handler: () => {
console.log('Play clicked');
}
},
]
});
await actionSheet.present();
}
*/
loadPicture() {
const input = this.fileLoaderService.createInput({
accept: ['image/apng', 'image/jpeg', 'image/png']
@@ -5,7 +5,7 @@
</button>
</div>
<div class="buttons">
<button hidden (click)="notImplemented()" full class="btn-ok" shape="round" >Tirar Fotografia</button>
<button (click)="takePicture()" full class="btn-ok" shape="round" >Tirar Fotografia</button>
<button hidden (click)="notImplemented()" class="btn-ok" shape="round" >Digitalizar Documento</button>
<button (click)="anexarFoto()" full class="btn-ok" shape="round" >Anexar Fotografia</button>
<button hidden (click)="getDoc()" class="btn-ok" shape="round" >Anexar Documento</button>
@@ -45,12 +45,21 @@ export class ChatOptionsPopoverPage implements OnInit {
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
anexarFoto(){
takePicture(){
if( window.innerWidth < 701){
this.popoverController.dismiss('picture');
this.popoverController.dismiss('takePicture');
}
else{
this.modalController.dismiss('picture');
this.modalController.dismiss('takePicture');
}
}
anexarFoto(){
if( window.innerWidth < 701){
this.popoverController.dismiss('loadPicture');
}
else{
this.modalController.dismiss('loadPicture');
}
}