fix agenda layout and publication stop playing video on scroll

This commit is contained in:
Peter Maquiran
2023-12-04 08:34:57 +01:00
parent 1bd3d5a9f2
commit e8c740ef6a
6 changed files with 78 additions and 40 deletions
-2
View File
@@ -508,7 +508,6 @@ div ion-raw > ul > li {
font-family: Roboto;
font-weight: bold;
color: var(--title-text-color);
max-width: 250px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
@@ -519,7 +518,6 @@ div ion-raw > ul > li {
overflow: hidden !important;
text-overflow: ellipsis !important;
font-size: rem(17);
max-width: 250px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
@@ -68,8 +68,6 @@ export class ViewPublicationsPage implements OnInit {
private publicationVideoManagerService: PublicationVideoManagerService) {
this.publicationVideoManagerService.setContainer(this.VideoManager.nativeElement)
this.createPublicationList()
this.getFromDB();
@@ -233,10 +231,28 @@ export class ViewPublicationsPage implements OnInit {
const findIndex = this.publicationFindIndex(publicationId, folderId)
const found = this.publicationIsPresent(publicationId, folderId)
if (!found) {
this.publicationFolderService.publicationList[folderId].push(publicationDetails)
} else {
this.publicationFolderService.publicationList[folderId][findIndex] = publicationDetails
let a: any = Object.assign({},this.publicationFolderService.publicationList[folderId][findIndex])
let b: any = Object.assign({}, publicationDetails)
a.Files = a.Files.length
b.Files = b.Files.length
if(JSON.stringify(a) != JSON.stringify(b)) {
// console.log({a, b})
this.publicationFolderService.publicationList[folderId][findIndex] = publicationDetails
} else {
// console.log({publicationDetails})
}
}
}
@@ -23,7 +23,6 @@ export class PublicationVideoManagerService {
}
class SelectedPublication {
position: number
video: HTMLVideoElement
@@ -28,14 +28,14 @@
</div>
</ion-header>
<ion-content [scrollEvents]="true" (ionScroll)="onScroll($event)">
<ion-content>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<div class="main-container px-20" *ngIf="publicationFolderService.FolderDetails[folderId]" class="VideoManager" #VideoManager>
<div class="main-container px-20" *ngIf="publicationFolderService.FolderDetails[folderId]">
<p class="item-content-detail">{{publicationFolderService.FolderDetails[folderId].Detail}}</p>
@@ -60,12 +60,6 @@ export class ViewPublicationsPage implements OnInit {
private publicationVideoManagerService: PublicationVideoManagerService
) {
setTimeout(()=> {
// console.log("this.VideoManager", this.VideoManager, document.querySelector('.VideoManager'))
this.publicationVideoManagerService.setContainer(this.VideoManager.nativeElement)
}, 2000)
// this.publicationVideoManagerService.setContainer(this.VideoManager.nativeElement)
this.createPublicationList()
}
@@ -75,7 +69,7 @@ export class ViewPublicationsPage implements OnInit {
console.log("nice to have", e)
if(!e) {
this.stopVideo()
//this.stopVideo()
}
}
ngOnInit() {
@@ -217,10 +211,27 @@ export class ViewPublicationsPage implements OnInit {
const findIndex = this.publicationFindIndex(publicationId, folderId)
const found = this.publicationIsPresent(publicationId, folderId)
if (!found) {
this.publicationFolderService.publicationList[folderId].push(publicationDetails)
} else {
this.publicationFolderService.publicationList[folderId][findIndex] = publicationDetails
// console.log("names");
let a: any = Object.assign({},this.publicationFolderService.publicationList[folderId][findIndex])
let b: any = Object.assign({}, publicationDetails)
a.Files = a.Files.length
b.Files = b.Files.length
if(JSON.stringify(a) != JSON.stringify(b)) {
// console.log({a, b})
this.publicationFolderService.publicationList[folderId][findIndex] = publicationDetails
} else {
// console.log({publicationDetails})
}
}
}
+38 -24
View File
@@ -21,12 +21,12 @@ export class PublicationFolderService {
publicationPipe = new PublicationPipe()
getpublication = [];
constructor(
private storage: Storage,
private publications: PublicationsService,
) {}
createPublicationList(folderId) {
if(!this.publicationList[folderId]) {
@@ -38,10 +38,10 @@ export class PublicationFolderService {
}
getFromDB(folderId: any) {
if(!this.restoreFolder[folderId]) {
this.storage.get(folderId).then((viewPublications) => {
this.publicationList[folderId] = viewPublications
})
@@ -50,7 +50,7 @@ export class PublicationFolderService {
this.FolderDetails[folderId] = viewPublications
})
}
this.restoreFolder[folderId] = true
}
@@ -85,19 +85,19 @@ export class PublicationFolderService {
}
deletePost(folderId: any, DocumentId: any) {
if(this.publicationList[folderId]) {
if(this.publicationList[folderId]) {
this.publicationList[folderId] = this.publicationList[folderId].filter( e => e.DocumentId != DocumentId)
this.save(folderId)
}
}
}
getPublicationDetail(folderId) {
this.publications.GetPresidentialAction(folderId).subscribe(res => {
this.publications.GetPresidentialAction(folderId).subscribe(res => {
this.FolderDetails[folderId] = res
this.storage.set(folderId+"name", res)
}, (error) => {
@@ -113,7 +113,7 @@ export class PublicationFolderService {
try {
const publicationIds = await this.publications.GetPublicationsList(folderId).toPromise();
this.createPublicationList(folderId)
let loadLater = []
for (let publicationId of publicationIds) {
@@ -129,9 +129,9 @@ export class PublicationFolderService {
for( let publicationId of loadLater) {
await this.loadPublication(publicationId, folderId)
}
this.showLoader = false;
this.storage.set(folderId, this.publicationList[folderId]);
this.getpublication = this.publicationList[folderId];
} catch(error) {
@@ -144,15 +144,29 @@ export class PublicationFolderService {
async loadPublication(publicationId, folderId) {
let Publication = await this.publications.GetPublicationWithArrayOfFilesById(publicationId).toPromise();
let publicationDetails: Publication = this.publicationPipe.itemList(Publication)
const findIndex = this.publicationFindIndex(publicationId, folderId)
const found = this.publicationIsPresent(publicationId, folderId)
if(!found) {
this.publicationList[folderId].push(publicationDetails)
} else {
this.publicationList[folderId][findIndex] = publicationDetails
let a: any = Object.assign({},this.publicationList[folderId][findIndex])
let b: any = Object.assign({}, publicationDetails)
a.Files = a.Files.length
b.Files = b.Files.length
if(JSON.stringify(a) != JSON.stringify(b)) {
// console.log({a, b})
this.publicationList[folderId][findIndex] = publicationDetails
} else {
// console.log({publicationDetails})
}
}
}
@@ -165,7 +179,7 @@ export class PublicationFolderService {
async setPublication(publicationId, folderId, publicationDetails: Publication) {
const findIndex = this.publicationFindIndex(publicationId, folderId)
const found = this.publicationIsPresent(publicationId, folderId)
if(!found) {
@@ -173,13 +187,13 @@ export class PublicationFolderService {
} else {
this.publicationList[folderId][findIndex] = publicationDetails
}
}
async getPublication(publicationId, folderId, publicationDetails: Publication) {
const findIndex = this.publicationFindIndex(publicationId, folderId)
const found = this.publicationIsPresent(publicationId, folderId)
if(!found) {
@@ -187,7 +201,7 @@ export class PublicationFolderService {
} else {
return this.publicationList[folderId][findIndex]
}
}
@@ -198,7 +212,7 @@ export class PublicationFolderService {
} else {
}
}