1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00

bugfixing grid sorting

This commit is contained in:
Braun Patrik 2016-07-04 18:12:58 +02:00
parent 8e14c613ea
commit a7a8e42490
4 changed files with 17 additions and 11 deletions

View File

@ -18,6 +18,11 @@ export class GalleryCacheService {
if (value != null) { if (value != null) {
let directory:Directory = JSON.parse(value); let directory:Directory = JSON.parse(value);
directory.photos.forEach((photo:Photo) => {
photo.metadata.creationDate = new Date(<any>photo.metadata.creationDate);
});
directory.photos.forEach((photo:Photo) => { directory.photos.forEach((photo:Photo) => {
photo.directory = directory; photo.directory = directory;
}); });

View File

@ -39,6 +39,11 @@ export class GalleryService {
return; return;
} }
message.result.directory.photos.forEach((photo:Photo) => {
photo.metadata.creationDate = new Date(<any>photo.metadata.creationDate);
});
message.result.directory.photos.forEach((photo:Photo) => { message.result.directory.photos.forEach((photo:Photo) => {
photo.directory = message.result.directory; photo.directory = message.result.directory;
}); });

View File

@ -76,6 +76,7 @@ export class GalleryGridComponent implements OnChanges,AfterViewInit {
this.updateContainerWidth(); this.updateContainerWidth();
this.sortPhotos();
this.clearRenderedPhotos(); this.clearRenderedPhotos();
setImmediate(() => { setImmediate(() => {
this.renderPhotos(); this.renderPhotos();
@ -87,14 +88,7 @@ export class GalleryGridComponent implements OnChanges,AfterViewInit {
private sortPhotos() { private sortPhotos() {
//sort pohots by date //sort pohots by date
this.photos.sort((a:Photo, b:Photo) => { this.photos.sort((a:Photo, b:Photo) => {
if (a.metadata.creationDate > b.metadata.creationDate) { return a.metadata.creationDate.getTime() - b.metadata.creationDate.getTime();
return 1;
}
if (a.metadata.creationDate < b.metadata.creationDate) {
return -1;
}
// a must be equal to b
return 0;
}); });
} }
@ -171,7 +165,10 @@ export class GalleryGridComponent implements OnChanges,AfterViewInit {
} }
public renderARow():number { public renderARow():number {
if (this.renderedPhotoIndex + 1 >= this.photos.length) {
return 0;
}
let maxRowHeight = window.innerHeight / this.MIN_ROW_COUNT; let maxRowHeight = window.innerHeight / this.MIN_ROW_COUNT;
let minRowHeight = window.innerHeight / this.MAX_ROW_COUNT; let minRowHeight = window.innerHeight / this.MAX_ROW_COUNT;
@ -188,7 +185,6 @@ export class GalleryGridComponent implements OnChanges,AfterViewInit {
}); });
this.renderedPhotoIndex += photoRowBuilder.getPhotoRow().length; this.renderedPhotoIndex += photoRowBuilder.getPhotoRow().length;
console.log(this.photosToRender.length);
return rowHeight; return rowHeight;
} }

View File

@ -19,7 +19,7 @@
<span *ngIf="!searchEnabled">{{getPositionText()}}</span> <span *ngIf="!searchEnabled">{{getPositionText()}}</span>
</template> </template>
</div> </div>
{{gridPhoto.photo.metadata.creationDate | date:"yy-MM-dd HH:mm:ss"}}
<div class="photo-keywords"> <div class="photo-keywords">
<template ngFor let-keyword [ngForOf]="gridPhoto.photo.metadata.keywords" let-last="last"> <template ngFor let-keyword [ngForOf]="gridPhoto.photo.metadata.keywords" let-last="last">