This commit is contained in:
Peter Maquiran
2022-09-28 21:05:28 +01:00
parent aa72837f66
commit 4c8e522d40
4 changed files with 43 additions and 10 deletions
+4 -7
View File
@@ -463,12 +463,6 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
} }
} }
/* playSound(url?:any){
alert('here')
//this.audioDownloaded = this.sanitiser.bypassSecurityTrustResourceUrl(url);
this.audioDownloaded = url;
} */
docIndex(index: number) { docIndex(index: number) {
this.dicIndex = index this.dicIndex = index
@@ -626,6 +620,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
async takePicture() { async takePicture() {
alert("!");
const roomId = this.roomId const roomId = this.roomId
const image = await this.CameraService.takePicture(); const image = await this.CameraService.takePicture();
@@ -633,12 +629,13 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
const lastphoto: any = await this.fileService.loadFiles(); const lastphoto: any = await this.fileService.loadFiles();
const { capturedImage, capturedImageTitle } = await this.fileService.loadFileData(lastphoto); const { capturedImage, capturedImageTitle } = await this.fileService.loadFileData(lastphoto);
alert('!!');
const base64 = await fetch(capturedImage); const base64 = await fetch(capturedImage);
const blob = await base64.blob(); const blob = await base64.blob();
const formData = new FormData(); const formData = new FormData();
formData.append("blobFile", blob); formData.append("blobFile", blob);
console.log(capturedImage);
this.wsChatMethodsService.getDmRoom(roomId).send({ this.wsChatMethodsService.getDmRoom(roomId).send({
file: { file: {
+1
View File
@@ -223,6 +223,7 @@ export class AuthService {
const formData = message.temporaryData const formData = message.temporaryData
try { try {
alert('upload try')
let guid: any = await this.AttachmentsService.uploadFile(formData).toPromise() let guid: any = await this.AttachmentsService.uploadFile(formData).toPromise()
message.file.guid = guid.path message.file.guid = guid.path
+9 -1
View File
@@ -59,6 +59,7 @@ export class MessageService {
downloadLoader: boolean = false downloadLoader: boolean = false
downloadAttachments = false; downloadAttachments = false;
downloadAttachmentsTemp = 0; downloadAttachmentsTemp = 0;
UploadAttachmentsTemp = 0;
constructor(private storage: Storage, constructor(private storage: Storage,
private NfService: NfService, private NfService: NfService,
@@ -150,11 +151,13 @@ export class MessageService {
let uploadSuccessfully = false let uploadSuccessfully = false
if(this.hasSendAttachment == false) { if(this.hasSendAttachment == false) {
uploadSuccessfully = await this.NfService.beforeSendAttachment(this) uploadSuccessfully = await this.NfService.beforeSendAttachment(this)
this.UploadAttachmentsTemp++
} }
this.uploadingFile = false this.uploadingFile = false
if(uploadSuccessfully) { if(uploadSuccessfully) {
this.hasSendAttachment = true this.hasSendAttachment = true
this.errorUploadingAttachment = false this.errorUploadingAttachment = false
this.temporaryData = {} this.temporaryData = {}
@@ -163,6 +166,7 @@ export class MessageService {
await this.sendRequest(params) await this.sendRequest(params)
} else if(this.WsChatService.isLogin == false) { } else if(this.WsChatService.isLogin == false) {
this.WsChatService.registerCallback({ this.WsChatService.registerCallback({
type: 'reConnect', type: 'reConnect',
funx: async ()=> { funx: async ()=> {
@@ -171,7 +175,11 @@ export class MessageService {
} }
}) })
} else if(uploadSuccessfully == false) { } else if(uploadSuccessfully == false && this.UploadAttachmentsTemp == 1) {
this.send()
}
else if(uploadSuccessfully == false) {
this.errorUploadingAttachment = true this.errorUploadingAttachment = true
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
+29 -2
View File
@@ -613,8 +613,34 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
} }
dataURItoBlob(dataURI) {
// convert base64 to raw binary data held in a string
// doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this
var byteString = atob(dataURI.split(',')[1]);
// separate out the mime component
var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0]
// write the bytes of the string to an ArrayBuffer
var ab = new ArrayBuffer(byteString.length);
// create a view into the buffer
var ia = new Uint8Array(ab);
// set the bytes of the buffer to the correct values
for (var i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}
// write the ArrayBuffer to a blob, and you're done
var blob = new Blob([ab], {type: mimeString});
return blob;
}
async takePictureMobile() { async takePictureMobile() {
const roomId = this.roomId const roomId = this.roomId
const file = await Camera.getPhoto({ const file = await Camera.getPhoto({
@@ -624,8 +650,8 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
source: CameraSource.Camera source: CameraSource.Camera
}); });
const response = await fetch('data:image/jpeg;base64,' + file.base64String!); const blob = this.dataURItoBlob('data:image/jpeg;base64,' + file.base64String)
const blob = await response.blob(); console.log('data:image/jpeg;base64,' + file.base64String)
const formData = new FormData(); const formData = new FormData();
formData.append("blobFile", blob); formData.append("blobFile", blob);
@@ -648,6 +674,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
} }
async takePicture() { async takePicture() {
const roomId = this.roomId const roomId = this.roomId
const image = await this.CameraService.takePicture(); const image = await this.CameraService.takePicture();