mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-19 21:06:06 +00:00
fix
This commit is contained in:
@@ -28,7 +28,10 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="picture d-flex pb-5 hide-desktop" *ngIf="publication.FileBase64 && capturedImage ==''">
|
||||
{{ capturedImage }}
|
||||
{{ publication | json }}
|
||||
|
||||
<div class="picture d-flex pb-5 hide-desktop" *ngIf="publication.FileBase64 != 'data:image/jpg;base64,null' ">
|
||||
<div class="post-img">
|
||||
<img src="{{publication.FileBase64}}" alt="image" >
|
||||
</div>
|
||||
@@ -41,9 +44,9 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div *ngIf="capturedImage != ''" class="ion-item-container-no-border">
|
||||
<div *ngIf="capturedImage && capturedImageTitle" class="ion-item-container-no-border">
|
||||
<ion-label class="attached-title">Fotografia Anexada</ion-label>
|
||||
<ion-item lines="none">
|
||||
<ion-item lines="none" *ngIf="capturedImage">
|
||||
<ion-thumbnail slot="start">
|
||||
<ion-img [(ngModel)]="capturedImage" name="image" ngDefaultControl [src]="capturedImage"></ion-img>
|
||||
</ion-thumbnail>
|
||||
|
||||
+18
-10
@@ -8,7 +8,8 @@ import { ThemeService } from 'src/app/services/theme.service'
|
||||
import { ViewMediaPage } from 'src/app/modals/view-media/view-media.page';
|
||||
import { PermissionService } from 'src/app/services/permission.service';
|
||||
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
||||
|
||||
import { PublicationFolderService } from 'src/app/store/publication-folder.service';
|
||||
import { AskModalPage } from 'src/app/modals/ask-modal/ask-modal.page'
|
||||
@Component({
|
||||
selector: 'app-publication-detail-shared',
|
||||
templateUrl: './publication-detail.page.html',
|
||||
@@ -31,7 +32,9 @@ export class PublicationDetailPage implements OnInit {
|
||||
private toastService: ToastService,
|
||||
public ThemeService: ThemeService,
|
||||
public p:PermissionService,
|
||||
private httpErrorHandle: HttpErrorHandle
|
||||
private httpErrorHandle: HttpErrorHandle,
|
||||
public publicationFolderService: PublicationFolderService,
|
||||
public AskModalPage: AskModalPage
|
||||
) {
|
||||
|
||||
/* this.folderId = this.navParams.get('folderIdId'); */
|
||||
@@ -62,9 +65,9 @@ export class PublicationDetailPage implements OnInit {
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
getPublicationDetail(){
|
||||
getPublicationDetail() {
|
||||
this.showLoader = true;
|
||||
this.publications.GetPublicationById(this.publicationId).subscribe(res=>{
|
||||
this.publications.GetPublicationById(this.publicationId).subscribe(res => {
|
||||
|
||||
this.publication = {
|
||||
DateIndex: res.DateIndex,
|
||||
@@ -78,10 +81,12 @@ export class PublicationDetailPage implements OnInit {
|
||||
FileExtension: 'jpeg',
|
||||
}
|
||||
this.showLoader = false;
|
||||
},(error) => {
|
||||
if(window['_deletePublication']) {
|
||||
window['_deletePublication'](this.folderId, this.publicationId)
|
||||
}, (error) => {
|
||||
|
||||
if(error.status == 404) {
|
||||
this.publicationFolderService.deletePost(this.folderId, this.publicationId)
|
||||
}
|
||||
|
||||
this.goBack();
|
||||
this.httpErrorHandle.httpStatusHandle(error)
|
||||
});
|
||||
@@ -99,9 +104,7 @@ export class PublicationDetailPage implements OnInit {
|
||||
await this.publications.DeletePublication(this.folderId, this.publicationId).toPromise();
|
||||
this.httpErrorHandle.httpsSucessMessagge('Eliminar publicação')
|
||||
|
||||
if(window['_deletePublication']) {
|
||||
window['_deletePublication'](this.folderId, this.publicationId)
|
||||
}
|
||||
this.publicationFolderService.deletePost(this.folderId, this.publicationId)
|
||||
|
||||
if(window['app-view-publications-page-doRefresh']) {
|
||||
window['app-view-publications-page-doRefresh']()
|
||||
@@ -109,6 +112,11 @@ export class PublicationDetailPage implements OnInit {
|
||||
|
||||
this.goBackToViewPublications.emit();
|
||||
} catch (error) {
|
||||
|
||||
if(error.status == 404) {
|
||||
this.publicationFolderService.deletePost(this.folderId, this.publicationId)
|
||||
}
|
||||
|
||||
this.httpErrorHandle.httpStatusHandle(error)
|
||||
} finally {
|
||||
laoder.remove()
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
<ion-header class="ion-no-border">
|
||||
<div class="main-header">
|
||||
<div class="title-content">
|
||||
<div *ngIf="publicationItem[folderId]" class="div-title width-100 flex-grow-1">
|
||||
<div *ngIf="publicationFolderService.FolderDetails[folderId]" class="div-title width-100 flex-grow-1">
|
||||
<div class="title">
|
||||
<ion-label>{{publicationItem[folderId].Description}}</ion-label>
|
||||
<ion-label>{{publicationFolderService.FolderDetails[folderId].Description}}</ion-label>
|
||||
</div>
|
||||
|
||||
<div class="actions-icon">
|
||||
<!-- <ion-icon (click)="AddPublication('1',item.ProcessId)" slot="end" src='assets/images/icons-add-photo.svg'></ion-icon> -->
|
||||
<button *ngIf="p.userPermission([p.permissionList.Actions.editPost])" class="btn-no-color" (click)="openEditPublication(publicationItem[folderId].ProcessId)">
|
||||
<button *ngIf="p.userPermission([p.permissionList.Actions.editPost])" class="btn-no-color" (click)="openEditPublication(publicationFolderService.FolderDetails[folderId].ProcessId)">
|
||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="edit" slot="end" src="assets/images/icons-edit.svg" ></ion-icon>
|
||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="edit" slot="end" src="assets/images/theme/gov/icons-edit.svg" ></ion-icon>
|
||||
</button>
|
||||
<button *ngIf="p.userPermission([p.permissionList.Actions.deletePost])" class="btn-no-color" (click)="deletePublication(publicationItem[folderId].ProcessId)">
|
||||
<button *ngIf="p.userPermission([p.permissionList.Actions.deletePost])" class="btn-no-color" (click)="deletePublication(publicationFolderService.FolderDetails[folderId].ProcessId)">
|
||||
<ion-icon class="delete" src='assets/images/theme/gov/icons-delete.svg'></ion-icon>
|
||||
</button>
|
||||
<button class="btn-no-color cursor-pointer" (click)="doRefresh($event)">
|
||||
@@ -20,9 +20,9 @@
|
||||
</button >
|
||||
</div>
|
||||
</div>
|
||||
<div class="div-body width-100" *ngIf="publicationItem[folderId]?.DateBegin != null">
|
||||
<p class="item-content-detail">{{publicationItem[folderId].Detail}}</p>
|
||||
<p class="item-content-date">{{ publicationItem[folderId].DateBegin | date: 'dd-MM-yy HH:mm'}}</p>
|
||||
<div class="div-body width-100" *ngIf="publicationFolderService.FolderDetails[folderId]?.DateBegin != null">
|
||||
<p class="item-content-detail">{{publicationFolderService.FolderDetails[folderId].Detail}}</p>
|
||||
<p class="item-content-date">{{ publicationFolderService.FolderDetails[folderId].DateBegin | date: 'dd-MM-yy HH:mm'}}</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -35,8 +35,8 @@
|
||||
<ion-refresher-content>
|
||||
</ion-refresher-content>
|
||||
</ion-refresher>
|
||||
<div class="main-container px-20" *ngIf="publicationItem[folderId]">
|
||||
<ion-card *ngFor="let publication of publicationList[folderId] let i = index"
|
||||
<div class="main-container px-20" *ngIf="publicationFolderService.FolderDetails[folderId]">
|
||||
<ion-card *ngFor="let publication of publicationFolderService.publicationList[folderId] let i = index"
|
||||
(click)="viewPublicationDetail(publication.DocumentId)">
|
||||
<ion-card-content>
|
||||
<div class="post-img">
|
||||
@@ -57,7 +57,7 @@
|
||||
</ion-card>
|
||||
<!-- <ion-list>
|
||||
<div class="post-item d-md-block mb-10 cursor-pointer"
|
||||
*ngFor="let publication of publicationList"
|
||||
*ngFor="let publication of publicationFolderService.publicationList"
|
||||
(click)="viewPublicationDetail(publication.DocumentId)">
|
||||
<div *ngIf="publication.FileBase64.length > 30" class="mb-10 post-img width-md-100">
|
||||
<img src="{{publication.FileBase64}}" alt="image">
|
||||
@@ -78,14 +78,14 @@
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="center height-100" *ngIf="!publicationList">
|
||||
<div class="center height-100" *ngIf="!publicationFolderService.publicationList">
|
||||
<p>{{error}}</p>
|
||||
</div>
|
||||
</ion-list> -->
|
||||
</div>
|
||||
<!-- fab placed to the bottom end -->
|
||||
<ion-fab *ngIf="p.userPermission([p.permissionList.Actions.create]) && publicationItem[folderId]" vertical="bottom" horizontal="end">
|
||||
<ion-fab-button title="Nova Publicação" (click)="AddPublication('2',publicationItem[folderId].ProcessId)">
|
||||
<ion-fab *ngIf="p.userPermission([p.permissionList.Actions.create]) && publicationFolderService.FolderDetails[folderId]" vertical="bottom" horizontal="end">
|
||||
<ion-fab-button title="Nova Publicação" (click)="AddPublication('2',publicationFolderService.FolderDetails[folderId].ProcessId)">
|
||||
<ion-icon name="add"></ion-icon>
|
||||
</ion-fab-button>
|
||||
</ion-fab>
|
||||
|
||||
@@ -12,7 +12,8 @@ import { EditActionPage } from 'src/app/pages/publications/edit-action/edit-acti
|
||||
import { Storage } from '@ionic/storage';
|
||||
import { PermissionService } from 'src/app/services/permission.service';
|
||||
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
||||
// import { PublicationDetailsModel } from 'src/app/models/beast-orm';
|
||||
import { PublicationFolderService } from 'src/app/store/publication-folder.service';
|
||||
import { AskModalPage } from 'src/app/modals/ask-modal/ask-modal.page';
|
||||
|
||||
@Component({
|
||||
selector: 'app-view-publications',
|
||||
@@ -23,8 +24,6 @@ export class ViewPublicationsPage implements OnInit {
|
||||
showLoader: boolean;
|
||||
loading: any;
|
||||
|
||||
publicationList: {[key: string]: Publication[] } = {};
|
||||
publicationItem: {[key: string]: PublicationFolder } = {};
|
||||
error: any;
|
||||
oldpublicationIds = []
|
||||
|
||||
@@ -46,10 +45,11 @@ export class ViewPublicationsPage implements OnInit {
|
||||
private toastService: ToastService,
|
||||
private storage: Storage,
|
||||
public p:PermissionService,
|
||||
private httpErrorHandle: HttpErrorHandle
|
||||
private httpErrorHandle: HttpErrorHandle,
|
||||
public publicationFolderService: PublicationFolderService
|
||||
) {
|
||||
this.createPublicationList()
|
||||
}
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
if(typeof(this.folderId) == 'object') {
|
||||
@@ -64,6 +64,7 @@ export class ViewPublicationsPage implements OnInit {
|
||||
}
|
||||
|
||||
this.getFromDB();
|
||||
|
||||
}
|
||||
|
||||
ngOnChanges(changes: any): void {
|
||||
@@ -72,8 +73,8 @@ export class ViewPublicationsPage implements OnInit {
|
||||
this.folderId = this.folderId['ProcessId']
|
||||
}
|
||||
|
||||
if(!this.publicationList[this.folderId]) {
|
||||
this.publicationItem[this.folderId] = new PublicationFolder();
|
||||
if(!this.publicationFolderService.publicationList[this.folderId]) {
|
||||
this.publicationFolderService.FolderDetails[this.folderId] = new PublicationFolder();
|
||||
}
|
||||
|
||||
this.createPublicationList()
|
||||
@@ -88,11 +89,11 @@ export class ViewPublicationsPage implements OnInit {
|
||||
|
||||
|
||||
createPublicationList(folderId = this.folderId) {
|
||||
if(!this.publicationList[this.folderId]) {
|
||||
this.publicationList[this.folderId] = []
|
||||
if(!this.publicationFolderService.publicationList[this.folderId]) {
|
||||
this.publicationFolderService.publicationList[this.folderId] = []
|
||||
}
|
||||
if(!this.publicationItem[this.folderId]) {
|
||||
this.publicationItem[this.folderId] = new PublicationFolder();
|
||||
if(!this.publicationFolderService.FolderDetails[this.folderId]) {
|
||||
this.publicationFolderService.FolderDetails[this.folderId] = new PublicationFolder();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -112,7 +113,7 @@ export class ViewPublicationsPage implements OnInit {
|
||||
this.publications.GetPresidentialAction(folderId).subscribe(res=>{
|
||||
|
||||
// PublicationDetailsModel.create(res)
|
||||
this.publicationItem[folderId] = res
|
||||
this.publicationFolderService.FolderDetails[folderId] = res
|
||||
this.storage.set(folderId+"name", res)
|
||||
}, (error) => {
|
||||
this.showLoader = false;
|
||||
@@ -127,7 +128,6 @@ export class ViewPublicationsPage implements OnInit {
|
||||
|
||||
try {
|
||||
const publicationIds = await this.publications.GetPublicationsList(folderId).toPromise();
|
||||
this.publicationList[folderId] = []
|
||||
|
||||
this.createPublicationList(folderId)
|
||||
let loadLater = []
|
||||
@@ -147,7 +147,7 @@ export class ViewPublicationsPage implements OnInit {
|
||||
|
||||
this.showLoader = false;
|
||||
|
||||
this.storage.set(folderId, this.publicationList[folderId]);
|
||||
this.storage.set(folderId, this.publicationFolderService.publicationList[folderId]);
|
||||
|
||||
this.oldpublicationIds = publicationIds
|
||||
} catch(error) {
|
||||
@@ -158,20 +158,20 @@ export class ViewPublicationsPage implements OnInit {
|
||||
|
||||
_deletePublication = (folderId, publicationId) => {
|
||||
|
||||
this.publicationList[folderId] = this.publicationList[folderId].filter( e => e.DocumentId != publicationId)
|
||||
this.publicationFolderService.publicationList[folderId] = this.publicationFolderService.publicationList[folderId].filter( e => e.DocumentId != publicationId)
|
||||
|
||||
console.log('this.publicationList[folderId]', this.publicationList[folderId].length)
|
||||
console.log('this.publicationFolderService.publicationList[folderId]', this.publicationFolderService.publicationList[folderId].length)
|
||||
|
||||
}
|
||||
|
||||
publicationIsPresent(publicationId, folderId) {
|
||||
return this.publicationList[folderId].find( e => e.DocumentId == publicationId )
|
||||
return this.publicationFolderService.publicationList[folderId].find( e => e.DocumentId == publicationId )
|
||||
}
|
||||
publicationFind(publicationId, folderId) {
|
||||
return this.publicationList[folderId].find( e => e.DocumentId == publicationId )
|
||||
return this.publicationFolderService.publicationList[folderId].find( e => e.DocumentId == publicationId )
|
||||
}
|
||||
publicationFindIndex(publicationId, folderId) {
|
||||
return this.publicationList[folderId].findIndex( e => e.DocumentId == publicationId )
|
||||
return this.publicationFolderService.publicationList[folderId].findIndex( e => e.DocumentId == publicationId )
|
||||
}
|
||||
|
||||
async loadPublication(publicationId, folderId) {
|
||||
@@ -181,52 +181,20 @@ export class ViewPublicationsPage implements OnInit {
|
||||
const findIndex = this.publicationFindIndex(publicationId, folderId)
|
||||
const found = this.publicationIsPresent(publicationId, folderId)
|
||||
if(!found) {
|
||||
this.publicationList[folderId].push(publicationDetails)
|
||||
this.publicationFolderService.publicationList[folderId].push(publicationDetails)
|
||||
// PublicationModel.create(publicationDetails)
|
||||
} else {
|
||||
this.publicationList[folderId][findIndex] = publicationDetails
|
||||
this.publicationFolderService.publicationList[folderId][findIndex] = publicationDetails
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
getFromDB() {
|
||||
const folderId = this.folderId
|
||||
this.storage.get(folderId).then((viewPublications) => {
|
||||
this.publicationList[folderId] = viewPublications
|
||||
})
|
||||
this.storage.get(folderId+"name").then((viewPublications) => {
|
||||
this.publicationItem[folderId] = viewPublications
|
||||
})
|
||||
|
||||
this.publicationFolderService.getFromDB(folderId)
|
||||
}
|
||||
|
||||
// getPublications() {
|
||||
// this.showLoader = true;
|
||||
// const folderId = this.folderId
|
||||
// this.publicationList = new Array();
|
||||
// this.publications.GetPublications(folderId).subscribe(async res=> {
|
||||
|
||||
// res.forEach(element => {
|
||||
// let item: Publication = this.publicationPipe.itemList(element)
|
||||
// this.publicationList.push(item);
|
||||
// });
|
||||
|
||||
// this.showLoader = false;
|
||||
// await this.storage.remove(folderId);
|
||||
// await this.storage.set(folderId, this.publicationList);
|
||||
// //this.getFromDB();
|
||||
|
||||
// },
|
||||
// (error)=>{
|
||||
// if(error.status == '404') {
|
||||
// this.error = 'Sem publicações disponíveis!';
|
||||
// this.publicationList= [];
|
||||
// }
|
||||
|
||||
// this.showLoader = false;
|
||||
|
||||
// })
|
||||
|
||||
// }
|
||||
|
||||
async AddPublication(publicationType:any, folderId:any) {
|
||||
|
||||
@@ -278,41 +246,40 @@ export class ViewPublicationsPage implements OnInit {
|
||||
}
|
||||
|
||||
async deletePublication(folderId?:any) {
|
||||
const loader = this.toastService.loading();
|
||||
try {
|
||||
await this.publications.DeletePresidentialAction(folderId).toPromise();
|
||||
this.httpErrorHandle.httpsSucessMessagge('Eliminar Acção')
|
||||
} catch (error) {
|
||||
this.httpErrorHandle.httpStatusHandle(error)
|
||||
}
|
||||
finally {
|
||||
loader.remove()
|
||||
}
|
||||
this.close();
|
||||
this.getActions.emit();
|
||||
|
||||
const modal = await this.modalController.create({
|
||||
component: AskModalPage,
|
||||
cssClass: 'discart-expedient-modal',
|
||||
backdropDismiss: true,
|
||||
componentProps: {
|
||||
title: 'Deseja arquivar este acção?',
|
||||
description: 'Nota: Ao Efetuar esta operação, o tratamento deste acção não poderá ser realizado a partir da lista de acções'
|
||||
},
|
||||
});
|
||||
|
||||
modal.onDidDismiss().then((res) => {
|
||||
if(res.data == 'Yes') {
|
||||
const loader = this.toastService.loading();
|
||||
try {
|
||||
this.publications.DeletePresidentialAction(folderId).toPromise();
|
||||
this.httpErrorHandle.httpsSucessMessagge('Eliminar Acção')
|
||||
} catch (error) {
|
||||
this.httpErrorHandle.httpStatusHandle(error)
|
||||
}
|
||||
finally {
|
||||
loader.remove()
|
||||
}
|
||||
this.close();
|
||||
this.getActions.emit();
|
||||
}
|
||||
// Do nothing
|
||||
});
|
||||
await modal.present();
|
||||
|
||||
}
|
||||
|
||||
async viewPublicationDetail(publicationId:string) {
|
||||
|
||||
|
||||
// if( window.innerWidth <= 1024) {
|
||||
// const modal = await this.modalController.create({
|
||||
// component: PublicationDetailPage,
|
||||
// componentProps:{
|
||||
// publicationId: publicationId,
|
||||
// },
|
||||
// cssClass: 'publication-detail modal modal-desktop',
|
||||
// //backdropDismiss: false
|
||||
// });
|
||||
// await modal.present();
|
||||
// modal.onDidDismiss().then(()=>{
|
||||
// this.doRefresh(event);
|
||||
// });
|
||||
// } else {
|
||||
// // open publication details
|
||||
// this.openPublicationDetails.emit(publicationId);
|
||||
// }
|
||||
|
||||
this.openPublicationDetails.emit(publicationId);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user