This commit is contained in:
Peter Maquiran
2023-08-18 17:37:11 +01:00
parent eb77736a60
commit 8d35abbdd0
12 changed files with 269 additions and 163 deletions
@@ -9,6 +9,8 @@ import { FormControl, FormGroup, Validators } from '@angular/forms';
import { ThemeService } from 'src/app/services/theme.service';
import { Camera, CameraResultType, CameraSource} from '@capacitor/camera';
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
import { PublicationFolderService } from 'src/app/store/publication-folder.service';
@Component({
selector: 'app-new-publication',
templateUrl: './new-publication.page.html',
@@ -50,7 +52,8 @@ export class NewPublicationPage implements OnInit {
private publications: PublicationsService,
private toastService: ToastService,
public ThemeService: ThemeService,
private httpErroHandle: HttpErrorHandle
private httpErroHandle: HttpErrorHandle,
public PublicationFolderService: PublicationFolderService
) {
this.publicationTitle = 'Nova Publicação';
}
@@ -65,22 +68,43 @@ export class NewPublicationPage implements OnInit {
}
getPublicationDetail() {
this.showLoader = true;
this.publications.GetPublicationById(this.publicationId).subscribe( res => {
const folderId = this.folderId
const localPublication = this.PublicationFolderService.getLocalPublication(folderId, this.publicationId);
if(localPublication?.DocumentId) {
this.publication = {
DateIndex: res.DateIndex,
DocumentId: res.DocumentId,
ProcessId:res.ProcessId,
Title:res.Title,
Message: res.Message,
DatePublication: res.DatePublication,
FileBase64: "data:image/jpg;base64," + res.FileBase64,
OriginalFileName: res.OriginalFileName,
DateIndex: localPublication.DateIndex,
DocumentId: localPublication.DocumentId,
ProcessId:localPublication.ProcessId,
Title:localPublication.Title,
Message: localPublication.Message,
DatePublication: localPublication.DatePublication,
FileBase64: localPublication.FileBase64,
OriginalFileName: localPublication.OriginalFileName,
FileExtension: 'jpeg',
}
this.pub = this.publication;
this.showLoader = false;
});
} else {
this.showLoader = true;
this.publications.GetPublicationById(this.publicationId).subscribe( res => {
this.publication = {
DateIndex: res.DateIndex,
DocumentId: res.DocumentId,
ProcessId:res.ProcessId,
Title:res.Title,
Message: res.Message,
DatePublication: res.DatePublication,
FileBase64: "data:image/jpg;base64," + res.FileBase64,
OriginalFileName: res.OriginalFileName,
FileExtension: 'jpeg',
}
this.pub = this.publication;
this.showLoader = false;
});
}
}
@@ -228,6 +252,9 @@ export class NewPublicationPage implements OnInit {
}
}
this.PublicationFolderService.loadPublication(this.publication.DocumentId, this.publication.ProcessId)
}
else {
@@ -19,6 +19,7 @@
<p class="post-data"><ion-skeleton-text animated style="width: 20%;"></ion-skeleton-text></p>
</div>
</div>
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
</ion-header>
<ion-content>
@@ -18,7 +18,6 @@ export class PublicationDetailPage implements OnInit {
showLoader: boolean;
/* folderId: string; */
publication: Publication;
@Input() publicationId: string;
@Input() folderId: string;
@Output() addNewPublication = new EventEmitter<any>();
@@ -64,30 +63,52 @@ export class PublicationDetailPage implements OnInit {
}
getPublicationDetail() {
this.showLoader = true;
this.publications.GetPublicationById(this.publicationId).subscribe(res => {
const folderId = this.folderId
const localPublication = this.publicationFolderService.getLocalPublication(folderId, this.publicationId);
if(localPublication?.DocumentId) {
this.publication = {
DateIndex: res.DateIndex,
DocumentId: res.DocumentId,
ProcessId:res.ProcessId,
Title:res.Title,
Message: res.Message,
DatePublication: res.DatePublication,
FileBase64: "data:image/jpg;base64," + res.FileBase64,
OriginalFileName: res.OriginalFileName,
DateIndex: localPublication.DateIndex,
DocumentId: localPublication.DocumentId,
ProcessId:localPublication.ProcessId,
Title:localPublication.Title,
Message: localPublication.Message,
DatePublication: localPublication.DatePublication,
FileBase64: localPublication.FileBase64,
OriginalFileName: localPublication.OriginalFileName,
FileExtension: 'jpeg',
}
this.showLoader = false;
}, (error) => {
} else {
this.showLoader = true;
this.publications.GetPublicationById(this.publicationId).subscribe(res => {
this.publication = {
DateIndex: res.DateIndex,
DocumentId: res.DocumentId,
ProcessId:res.ProcessId,
Title:res.Title,
Message: res.Message,
DatePublication: res.DatePublication,
FileBase64: "data:image/jpg;base64," + res.FileBase64,
OriginalFileName: res.OriginalFileName,
FileExtension: 'jpeg',
}
this.showLoader = false;
}, (error) => {
this.showLoader = false;
if(error.status == 404) {
this.publicationFolderService.deletePost(this.folderId, this.publicationId)
}
this.goBack();
this.httpErrorHandle.httpStatusHandle(error)
});
if(error.status == 404) {
this.publicationFolderService.deletePost(this.folderId, this.publicationId)
}
this.goBack();
this.httpErrorHandle.httpStatusHandle(error)
});
}
}
close() {
@@ -1,12 +1,12 @@
<ion-header class="ion-no-border">
<div class="main-header">
<div class="title-content">
<div *ngIf="publicationFolderService.FolderDetails[folderId]" class="div-title width-100 flex-grow-1">
<div *ngIf="publicationFolderService.FolderDetails[folderId]" class="div-title d-flex width-100 flex-grow-1 justify-content-between">
<div class="title">
<ion-label>{{publicationFolderService.FolderDetails[folderId].Description}}</ion-label>
</div>
<div class="actions-icon">
<div class="actions-icon align-baseline">
<!-- <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(publicationFolderService.FolderDetails[folderId].ProcessId)">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="edit" slot="end" src="assets/images/icons-edit.svg" ></ion-icon>
@@ -21,7 +21,6 @@
</div>
</div>
<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-yyyy HH:mm'}}</p>
</div>
@@ -36,6 +35,8 @@
</ion-refresher-content>
</ion-refresher>
<div class="main-container px-20" *ngIf="publicationFolderService.FolderDetails[folderId]">
<p class="item-content-detail">{{publicationFolderService.FolderDetails[folderId].Detail}}</p>
<ion-card *ngFor="let publication of publicationFolderService.publicationList[folderId] let i = index"
(click)="viewPublicationDetail(publication.DocumentId)">
<ion-card-content>