This commit is contained in:
Peter Maquiran
2024-03-26 13:58:09 +01:00
3884 changed files with 1963136 additions and 404 deletions
+1 -1
View File
@@ -217,7 +217,7 @@
<div class="timeline-container height-100 d-flex pt-10 pl-20 filter-{{segment}} flex-column" >
<div class="timeline-date align-center" *ngIf="isSelectedDayHasEvent && hasEventToday">
<span >Hoje,&nbsp;</span> {{ timelineDate }}
<span >Hoje,&nbsp;</span> {{ todayDateFormat() }}
</div>
<div class="ss-timeline timeline-mobile flex-grow-1 pr-10 text-black height-100 width-100 overflow-y-auto" >
+7
View File
@@ -62,6 +62,8 @@ export class AgendaPage implements OnInit {
contacts: EventPerson[]
todayDateFormated: string;
setView(view: CalendarView) {
this.view = view;
}
@@ -1206,6 +1208,11 @@ export class AgendaPage implements OnInit {
return true
}
todayDateFormat() {
this.todayDateFormated = momentG(new Date(), 'dd MMMM');
return this.todayDateFormated;
}
}
function endOfMonth(myDate) {
@@ -95,7 +95,8 @@
<ion-item *ngFor="let attach of loadedEvent.Attachments; let i = index" class="width-100" class="ion-no-margin ion-no-padding">
<ion-label class="width-100 d-flex " (click)="docIndex(i);LoadDocumentDetails()">
<p class="flex-grow-1" >
<span class="attach-title-item d-block">{{attach.SourceName}}</span>
<span class="attach-title-item d-block">{{attach.SourceName || 'Sem título'}}</span>
<span class="span-left d-block">{{attach.Stakeholders}}</span>
</p>
@@ -193,6 +193,7 @@ export class ViewEventPage implements OnInit {
if(this.sesseionStora.user.Profile == 'MDGPR' || this.sesseionStora.user.Profile == 'PR') {
this.eventsService.getEvent(this.eventId).subscribe(res => {
console.log('Loaded Event', res)
res = this.dateService.fixDate(res as any)
this.loadedEvent = res;
this.setTimeZone()
@@ -217,7 +218,7 @@ export class ViewEventPage implements OnInit {
if(this.CalendarId) {
this.eventsService.genericGetEvent(this.eventId, this.CalendarId).subscribe(res => {
console.log('Loaded Event', res)
/* const div = document.createElement("div")
div.innerHTML = res.Body.Text
res.Body.Text = div.innerText */
@@ -1151,7 +1151,7 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy {
}
async openFile(pdfString, filename, type) {
const modal = await this.modalController.create({
/* const modal = await this.modalController.create({
component: ViewDocumentSecondOptionsPage,
componentProps: {
fileUrl: pdfString,
@@ -1159,8 +1159,8 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy {
},
cssClass: 'modal modal-desktop'
});
await modal.present();
/* const blob = this.b64toBlob(pdfString, type)
await modal.present(); */
const blob = this.b64toBlob(pdfString, type)
let pathFile = ''
const fileName = filename
const contentFile = blob
@@ -1170,17 +1170,23 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy {
pathFile = this.file.externalRootDirectory
}
console.log('file data', pdfString)
console.log(pathFile)
let removePre = this.removeTextBeforeSlash(pdfString,',')
console.log('file data remove ', removePre)
await Filesystem.writeFile({
path: fileName,
data: pdfString,
directory: Directory.Data,
data: removePre,
directory: Directory.Cache,
}).then((dir) => {
console.log('DIR ', dir)
this.fileOpener
.open(dir.uri, type)
.then(() => console.log())
.catch(e => console.error(e))
}); */
});
}
downloadFileMsg(msg: MessageService) {
@@ -1317,6 +1323,16 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy {
reject(error);
};
});
}
removeTextBeforeSlash(inputString, controlString) {
if (inputString.includes(controlString)) {
const parts = inputString.split(controlString);
return parts.length > 1 ? parts[1] : inputString;
} else {
return inputString;
}
}
}
+7 -4
View File
@@ -848,7 +848,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
console.log('ios add file ')
const resultt = await FilePicker.pickFiles({
types: ['application/pdf'],
types: ['application/pdf', 'application/doc', 'application/docx','application/xls', 'application/xlsx', 'application/ppt',
'application/pptx', 'application/txt'],
multiple: false,
readData: true,
});
@@ -856,6 +857,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
console.log('RESULT', resultt.files[0].data)
const blobb = this.fileService.base64toBlob(resultt.files[0].data, resultt.files[0].mimeType)
const blob = new Blob([resultt.files[0].data], {type: resultt.files[0].mimeType});
const formDataa = new FormData();
formDataa.append('blobFile', blobb);
@@ -1109,7 +1111,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
console.log('url while open ',pdfString)
const modal = await this.modalController.create({
/* const modal = await this.modalController.create({
component: ViewDocumentSecondOptionsPage,
componentProps: {
fileUrl: pdfString,
@@ -1119,6 +1121,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
});
await modal.present();
/*
await modal.present(); */
var blob = new Blob([pdfString], { type: 'application/pdf' });
console.log('blob blob', blob)
@@ -1147,7 +1151,6 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
path: fileName,
data: removePre,
directory: Directory.Cache,
encoding: Encoding.UTF8
}).then((dir) => {
console.log('DIR ', dir)
this.fileOpener
@@ -1156,7 +1159,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
.catch(e => console.error(e))
}).catch((error) => {
console.log('error writing the file', error)
}); */
});
}
removeTextBeforeSlash(inputString, controlString) {
@@ -96,7 +96,7 @@
(click)="viewDocument(document.SourceId, document.ApplicationId)"
class="width-100 d-block list">
<p class="d-flex ion-justify-content-between">
<span class="attach-title-item">{{document.SourceName}}</span>
<span class="attach-title-item">{{document.SourceName || 'Sem título'}}</span>
<span class="app-name" *ngIf="document.ApplicationId == 8"> Correspondencia </span>
<span class="app-name" *ngIf="document.ApplicationId == 386"> AccoesPresidenciais </span>
<span class="app-name" *ngIf="document.ApplicationId == 361 "> ArquivoDespachoElect </span>
@@ -95,7 +95,7 @@
*ngFor="let attachment of loadedAttachments"
(click)="viewDocument(attachment.DocId, attachment)">
<ion-label>
<p class="attach-title-item d-block">{{attachment.Description}}</p>
<p class="attach-title-item d-block">{{attachment.Description || 'Sem título'}}</p>
<p><span class="span-left">{{attachment.Stakeholders}}</span><span class="span-right">{{ attachment.CreateDate | date: 'dd-MM-yyyy HH:mm' }}</span></p>
</ion-label>
</ion-item>
@@ -209,36 +209,31 @@ export class NewPublicationPage implements OnInit {
this.capturedImage = 'data:image/jpeg;base64,' + capturedImage.base64String;
this.capturedImageTitle = 'foto';
if (this.fileSizeToMB(capturedImage.base64String.length) <= 20) {
const compressedImage = await this.compressImageBase64(
this.capturedImage,
800, // maxWidth
800, // maxHeight
0.9 // quality
).then((picture) => {
console.log('take picture', this.removeTextBeforeSlash(picture, ','),)
this.filecontent = true;
this.photoOrVideo = false;
const newAttachment = new PublicationAttachmentEntity(
{
base64: this.removeTextBeforeSlash(picture, ','),
extension: capturedImage.format,
OriginalFileName: "image",
FileType: 'image'
}
)
const compressedImage = await this.compressImageBase64(
this.capturedImage,
800, // maxWidth
800, // maxHeight
0.9 // quality
).then((picture) => {
console.log('take picture', this.removeTextBeforeSlash(picture, ','),)
this.filecontent = true;
this.photoOrVideo = false;
this.PublicationFromMvService.form.Files.push(newAttachment)
const newAttachment = new PublicationAttachmentEntity(
{
base64: this.removeTextBeforeSlash(picture, ','),
extension: capturedImage.format,
OriginalFileName: "image",
FileType: 'image'
}
)
this.PublicationFromMvService.form.Files.push(newAttachment)
});
} else {
if (this.PublicationFromMvService.form.Files.length === 0)
this.filesSizeSum = 0
});
this.httpErrorHandle.validationMessagge('filessize');
}
}
async laodPicture() {
@@ -271,26 +266,19 @@ export class NewPublicationPage implements OnInit {
console.log('video record', data)
data.forEach(async element => {
this.filesSizeSum = this.filesSizeSum + element.size
if (this.fileSizeToMB(this.filesSizeSum) <= 20) {
try {
if (this.platform.is('ios')) {
this.recordevideoIos(element.fullPath, element)
} else {
this.recordVideoAndroid(element.fullPath, element)
}
} catch (e) {
console.error('Unable to write file', e);
}
// element.size
try {
if (this.platform.is('ios')) {
this.recordevideoIos(element.fullPath, element)
} else {
if (this.PublicationFromMvService.form.Files.length === 0)
this.filesSizeSum = 0
this.httpErrorHandle.validationMessagge('filessize')
this.recordVideoAndroid(element.fullPath, element)
}
} catch (e) {
console.error('Unable to write file', e);
}
});
} catch (error) {
console.log('record video error: ', error)
@@ -616,41 +604,41 @@ export class NewPublicationPage implements OnInit {
if (this.checkFileType.checkFileType(FileExtension) == 'image' || this.checkFileType.checkFileType(FileExtension) == 'video') {
let resultUrl = decodeURIComponent(element.url);
if(this.platform.is('ios')) {
if (this.platform.is('ios')) {
const stringGerada = this.gerarStringAleatoria();
console.log(stringGerada);
this.shareContentIso(resultUrl,FileExtension,stringGerada)
console.log(stringGerada);
this.shareContentIso(resultUrl, FileExtension, stringGerada)
} else {
this.shareContentAndroid(resultUrl,FileExtension)
this.shareContentAndroid(resultUrl, FileExtension)
}
/*
Filesystem.readFile({ path: resultUrl }).then(async (content) => {
let fileObject;
try {
if (this.checkFileType.checkFileType(FileExtension) == 'image') {
fileObject = {
FileBase64: this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
/*
Filesystem.readFile({ path: resultUrl }).then(async (content) => {
let fileObject;
try {
if (this.checkFileType.checkFileType(FileExtension) == 'image') {
fileObject = {
FileBase64: this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
} else if (this.checkFileType.checkFileType(FileExtension) == 'video') {
fileObject = {
FileBase64: 'data:video/mp4;base64,' + this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
} else if (this.checkFileType.checkFileType(FileExtension) == 'video') {
fileObject = {
FileBase64: 'data:video/mp4;base64,' + this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
}
console.log('shared base', content.data)
}
console.log('shared base', content.data)
this.seletedContent.push(fileObject)
} catch (error) {
console.log('error shared filesystem', error)
}
this.seletedContent.push(fileObject)
} catch (error) {
console.log('error shared filesystem', error)
}
}) */
}) */
} else {
this.httpErrorHandle.validationMessagge('filetype');
}
@@ -768,7 +756,7 @@ console.log(stringGerada);
}
loadVideoAndroid(resultUrl,element) {
loadVideoAndroid(resultUrl, element) {
Filesystem.readFile({ path: resultUrl })
.then(async (content) => {
@@ -809,7 +797,7 @@ console.log(stringGerada);
}
gerarStringAleatoria() {
gerarStringAleatoria() {
const caracteres = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
let stringAleatoria = '';
@@ -821,7 +809,7 @@ console.log(stringGerada);
return stringAleatoria;
}
async shareContentIso(fullPath,FileExtension,filename) {
async shareContentIso(fullPath, FileExtension, filename) {
try {
if (this.checkFileType.checkFileType(FileExtension) == 'image') {
@@ -829,11 +817,11 @@ console.log(stringGerada);
Filesystem.readFile({ path: fullPath }).then(async (content) => {
let fileObject;
try {
fileObject = {
FileBase64: this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
fileObject = {
FileBase64: this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
console.log('shared base', content.data)
this.PublicationFromMvService.form.Files.push(fileObject)
@@ -848,13 +836,13 @@ console.log(stringGerada);
path: '',
});
let fileObject ={};
this.videoconvertService.convertVideo(fullPath,directory.uri,filename,'mp4').then(async () => {
await Filesystem.readFile({ path: `${directory.uri}${filename}.mp4`})
let fileObject = {};
this.videoconvertService.convertVideo(fullPath, directory.uri, filename, 'mp4').then(async () => {
await Filesystem.readFile({ path: `${directory.uri}${filename}.mp4` })
.then(async (content) => {
console.log(content.data)
this.filecontent = true;
.then(async (content) => {
console.log(content.data)
this.filecontent = true;
/* fileObject = {
FileBase64: this.removeTextBeforeSlash(content.data, ','),
FileExtension: 'mp4',
@@ -883,26 +871,27 @@ console.log(stringGerada);
console.log('delete file',value)
fileObject ={};
})
})
.catch((erro) => console.error('read converted video erro ', erro));
.catch((erro) => console.error('read converted video erro ', erro));
});
});
}
} catch (error) {
console.log('record video ios erro, ', error)
console.log('record video ios erro, ', error)
}
}
shareContentAndroid(resultUrl,FileExtension) {
shareContentAndroid(resultUrl, FileExtension) {
Filesystem.readFile({ path: resultUrl }).then(async (content) => {
let fileObject;
try {
if (this.checkFileType.checkFileType(FileExtension) == 'image') {
fileObject = {
FileBase64: 'data:image/jpeg;base64,' +this.removeTextBeforeSlash(content.data, ','),
FileBase64: 'data:image/jpeg;base64,' + this.removeTextBeforeSlash(content.data, ','),
FileExtension: FileExtension,
OriginalFileName: 'shared',
}
@@ -30,7 +30,7 @@
src="{{'data:image/jpg;base64,' + files.FileBase64}}">
<video *ngIf="checkFileType.checkFileType(files.FileExtension ) == 'video'" class="post-video" controls="controls" preload="metadata"
webkit-playsinline="webkit-playsinline" (play)="StopvideoService.registerVideoWithEvent($event)" >
playsinline webkit-playsinline="webkit-playsinline" (play)="StopvideoService.registerVideoWithEvent($event)" >
<source [src]="files.FileBase64" type="video/mp4">
</video>
@@ -56,14 +56,32 @@ ion-toolbar {
.post-img {
width: 100%;
height: 400px;
height: 100%;
max-height: 400px;
min-height: 350px;
min-width: 350px;
margin: 0 auto;
border-radius: 0px !important;
overflow: hidden;
display: flex;
justify-content: center;
}
.post-video {
width: 100%;
height: 100%;
max-height: 400px;
min-height: 350px;
min-width: 350px;
margin: 0 auto;
border-radius: 0px !important;
overflow: hidden;
display: flex;
justify-content: center;
height: 420px;
}
.post-img img {
height: 100%;
@@ -52,8 +52,8 @@
[lazyLoad]="'data:image/jpg;base64,' + files.FileBase64">
<video #videoElement [appVisibility]="onVisibilityChange" *ngIf="checkFileType.checkFileType(files.FileExtension ) == 'video'" class="post-video" controls="controls" preload="metadata"
webkit-playsinline="webkit-playsinline" (play)="stopvideoService.registerVideoWithEvent($event)" (click)="preventVideoPlay($event)">
<source [src]="files.FileBase64" type="video/mp4">
playsinline webkit-playsinline="webkit-playsinline" (play)="stopvideoService.registerVideoWithEvent($event)" (click)="preventVideoPlay($event)">
<source [src]="files.FileBase64" type="video/mp4" >
</video>
</div>