Merge pull request #569 from Alfresco/dev-mvitale-546

Fix error dialog not initialized
This commit is contained in:
Mario Romano
2016-08-13 20:06:31 +01:00
committed by GitHub
3 changed files with 21 additions and 26 deletions

View File

@@ -15,7 +15,7 @@
* limitations under the License.
*/
import { Component, ChangeDetectorRef, OnInit } from '@angular/core';
import { Component, ChangeDetectorRef, OnInit, OnDestroy } from '@angular/core';
import { FileModel } from '../models/file.model';
import { FileUploadingListComponent } from './file-uploading-list.component';
import { AlfrescoTranslationService, AlfrescoPipeTranslate } from 'ng2-alfresco-core';
@@ -43,7 +43,7 @@ declare let __moduleName: string;
host: {'[class.dialog-show]': 'toggleShowDialog'},
pipes: [AlfrescoPipeTranslate]
})
export class FileUploadingDialogComponent implements OnInit {
export class FileUploadingDialogComponent implements OnInit, OnDestroy {
isDialogActive: boolean = false;
@@ -90,4 +90,8 @@ export class FileUploadingDialogComponent implements OnInit {
toggleDialogMinimize() {
this._isDialogMinimized = !this._isDialogMinimized;
}
ngOnDestroy() {
this.cd.detach();
}
}

View File

@@ -102,7 +102,6 @@ export class UploadButtonComponent {
*/
onFilesAdded($event: any): void {
let files = $event.currentTarget.files;
this.printFileInfo(files);
this.uploadFiles(this.currentFolderPath, files);
// reset the value of the input file
$event.target.value = '';
@@ -115,7 +114,6 @@ export class UploadButtonComponent {
*/
onDirectoryAdded($event: any): void {
let files = $event.currentTarget.files;
this.printFileInfo(files);
let hashMapDir = this.convertIntoHashMap(files);
hashMapDir.forEach((filesDir, directoryPath) => {
@@ -265,18 +263,6 @@ export class UploadButtonComponent {
}
}
/**
* Prints the basic information of a file
* @param files
*/
printFileInfo(files: any) {
for (let file of files) {
console.log('Name: ' + file.name);
console.log('Size: ' + file.size);
console.log('Path: ' + file.webkitRelativePath);
}
}
/**
* Replace a placeholder {0} in a message with the input keys
* @param message - the message that conains the placeholder

View File

@@ -91,16 +91,11 @@ export class UploadService {
filesToUpload.forEach((uploadingFileModel: FileModel) => {
uploadingFileModel.setUploading();
let _filesUploadObserverProgressBar = this.filesUploadObserverProgressBar;
let _queue = this.queue;
let promiseUpload = this.authService.getAlfrescoApi().
upload.uploadFile(uploadingFileModel.file, directory)
.on('progress', (progress: any) => {
uploadingFileModel.setProgres(progress);
if (_filesUploadObserverProgressBar) {
_filesUploadObserverProgressBar.next(_queue);
}
this.updateFileListStream(this.queue);
})
.on('abort', () => {
uploadingFileModel.setAbort();
@@ -124,11 +119,9 @@ export class UploadService {
data.response
);
_filesUploadObserverProgressBar.next(_queue);
this.updateFileListStream(this.queue);
if (!uploadingFileModel.abort && !uploadingFileModel.error) {
if (this.totalCompletedObserver) {
this.totalCompletedObserver.next(++this.totalCompleted);
}
this.updateFileCounterStream(++this.totalCompleted);
}
});
@@ -182,4 +175,16 @@ export class UploadService {
console.error(error);
return Observable.throw(error || 'Server error');
}
private updateFileListStream(fileList: FileModel[]) {
if (this.filesUploadObserverProgressBar) {
this.filesUploadObserverProgressBar.next(fileList);
}
}
private updateFileCounterStream(total: number) {
if (this.totalCompletedObserver) {
this.totalCompletedObserver.next(total);
}
}
}