bugs fixed

This commit is contained in:
Eudes Inácio
2023-07-31 16:39:35 +01:00
26 changed files with 237 additions and 77 deletions
+6
View File
@@ -2,6 +2,12 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>NSCameraUsageDescription</key>
<string>Privacy - Camera Usage Description</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>Privacy - Photo Library Additions Usage Description</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Privacy - Photo Library Usage Description</string>
<key>CFBundleDevelopmentRegion</key> <key>CFBundleDevelopmentRegion</key>
<string>en</string> <string>en</string>
<key>CFBundleDisplayName</key> <key>CFBundleDisplayName</key>
@@ -1,6 +1,6 @@
<ion-content class=" bg-blue"> <ion-content class=" bg-blue">
<div class="main-content width-100 overflow-y-auto height-100 header-fix"> <div class="main-content header-fix width-100 overflow-y-auto height-100">
<div class="profile-header width-100"> <div class="profile-header width-100 ">
<div class="div-logo width-40"> <div class="div-logo width-40">
<div class="logo-icon"> <div class="logo-icon">
<img *ngIf="ThemeService.currentTheme == 'default' " src='assets/images/logo-no-bg.png' alt='logo'> <img *ngIf="ThemeService.currentTheme == 'default' " src='assets/images/logo-no-bg.png' alt='logo'>
+35 -15
View File
@@ -66,29 +66,49 @@
<ion-list> <ion-list>
<div class="item cursor-pointer ion-no-padding ion-no-margin" lines="none" <div class="item cursor-pointer ion-no-padding ion-no-margin" lines="none"
*ngFor="let item of notificationdata; let i = index" *ngFor="let item of notificationdata; let i = index">
(click)="notificatinsRoutes(item.index,item.Service,item.Object,item.IdObject,item.FolderId)">
<div class="item-conten-{{item.Service}}-{{item.TypeAgenda}}-{{item.Role}}"> <div *ngIf="item.read == false" class="item-conten-{{item.Service}}-{{item.TypeAgenda}}-{{item.Role}}" (click)="notificatinsRoutes(item.index,item.Service,item.Object,item.IdObject,item.FolderId,i)">
<div class="notification-item"> <div class="notification-item">
<img class="notification-icon" slot="end" *ngIf="item.Service == 'agenda'" <img class="notification-icon" slot="end" *ngIf = "item.Service == 'agenda'" src="assets/images/icons-default-agenda.svg" >
src="assets/images/icons-default-agenda.svg"> <img class="notification-icon" slot="end" *ngIf = "item.Service == 'gabinete-digital'" src="assets/images/icons-correspondencias.svg" >
<img class="notification-icon" slot="end" *ngIf="item.Service == 'gabinete-digital'" <img class="notification-icon" slot="end" *ngIf = "item.Service == 'accoes'" src="assets/images/icons-nav-accoes-active.svg" >
src="assets/images/icons-correspondencias.svg"> <img class="notification-icon" slot="end" *ngIf = "item.Service == 'chat'" src="assets/images/icons-nav-agenda-active.svg" >
<img class="notification-icon" slot="end" *ngIf="item.Service == 'accoes'"
src="assets/images/icons-nav-accoes-active.svg">
<img class="notification-icon" slot="end" *ngIf="item.Service == 'chat'"
src="assets/images/icons-nav-agenda-active.svg">
</div> </div>
<div class="approve-event-time"> <div class="approve-event-time">
<p *ngIf="item.Service == 'agenda'">{{item.dateInit}}</p> <p *ngIf = "item.Service == 'agenda'">{{item.dateInit}}</p>
<p *ngIf="item.Service == 'agenda'">{{item.dateEnd}}</p> <p *ngIf = "item.Service == 'agenda'">{{item.dateEnd}}</p>
</div> </div>
<div class="approve-event-detail"> <div class="approve-event-detail">
<p *ngIf="item.Service == 'agenda'">{{item.Location}}</p> <p *ngIf = "item.Service == 'agenda'">{{item.Location}}</p>
<h3 id="profile-title">{{item.title}}</h3> <h3 id="profile-title">{{item.title}}</h3>
<p id="profile-title" *ngIf="item.Service != 'agenda'">{{item.body}}</p> <p id="profile-title" *ngIf = "item.Service != 'agenda'">{{item.body}}</p>
</div> </div>
</div> </div>
<div *ngIf="item.read == true" >
<div class="notification-item">
<img class="notification-icon-error" slot="end" src="assets/images/exclamation_mark.svg" >
</div>
<div class="approve-event-time">
<p *ngIf = "item.Service == 'agenda'">{{item.dateInit}}</p>
</div>
<div class="approve-event-detail-error">
<p id="profile-title-error">Possivelmente esta tarefa não foi criada ou já foi executada. Deseja dar a notificação como lida?</p>
</div>
<div class="d-flex mt-10 width-100">
<ion-buttons slot="start" class="buttonSize" >
<button (click)="doNotKeppNotification(item.index)" class="btn-delete" fill="clear" >
<ion-label style="color:#d30a0a;">Sim</ion-label>
</button>
<button (click)="keppNotification(i)" class="btn-cancel" fill="clear" color="#fff" >
<ion-label>Não</ion-label>
</button>
</ion-buttons>
</div>
</div>
</div> </div>
</ion-list> </ion-list>
+1 -1
View File
@@ -171,8 +171,8 @@ ion-list {
width: calc(100% - 115px) !important; width: calc(100% - 115px) !important;
float: left; float: left;
#profile-title-error { #profile-title-error {
display: flex;
width: 250px; width: 250px;
white-space: nowrap;
font-size: small font-size: small
; ;
} }
+104 -12
View File
@@ -10,6 +10,8 @@ import { SessionStore } from 'src/app/store/session.service';
import { EventTrigger } from '../../services/eventTrigger.service'; import { EventTrigger } from '../../services/eventTrigger.service';
import { ThemeService } from 'src/app/services/theme.service' import { ThemeService } from 'src/app/services/theme.service'
import { environment } from 'src/environments/environment'; import { environment } from 'src/environments/environment';
import { ProcessesService } from 'src/app/services/processes.service';
import { EventsService } from 'src/app/services/events.service';
@Component({ @Component({
selector: 'app-profile', selector: 'app-profile',
@@ -34,6 +36,9 @@ export class ProfilePage implements OnInit {
logoutOut = false logoutOut = false
notificationStatus = ''; notificationStatus = '';
environment = environment environment = environment
taskExist = true;
taskNotExist = false;
SessionStore = SessionStore; SessionStore = SessionStore;
constructor( constructor(
@@ -45,7 +50,9 @@ export class ProfilePage implements OnInit {
private platform: Platform, private platform: Platform,
private eventTriger: EventTrigger, private eventTriger: EventTrigger,
public ThemeService: ThemeService, public ThemeService: ThemeService,
private notificationService: NotificationsService private notificationService: NotificationsService,
private processesService: ProcessesService,
private eventsService: EventsService
) { ) {
@@ -112,7 +119,8 @@ export class ProfilePage implements OnInit {
Location: element.data.Location, Location: element.data.Location,
TypeAgenda: element.data.TypeAgenda, TypeAgenda: element.data.TypeAgenda,
Role: element.data.Role, Role: element.data.Role,
Status: element.data.Status Status: element.data.Status,
read: false,
} }
} else if (element.data) { } else if (element.data) {
@@ -129,7 +137,8 @@ export class ProfilePage implements OnInit {
Location: element.data.Location, Location: element.data.Location,
TypeAgenda: element.data.TypeAgenda, TypeAgenda: element.data.TypeAgenda,
Role: element.data.Role, Role: element.data.Role,
Status: element.data.Status Status: element.data.Status,
read: false,
} }
} else { } else {
@@ -147,14 +156,15 @@ export class ProfilePage implements OnInit {
dateEnd: element.dateEnd, dateEnd: element.dateEnd,
dateInit: element.dateInit, dateInit: element.dateInit,
index: element.index, index: element.index,
title: element.title title: element.title,
read: false,
} }
} }
} }
this.DataArray.push(notificationObject) this.DataArray.push(notificationObject)
}); });
this.notificationdata = this.DataArray this.notificationdata = this.DataArray.reverse();
}).catch((error) => { }).catch((error) => {
console.error('storage getnotification: ', error) console.error('storage getnotification: ', error)
}) })
@@ -173,22 +183,95 @@ export class ProfilePage implements OnInit {
return time; return time;
} }
notificatinsRoutes = (index, Service, Object, IdObject, FolderId) => { notificatinsRoutes = (index, Service, Object, IdObject, FolderId,i) => {
console.log(index, i)
if(Service === "agenda") {
this.eventsService.getEvent(IdObject).subscribe((task) => {
if (Service === "agenda" && IdObject.length > 10) {
this.zone.run(() => this.router.navigate(['/home/agenda', IdObject, 'agenda']));
} else if (Service === "agenda" && Object === "event-list") {
//this.zone.run(() => this.router.navigate(['/home/gabinete-digital/event-list/approve-event',IdObject, 'agenda']));
this.zone.run(() => this.router.navigate(['/home/agenda/event-list/approve-event', IdObject, 'agenda']));
}
this.deleteNotification(index);
}, (error) => {
this.notificationdata[i].read = true;
})
} else if (Service === "gabinete-digital") {
this.processesService.GetTask(IdObject).subscribe((task) => {
if (Service === "gabinete-digital" && Object === "expedientes") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/expediente', IdObject, 'gabinete-digital']));
} else if (Service === "gabinete-digital" && Object === "despachos") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/despachos', IdObject, 'gabinete-digital'], { replaceUrl: true }));
}else if (Service === "gabinete-digital" && Object === "parecer") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/pedidos', IdObject, 'gabinete-digital']));
}
else if (Service === "gabinete-digital" && Object === "deferimento") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/pedidos', IdObject, 'gabinete-digital']));
}
else if (Service === "gabinete-digital" && Object === "despachos-pr") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/despachos-pr', IdObject, 'gabinete-digital']));
}
this.deleteNotification(index);
}, (error) => {
this.notificationdata[i].read = true;
})
if (Service === "agenda" && IdObject.length > 10) { } else if( Service === "accoes") {
if (Service === "accoes" && Object === "accao") {
this.zone.run(() => this.router.navigate(['/home/publications', IdObject]));
this.deleteNotification(index);
}
else if (Service === "accoes" && Object === "publicacao") {
this.zone.run(() => this.router.navigate(['/home/publications/view-publications', FolderId, IdObject]));
this.deleteNotification(index);
}
} else if (Service === "chat") {
let navigationExtras: NavigationExtras = { queryParams: { "roomId": IdObject, } };
this.zone.run(() => this.router.navigate(['/home/chat'], navigationExtras));
this.deleteNotification(index);
}
/* if (Service === "agenda" && IdObject.length > 10) {
this.zone.run(() => this.router.navigate(['/home/agenda', IdObject, 'agenda'])); this.zone.run(() => this.router.navigate(['/home/agenda', IdObject, 'agenda']));
} }
else if (Service === "gabinete-digital" && Object === "expediente") { else if (Service === "gabinete-digital" && Object === "expedientes") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/expediente', IdObject, 'gabinete-digital'])); this.processesService.GetTask(IdObject).subscribe((task) => {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/expediente', IdObject, 'gabinete-digital']));
}, (error) => {
this.notificationdata[i].read = true;
})
} }
else if (Service === "agenda" && Object === "event-list") { else if (Service === "agenda" && Object === "event-list") {
//this.zone.run(() => this.router.navigate(['/home/gabinete-digital/event-list/approve-event',IdObject, 'agenda'])); //this.zone.run(() => this.router.navigate(['/home/gabinete-digital/event-list/approve-event',IdObject, 'agenda']));
this.zone.run(() => this.router.navigate(['/home/agenda/event-list/approve-event', IdObject, 'agenda'])); this.zone.run(() => this.router.navigate(['/home/agenda/event-list/approve-event', IdObject, 'agenda']));
} else if (Service === "gabinete-digital" && Object === "despachos") { } else if (Service === "gabinete-digital" && Object === "despachos") {
this.processesService.GetTask(IdObject).subscribe((task) => {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/despachos', IdObject, 'gabinete-digital'], { replaceUrl: true }));
}, (error) => {
this.notificationdata[i].read = true;
})
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/despachos', IdObject, 'gabinete-digital'], { replaceUrl: true }));
} }
else if (Service === "gabinete-digital" && Object === "parecer") { else if (Service === "gabinete-digital" && Object === "parecer") {
@@ -220,10 +303,10 @@ export class ProfilePage implements OnInit {
} else if (Service === "chat") { } else if (Service === "chat") {
let navigationExtras: NavigationExtras = { queryParams: { "roomId": IdObject, } }; let navigationExtras: NavigationExtras = { queryParams: { "roomId": IdObject, } };
this.zone.run(() => this.router.navigate(['/home/chat'], navigationExtras)); this.zone.run(() => this.router.navigate(['/home/chat'], navigationExtras));
} } */
// this.notificationservice.tempClearArray(); // this.notificationservice.tempClearArray();
this.deleteNotification(index);
@@ -317,4 +400,13 @@ export class ProfilePage implements OnInit {
} }
} }
keppNotification(index) {
this.notificationdata[index].read = false;
}
doNotKeppNotification(index) {
this.deleteNotification(index);
}
} }
+11
View File
@@ -51,24 +51,33 @@ models.register({
models: [MessageModel, DeleteMessageModel, attachments] models: [MessageModel, DeleteMessageModel, attachments]
}) })
// // acçoes // // acçoes
// export class ActionModel extends models.Model{ // export class ActionModel extends models.Model{
// static $tableName = ''
// ProcessId = models.IntegerField({unique: true}) // ProcessId = models.IntegerField({unique: true})
// Description = models.CharField() // Description = models.CharField()
// Detail = models.CharField() // Detail = models.CharField()
// DateBegin = models.CharField() // DateBegin = models.CharField()
// DateEnd = models.CharField() // DateEnd = models.CharField()
// ActionType = models.CharField() // ActionType = models.CharField()
// } // }
// export class PublicationFolderModel extends models.Model{ // export class PublicationFolderModel extends models.Model{
// static $tableName = ''
// DateBegin = models.CharField() // DateBegin = models.CharField()
// Description = models.CharField() // Description = models.CharField()
// Detail = models.CharField() // Detail = models.CharField()
// } // }
// export class PublicationDetailsModel extends models.Model{ // export class PublicationDetailsModel extends models.Model{
// static $tableName = ''
// DateIndex = models.CharField() // DateIndex = models.CharField()
// DocumentId = models.IntegerField({unique: true}) // DocumentId = models.IntegerField({unique: true})
// ProcessId = models.CharField() // ProcessId = models.CharField()
@@ -83,6 +92,8 @@ models.register({
// export class WebtrixUserModel extends models.Model { // export class WebtrixUserModel extends models.Model {
// static $tableName = ''
// FullName = models.CharField() // FullName = models.CharField()
// Role = models.CharField() // Role = models.CharField()
// } // }
+1 -1
View File
@@ -423,7 +423,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
}], }],
temporaryData: formData, temporaryData: formData,
attachmentsModelData: { attachmentsModelData: {
fileBase64: await this.fileService.blobToBase64(blob), fileBase64: encodedData,
} }
}) })
+1 -1
View File
@@ -25,7 +25,7 @@
<div class="conteiner-box pt-20 height-100"> <div class="conteiner-box pt-20 height-100">
<div class="main-content justify-center d-flex height-100"> <div class="main-content justify-center d-flex height-100">
<div class="box-container width-100 d-flex mx-20" style="padding: 0px;overflow: hidden;"> <div class="box-container width-100 d-flex mx-20 overflow-hidden" style="padding: 0px;overflow: hidden;">
<ion-progress-bar type="indeterminate" *ngIf="loadingAllTask || TaskService.showLoader"></ion-progress-bar> <ion-progress-bar type="indeterminate" *ngIf="loadingAllTask || TaskService.showLoader"></ion-progress-bar>
<div class="px-20 pb-20 container-filters"> <div class="px-20 pb-20 container-filters">
<p class="time ion-text-left font-18-em">{{customDate}}</p> <p class="time ion-text-left font-18-em">{{customDate}}</p>
@@ -215,7 +215,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.div-icon{ .div-icon{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -174,7 +174,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.div-icon{ .div-icon{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -240,7 +240,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.div-icon{ .div-icon{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -105,7 +105,7 @@ export class DiplomasGerarPage implements OnInit {
}, 1000); }, 1000);
} }
async LoadList(){ async LoadList() {
this.skeletonLoader = true this.skeletonLoader = true
@@ -134,10 +134,10 @@ export class DiplomasGerarPage implements OnInit {
this.skeletonLoader = false this.skeletonLoader = false
this.showLoader = false; this.showLoader = false;
} }
goBack() { goBack() {
this.RouteService.goBack(); this.RouteService.goBack();
// window.history.back() // window.history.back()
} }
} }
@@ -227,7 +227,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.div-icon{ .div-icon{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -63,7 +63,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.div-icon{ .div-icon{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -287,7 +287,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.menu-ptions{ .menu-ptions{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -205,7 +205,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.menu-ptions{ .menu-ptions{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -171,7 +171,7 @@ ion-button{
} }
@media only screen and (min-width: 801px) { @media only screen and (min-width: 801px) {
.div-icon{ .div-icon{
display: none; display: none !important;
} }
.content{ .content{
width: 65%; width: 65%;
@@ -2,9 +2,9 @@
<div class="main-wrapper"> <div class="main-wrapper">
<div class="main-content d-flex flex-column width header-fix" > <div class="main-content d-flex flex-column width " >
<div class="div-top-header"> <div class="div-top-header header-fix">
<div class="div-logo"> <div class="div-logo">
<img style="max-width: 90px;" *ngIf="ThemeService.currentTheme == 'default' " src='assets/images/logo-bg-removebg-preview.png' alt='logo'> <img style="max-width: 90px;" *ngIf="ThemeService.currentTheme == 'default' " src='assets/images/logo-bg-removebg-preview.png' alt='logo'>
@@ -320,12 +320,6 @@ ion-item{
top: 35px; top: 35px;
} }
.div-top-header {
position: absolute !important;
top: 0px !important;
}
} }
@media only screen and (min-height: 832px) { @media only screen and (min-height: 832px) {
+1 -1
View File
@@ -240,7 +240,7 @@ export class NotificationsService {
this.zone.run(() => this.router.navigate(['/home/agenda', notification.notification.data.IdObject, 'agenda'])); this.zone.run(() => this.router.navigate(['/home/agenda', notification.notification.data.IdObject, 'agenda']));
} }
else if (notification.notification.data.Service === "gabinete-digital" && notification.notification.data.Object === "expediente") { else if (notification.notification.data.Service === "gabinete-digital" && notification.notification.data.Object === "expedientes") {
this.zone.run(() => this.router.navigate(['/home/gabinete-digital/expediente', notification.notification.data.IdObject, 'gabinete-digital'])); this.zone.run(() => this.router.navigate(['/home/gabinete-digital/expediente', notification.notification.data.IdObject, 'gabinete-digital']));
} }
else if (notification.notification.data.Service === "agenda" && notification.notification.data.Object === "event-list") { else if (notification.notification.data.Service === "agenda" && notification.notification.data.Object === "event-list") {
@@ -452,7 +452,8 @@ export class EditEventPage implements OnInit {
window['temp.path:/home/agenda/edit-event.component.ts'] = { window['temp.path:/home/agenda/edit-event.component.ts'] = {
postEvent: this._postEvent, postEvent: this._postEvent,
eventBody: this.eventBody, eventBody: this.eventBody,
segment: this.segment segment: this.segment,
loadedEventAttachments: this.loadedEventAttachments
} }
} }
@@ -464,6 +465,7 @@ export class EditEventPage implements OnInit {
this._postEvent = restoredData.postEvent this._postEvent = restoredData.postEvent
this.eventBody = restoredData.eventBody this.eventBody = restoredData.eventBody
this.segment = restoredData.segment this.segment = restoredData.segment
this.loadedEventAttachments = restoredData.loadedEventAttachments
return true; return true;
} else { } else {
@@ -727,7 +727,8 @@ export class NewEventPage implements OnInit {
postEvent: this.postEvent, postEvent: this.postEvent,
eventBody: this.eventBody, eventBody: this.eventBody,
segment: this.segment, segment: this.segment,
CalendarName: this.CalendarName CalendarName: this.CalendarName,
documents: this.documents
} }
} }
@@ -745,6 +746,7 @@ export class NewEventPage implements OnInit {
this.eventBody = restoredData.eventBody this.eventBody = restoredData.eventBody
this.segment = restoredData.segment this.segment = restoredData.segment
this.CalendarName = restoredData.CalendarName this.CalendarName = restoredData.CalendarName
this.documents = restoredData.documents
// restore dater for date and hours picker // restore dater for date and hours picker
@@ -442,7 +442,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
}], }],
temporaryData: formData, temporaryData: formData,
attachmentsModelData: { attachmentsModelData: {
fileBase64: await this.fileService.blobToBase64(blob), fileBase64: encodedData,
} }
}) })
+7 -4
View File
@@ -1,11 +1,11 @@
<div > <div >
<ion-toolbar class="d-flex"> <ion-toolbar class="d-flex">
<div class="d-flex align-items-center px-20 pt-20 font-25"> <div class="d-flex align-items-center px-20 pt-20 font-25-rem">
<div class="left cursor-pointer" (click)="close()"> <div class="left cursor-pointer" (click)="close()">
<fa-icon icon="chevron-left" class="menu-icon font-awesome-1"></fa-icon> <fa-icon icon="chevron-left" class="menu-icon font-awesome-1"></fa-icon>
</div> </div>
<div class="middle add-ellipsis"> <div class="middle add-ellipsis font-25-rem">
{{Document.Assunto}} {{Document.Assunto}}
</div> </div>
@@ -21,18 +21,21 @@
apiKey="wr5dk69kive0qr9ig6y5spqvlj3a0tsiwnzdsexnz241k69p" apiKey="wr5dk69kive0qr9ig6y5spqvlj3a0tsiwnzdsexnz241k69p"
[(ngModel)]="editorContent" [(ngModel)]="editorContent"
[init]="{ [init]="{
save_onsavecallback: 'onSaveContent',
language: 'pt_PT', language: 'pt_PT',
height: 600, height: 600,
menubar: false, menubar: false,
autosave_interval:30,
plugins: [ plugins: [
'advlist autolink lists link image charmap print preview anchor', 'advlist autolink autosave lists link image charmap print preview anchor',
'searchreplace visualblocks code fullscreen', 'searchreplace visualblocks code fullscreen',
'insertdatetime media table paste code help wordcount print' 'insertdatetime media table paste code help wordcount print'
], ],
toolbar: toolbar:
'undo redo | formatselect | bold italic backcolor | \ 'undo redo | formatselect | bold italic backcolor | \
alignleft aligncenter alignright alignjustify | \ alignleft aligncenter alignright alignjustify | \
bullist numlist outdent indent | removeformat | print | help' }" bullist numlist outdent indent | removeformat | print | save | help ' }"
initialValue='{{content}}' initialValue='{{content}}'
[(ngModel)]="content" [(ngModel)]="content"
(onSaveContent)="somefunction()" (onSaveContent)="somefunction()"
+37 -7
View File
@@ -1,13 +1,15 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnDestroy, OnInit } from '@angular/core';
import { NavParams } from '@ionic/angular'; import { NavParams } from '@ionic/angular';
import { EventDetailsDocumentsOptionsPage } from '../shared/popover/event-details-documents-options/event-details-documents-options.page'; import { EventDetailsDocumentsOptionsPage } from '../shared/popover/event-details-documents-options/event-details-documents-options.page';
import { AlertController, ModalController } from '@ionic/angular'; import { AlertController, ModalController } from '@ionic/angular';
import { ProcessesService } from '../services/processes.service';
import { HttpErrorHandle } from '../services/http-error-handle.service';
@Component({ @Component({
selector: 'app-tiny-mce', selector: 'app-tiny-mce',
templateUrl: './tiny-mce.page.html', templateUrl: './tiny-mce.page.html',
styleUrls: ['./tiny-mce.page.scss'], styleUrls: ['./tiny-mce.page.scss'],
}) })
export class TinyMCEPage implements OnInit { export class TinyMCEPage implements OnDestroy {
@@ -16,12 +18,16 @@ export class TinyMCEPage implements OnInit {
content: "" content: ""
editorContent: ""; editorContent: "";
value: ""; value: "";
private intervalId: any;
private intervalTime: number = 30000;
constructor( constructor(
private navParams: NavParams, private navParams: NavParams,
private modalController: ModalController, private modalController: ModalController,
private processService: ProcessesService,
private erroHandler: HttpErrorHandle
) { ) {
this.Document = this.navParams.get('Document') this.Document = this.navParams.get('Document')
@@ -29,12 +35,13 @@ export class TinyMCEPage implements OnInit {
this.waitForTiny(); this.waitForTiny();
this.saveDraft();
} }
waitForTiny() { waitForTiny() {
const tiny: HTMLDivElement = document.querySelector('.tox-tinymce') const tiny: HTMLDivElement = document.querySelector('.tox-tinymce')
if(tiny) { if (tiny) {
this.doneWaitForTiny(tiny) this.doneWaitForTiny(tiny)
} else { } else {
setTimeout(() => { setTimeout(() => {
@@ -47,16 +54,39 @@ export class TinyMCEPage implements OnInit {
tiny.style.height = '100%' tiny.style.height = '100%'
} }
ngOnInit() { ngOnDestroy() {
this.value = "" // Certifique-se de limpar o intervalo quando o componente é destruído
if (this.intervalId) {
clearInterval(this.intervalId);
}
} }
close() { close() {
this.modalController.dismiss() this.modalController.dismiss()
} }
saveDraft() {
this.intervalId = setInterval(() => {
// Lógica que deseja executar em intervalos regulares
console.log('Intervalo de 30 segundos...');
console.log(document)
let objectDraft = {
"status": false,
"description": this.Document.Assunto,
"content": this.content,
"path": this.Document.path,
"ownerId": this.Document.ownerId
}
this.processService.SaveDraftByID(this.Document.DocId, objectDraft).subscribe((res) => {
window['tinyupdate']()
}, (error) => {
this.erroHandler.httpStatusHandle(error)
})
}, this.intervalTime);
}
somefunction() { somefunction() {
console.log(this.content)
} }
async openOptions() { async openOptions() {
@@ -70,7 +100,7 @@ export class TinyMCEPage implements OnInit {
}); });
modal.onDidDismiss().then((res)=>{},() => {}) modal.onDidDismiss().then((res) => { }, () => { })
await modal.present(); await modal.present();
} }
+6 -6
View File
@@ -1,12 +1,12 @@
export let versionData = { export let versionData = {
"shortSHA": "fbd4b87fe", "shortSHA": "f22590357",
"SHA": "fbd4b87fe5b11d3539da0c7228a9749d29ec7f12", "SHA": "f22590357e16e8fa3a2c3ba96ca18994a1507ccb",
"branch": "developer-catch-merge", "branch": "developer-catch-merge",
"lastCommitAuthor": "'Eudes Inácio'", "lastCommitAuthor": "'Eudes Inácio'",
"lastCommitTime": "'Thu Jul 27 15:20:13 2023 +0100'", "lastCommitTime": "'Sun Jul 30 21:42:56 2023 +0100'",
"lastCommitMessage": "pull made", "lastCommitMessage": "tinymce language pt",
"lastCommitNumber": "5122", "lastCommitNumber": "5123",
"change": "", "change": "",
"changeStatus": "On branch developer-catch-merge\nYour branch is ahead of 'origin/developer-catch-merge' by 4 commits.\n (use \"git push\" to publish your local commits)\n\nChanges to be committed:\n (use \"git restore --staged <file>...\" to unstage)\n\tmodified: src/app/tiny-mce/tiny-mce.page.html", "changeStatus": "On branch developer-catch-merge\nYour branch and 'origin/developer-catch-merge' have diverged,\nand have 5 and 6 different commits each, respectively.\n (use \"git pull\" to merge the remote branch into yours)\n\nAll conflicts fixed but you are still merging.\n (use \"git commit\" to conclude merge)\n\nChanges to be committed:\n\tmodified: ios/App/App/Info.plist\n\tmodified: src/app/modals/profile/edit-profile/edit-profile.page.html\n\tmodified: src/app/modals/profile/profile.page.html\n\tmodified: src/app/modals/profile/profile.page.scss\n\tmodified: src/app/modals/profile/profile.page.ts\n\tmodified: src/app/models/beast-orm.ts\n\tmodified: src/app/pages/chat/messages/messages.page.ts\n\tmodified: src/app/pages/events/events.page.html\n\tmodified: src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.scss\n\tmodified: src/app/pages/gabinete-digital/despachos/despacho/despacho.page.scss\n\tmodified: src/app/pages/gabinete-digital/diplomas-assinar/diploma-assinar/diploma-assinar.page.scss\n\tmodified: src/app/pages/gabinete-digital/diplomas-gerar/diplomas-gerar.page.ts\n\tmodified: src/app/pages/gabinete-digital/diplomas-gerar/diplomas-gerar/diplomas-gerar.page.scss\n\tmodified: src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.scss\n\tmodified: src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page.scss\n\tmodified: src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.scss\n\tmodified: src/app/pages/gabinete-digital/pedidos/pedido/pedido.page.scss\n\tmodified: src/app/pages/inactivity/inactivity.page.html\n\tmodified: src/app/pages/inactivity/inactivity.page.scss\n\tmodified: src/app/services/notifications.service.ts\n\tmodified: src/app/shared/agenda/edit-event/edit-event.page.ts\n\tmodified: src/app/shared/agenda/new-event/new-event.page.ts\n\tmodified: src/app/shared/chat/messages/messages.page.ts\n\tmodified: src/app/tiny-mce/tiny-mce.page.html\n\tmodified: src/app/tiny-mce/tiny-mce.page.ts",
"changeAuthor": "eudes.inacio" "changeAuthor": "eudes.inacio"
} }