fix chat camera

This commit is contained in:
Peter Maquiran
2023-03-14 09:50:40 +01:00
parent 2b4b879970
commit c825fb2d3c
4 changed files with 48 additions and 14 deletions
+39 -8
View File
@@ -108,6 +108,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
audioPermissionStatus: 'granted' | 'denied' | 'prompt' | null = null
sessionStore = SessionStore
convertBlobToBase64Worker;
constructor(
public popoverController: PopoverController,
private modalController: ModalController,
@@ -130,6 +132,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
private notificationService: NotificationsService,
private router: Router
) {
this.convertBlobToBase64Worker = new Worker(new URL('./convertBlobToBase64.worker.js', import.meta.url));
this.loggedUser = SessionStore.user.ChatData['data'];
this.roomId = this.navParams.get('roomId');
@@ -648,18 +652,20 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
const roomId = this.roomId
const image = await this.CameraService.takePicture();
await this.fileService.saveImage(image)
const lastphoto: any = await this.fileService.loadFiles();
const { capturedImage, capturedImageTitle } = await this.fileService.loadFileData(lastphoto);
const file = await Camera.getPhoto({
quality: 90,
// allowEditing: true,
resultType: CameraResultType.Base64,
source: CameraSource.Camera
});
const blob = this.dataURItoBlob('data:image/jpeg;base64,' + file.base64String)
console.log('data:image/jpeg;base64,' + file.base64String)
const base64 = await fetch(capturedImage);
const blob = await base64.blob();
const formData = new FormData();
formData.append("blobFile", blob);
console.log(capturedImage);
// console.log('capturedImage', capturedImage);
this.ChatSystemService.getDmRoom(roomId).send({
file: {
@@ -667,13 +673,38 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
"guid": ''
},
attachments: [{
"title": capturedImageTitle,
"title": "file.jpg",
"text": "description",
"title_link_download": false,
}],
temporaryData: formData
})
}
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 addImageMobile() {
@@ -151,6 +151,8 @@ export class PublicationsPage implements OnInit {
this.publicationsEventFolderList = folders.filter((e)=>e.ActionType == 'Evento')
this.publicationsTravelFolderList = folders.filter((e)=>e.ActionType != 'Evento')
// ActionModel.create(folders)
await this.storage.set('actionsEvents', this.publicationsEventFolderList);
await this.storage.set('actionsViagens', this.publicationsTravelFolderList);
@@ -167,6 +167,7 @@ export class ViewPublicationsPage implements OnInit {
const found = this.publicationIsPresent(publicationId, folderId)
if(!found) {
this.publicationList[folderId].push(publicationDetails)
// PublicationModel.create(publicationDetails)
} else {
this.publicationList[folderId][findIndex] = publicationDetails
}
+6 -6
View File
@@ -1,12 +1,12 @@
export let versionData = {
"shortSHA": "57b4f0880",
"SHA": "57b4f0880084a1ab1005660d19cb603fa7b279ad",
"shortSHA": "2b4b87997",
"SHA": "2b4b879970ce902dee81bc6046d08b6e5fe29bc8",
"branch": "no_bug_movemente",
"lastCommitAuthor": "'Peter Maquiran'",
"lastCommitTime": "'Fri Mar 10 15:10:37 2023 +0100'",
"lastCommitMessage": "improve publication",
"lastCommitNumber": "4867",
"lastCommitTime": "'Fri Mar 10 15:46:37 2023 +0100'",
"lastCommitMessage": "remove duplication from publication",
"lastCommitNumber": "4868",
"change": "",
"changeStatus": "On branch no_bug_movemente\nChanges to be committed:\n (use \"git restore --staged <file>...\" to unstage)\n\tmodified: src/app/pages/publications/publications.page.ts",
"changeStatus": "On branch no_bug_movemente\nChanges to be committed:\n (use \"git restore --staged <file>...\" to unstage)\n\tmodified: src/app/pages/chat/messages/messages.page.ts\n\tmodified: src/app/pages/publications/publications.page.ts\n\tmodified: src/app/shared/publication/view-publications/view-publications.page.ts",
"changeAuthor": "peter.maquiran"
}