diff --git a/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts b/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts index 78023c8a31..6403dc8c38 100644 --- a/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts +++ b/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts @@ -22,7 +22,7 @@ import { AlfrescoTranslationLoader } from './AlfrescoTranslationLoader.service'; @Injectable() export class AlfrescoTranslationService extends TranslateService { - userLang: string; + userLang: string = 'en' ; currentLoader: AlfrescoTranslationLoader; constructor(http: Http, currentLoader: AlfrescoTranslationLoader, @Optional() missingTranslationHandler: MissingTranslationHandler) { diff --git a/ng2-components/ng2-alfresco-upload/README.md b/ng2-components/ng2-alfresco-upload/README.md index 7112fff331..cc4a370b9d 100644 --- a/ng2-components/ng2-alfresco-upload/README.md +++ b/ng2-components/ng2-alfresco-upload/README.md @@ -96,8 +96,8 @@ Example of an App that declares upload button component : import { Component } from 'angular2/core'; import { bootstrap } from 'angular2/platform/browser'; import { HTTP_PROVIDERS } from 'angular2/http'; -import { AlfrescoTranslationService, AlfrescoTranslationLoader } from 'ng2-alfresco-core/services'; -import { ALFRESCO_ULPOAD_COMPONENT } from 'ng2-alfresco-upload/ng2-alfresco-upload'; +import { AlfrescoSettingsService, AlfrescoTranslationService, AlfrescoTranslationLoader } from 'ng2-alfresco-core/services'; +import { ALFRESCO_ULPOAD_COMPONENT, UploadService } from 'ng2-alfresco-upload/ng2-alfresco-upload'; @Component({ @@ -111,15 +111,17 @@ import { ALFRESCO_ULPOAD_COMPONENT } from 'ng2-alfresco-upload/ng2-alfresco-uplo directives: [ALFRESCO_ULPOAD_COMPONENT] }) export class MyDemoApp { - constructor() { - + constructor(alfrescoSettingsService: AlfrescoSettingsService) { + alfrescoSettingsService.host = 'http://myalfrescoip'; } } bootstrap(MyDemoApp, [ HTTP_PROVIDERS, AlfrescoTranslationService, - AlfrescoTranslationLoader + AlfrescoTranslationLoader, + AlfrescoSettingsService, + UploadService ]); ``` #### Options @@ -145,8 +147,8 @@ Example of an App that declares upload drag and drop component : import { Component } from 'angular2/core'; import { bootstrap } from 'angular2/platform/browser'; import { HTTP_PROVIDERS } from 'angular2/http'; -import { AlfrescoTranslationService, AlfrescoTranslationLoader } from 'ng2-alfresco-core/services'; -import { ALFRESCO_ULPOAD_COMPONENT } from 'ng2-alfresco-upload/ng2-alfresco-upload'; +import { AlfrescoSettingsService, AlfrescoTranslationService, AlfrescoTranslationLoader } from 'ng2-alfresco-core/services'; +import { ALFRESCO_ULPOAD_COMPONENT, UploadService } from 'ng2-alfresco-upload/ng2-alfresco-upload'; @Component({ @@ -159,15 +161,17 @@ import { ALFRESCO_ULPOAD_COMPONENT } from 'ng2-alfresco-upload/ng2-alfresco-uplo directives: [ALFRESCO_ULPOAD_COMPONENT] }) export class MyDemoApp { - constructor() { - + constructor(alfrescoSettingsService: AlfrescoSettingsService) { + alfrescoSettingsService.host = 'http://myalfrescoip'; } } bootstrap(MyDemoApp, [ HTTP_PROVIDERS, AlfrescoTranslationService, - AlfrescoTranslationLoader + AlfrescoTranslationLoader, + AlfrescoSettingsService, + UploadService ]); ``` #### Options diff --git a/ng2-components/ng2-alfresco-upload/demo/index.html b/ng2-components/ng2-alfresco-upload/demo/index.html index ddb356f0fe..52ca6d00af 100644 --- a/ng2-components/ng2-alfresco-upload/demo/index.html +++ b/ng2-components/ng2-alfresco-upload/demo/index.html @@ -27,8 +27,8 @@ System.config({ defaultJSExtensions: true, map: { - 'ng2-alfresco-core': 'node_modules/ng2-alfresco-core', - 'ng2-alfresco-upload': 'node_modules/ng2-alfresco-upload', + 'ng2-alfresco-core': 'node_modules/ng2-alfresco-core/dist', + 'ng2-alfresco-upload': 'node_modules/ng2-alfresco-upload/dist', 'ng2-translate': 'node_modules/ng2-translate', 'rxjs': 'node_modules/rxjs', 'angular2' : 'node_modules/angular2', diff --git a/ng2-components/ng2-alfresco-upload/demo/package.json b/ng2-components/ng2-alfresco-upload/demo/package.json index 216fd4a74e..6469589f0d 100644 --- a/ng2-components/ng2-alfresco-upload/demo/package.json +++ b/ng2-components/ng2-alfresco-upload/demo/package.json @@ -1,41 +1,41 @@ { - "name": "ng2-alfresco-upload-demo", - "description": "Alfresco Angular2 Upload Component - Demo", - "version": "0.1.0", - "author": "Alfresco Software, Ltd.", - "main": "index.js", - "scripts": { - "postinstall": "npm run build && npm run typings", - "typings": "typings install", - "start": "rm -rf dist && npm install && http-server -c-1 -o -p 8875 .", - "build": "rm -rf dist && tsc" - }, - "license": "MIT", - "dependencies": { - "alfresco-core-rest-api": "^0.1.0", - "angular2": "2.0.0-beta.13", - "es6-promise": "3.0.2", - "es6-shim": "0.35.0", - "material-design-icons": "^2.2.3", - "material-design-lite": "^1.1.3", - "ng2-alfresco-core": "^0.1.6", - "ng2-alfresco-upload": "^0.1.0", - "ng2-translate": "^1.11.2", - "reflect-metadata": "0.1.2", - "rxjs": "5.0.0-beta.2", - "zone.js": "0.6.6" - }, - "devDependencies": { - "http-server": "0.8.5", - "systemjs": "0.19.17", - "typescript": "1.7.5", - "typings": "0.6.8" - }, - "keywords": [ - "angular2", - "typescript" - ], - "publishConfig": { - "registry": "http://devproducts.alfresco.me:4873/" - } + "name": "ng2-alfresco-upload-demo", + "description": "Alfresco Angular2 Upload Component - Demo", + "version": "0.1.0", + "author": "Alfresco Software, Ltd.", + "main": "index.js", + "scripts": { + "postinstall": "npm run build && npm run typings", + "typings": "typings install", + "start": "rm -rf dist && npm install && http-server -c-1 -o -p 8875 .", + "build": "rm -rf dist && tsc" + }, + "license": "MIT", + "dependencies": { + "alfresco-core-rest-api": "^0.1.0", + "angular2": "2.0.0-beta.15", + "es6-promise": "3.0.2", + "es6-shim": "0.35.0", + "material-design-icons": "^2.2.3", + "material-design-lite": "^1.1.3", + "ng2-alfresco-core": "^0.1.6", + "ng2-alfresco-upload": "^0.1.0", + "ng2-translate": "^1.11.2", + "reflect-metadata": "0.1.2", + "rxjs": "5.0.0-beta.2", + "zone.js": "0.6.6" + }, + "devDependencies": { + "http-server": "0.8.5", + "systemjs": "0.19.17", + "typescript": "^1.8.10", + "typings": "^0.7.12" + }, + "keywords": [ + "angular2", + "typescript" + ], + "publishConfig": { + "registry": "http://devproducts.alfresco.me:4873/" + } } diff --git a/ng2-components/ng2-alfresco-upload/demo/src/my-app.ts b/ng2-components/ng2-alfresco-upload/demo/src/my-app.ts index 29796de18f..ed26342ed2 100644 --- a/ng2-components/ng2-alfresco-upload/demo/src/my-app.ts +++ b/ng2-components/ng2-alfresco-upload/demo/src/my-app.ts @@ -1,4 +1,6 @@ -/** +/// + +/*! * @license * Copyright 2016 Alfresco Software, Ltd. * @@ -18,8 +20,8 @@ import { Component } from 'angular2/core'; import { bootstrap } from 'angular2/platform/browser'; import { HTTP_PROVIDERS } from 'angular2/http'; -import { AlfrescoTranslationService, AlfrescoTranslationLoader } from 'ng2-alfresco-core/services'; -import { ALFRESCO_ULPOAD_COMPONENT } from 'ng2-alfresco-upload/ng2-alfresco-upload'; +import { AlfrescoSettingsService, AlfrescoTranslationService, AlfrescoTranslationLoader } from 'ng2-alfresco-core/services'; +import { ALFRESCO_ULPOAD_COMPONENT, UploadService } from 'ng2-alfresco-upload/ng2-alfresco-upload'; @Component({ @@ -56,13 +58,15 @@ import { ALFRESCO_ULPOAD_COMPONENT } from 'ng2-alfresco-upload/ng2-alfresco-uplo directives: [ALFRESCO_ULPOAD_COMPONENT] }) export class MyDemoApp { - constructor() { - + constructor(alfrescoSettingsService: AlfrescoSettingsService) { + alfrescoSettingsService.host = 'http://192.168.99.100:2323'; } } bootstrap(MyDemoApp, [ HTTP_PROVIDERS, AlfrescoTranslationService, - AlfrescoTranslationLoader + AlfrescoTranslationLoader, + AlfrescoSettingsService, + UploadService ]); diff --git a/ng2-components/ng2-alfresco-upload/package.json b/ng2-components/ng2-alfresco-upload/package.json index 0f508eac72..2430a08fbf 100644 --- a/ng2-components/ng2-alfresco-upload/package.json +++ b/ng2-components/ng2-alfresco-upload/package.json @@ -1,7 +1,7 @@ { "name": "ng2-alfresco-upload", "description": "Alfresco Angular2 Upload Component", - "version": "0.1.3", + "version": "0.1.4", "author": "Alfresco Software, Ltd.", "scripts": { "typings": "typings install", diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts b/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts index 3210e69774..c91ab02f36 100644 --- a/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts +++ b/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts @@ -16,7 +16,7 @@ */ -import { Component, ViewChild, ElementRef, Input, Output, EventEmitter, Optional } from 'angular2/core'; +import { Component, ViewChild, ElementRef, Input, Output, EventEmitter } from 'angular2/core'; import { UploadService } from '../services/upload.service'; import { FileModel } from '../models/file.model'; import { FileUploadingDialogComponent } from './file-uploading-dialog.component'; @@ -89,17 +89,16 @@ export class UploadButtonComponent { translate: AlfrescoTranslationService; - private _uploaderService: UploadService; constructor(public el: ElementRef, - @Optional() translate: AlfrescoTranslationService) { + private _uploaderService: UploadService, + translate: AlfrescoTranslationService) { console.log('UploadComponent constructor', el); let site = this.getSiteId(); let container = this.getContainerId(); - this._uploaderService = new UploadService({ - fieldName: 'filedata', + this._uploaderService.setOptions({ formFields: { siteid: site, containerid: container diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.ts b/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.ts index c2f6d3c982..837e02aa08 100644 --- a/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.ts +++ b/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.ts @@ -42,8 +42,6 @@ declare let __moduleName: string; }) export class UploadDragAreaComponent { - private _uploaderService: UploadService; - @ViewChild('fileUploadingDialog') fileUploadingDialogComponent: FileUploadingDialogComponent; @@ -61,13 +59,14 @@ export class UploadDragAreaComponent { @Output() onSuccess = new EventEmitter(); - constructor(public el: ElementRef) { + constructor(public el: ElementRef, + private _uploaderService: UploadService) { console.log('UploadComponent constructor', el); let site = this.getSiteId(); let container = this.getContainerId(); - this._uploaderService = new UploadService({ + this._uploaderService.setOptions({ fieldName: 'filedata', formFields: { siteid: site, diff --git a/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts b/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts index 39356ac9c1..5897808ad5 100644 --- a/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts +++ b/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts @@ -17,9 +17,10 @@ import { FileModel } from '../models/file.model'; -import { EventEmitter } from 'angular2/core'; +import { EventEmitter, Injectable } from 'angular2/core'; import { Observable } from 'rxjs/Observable'; import { Response } from 'angular2/http'; +import { AlfrescoSettingsService } from 'ng2-alfresco-core/services'; declare let AlfrescoApi: any; @@ -29,27 +30,37 @@ declare let AlfrescoApi: any; * * @returns {UploadService} . */ +@Injectable() export class UploadService { private _host: string = 'http://192.168.99.100:8080'; private _baseUrlPath: string = '/alfresco/api/-default-/public/alfresco/versions/1'; private _url: string = '/alfresco/service/api/upload'; private _method: string = 'POST'; - private _fieldName: string = 'file'; + private _fieldName: string = 'filedata'; private _formFields: Object = {}; private _queue: FileModel[] = []; private _alfrescoClient: any; - constructor(private options: any) { + constructor(private settings: AlfrescoSettingsService) { console.log('UploadService constructor'); + if (settings) { + this._host = settings.host; + } this._alfrescoClient = this.getAlfrescoClient(); + } - this._host = options.host || this._host; + /** + * Configure the service + * + * @param {Object} - options to init the object + * + */ + public setOptions(options: any): void { this._baseUrlPath = options.baseUrlPath || this._baseUrlPath; - this._fieldName = options.fieldName != null ? options.fieldName : this._fieldName; this._formFields = options.formFields != null ? options.formFields : this._formFields; }