mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-09 18:03:21 +00:00
Merge pull request #61 from Alfresco/dev-wabson-7
Use client API in document-list component
This commit is contained in:
@@ -18,6 +18,7 @@ For development configuration please refer to* **Configuring development environ
|
||||
##### Using setup script (recommended)
|
||||
|
||||
```sh
|
||||
git clone https://github.com/Alfresco/dev-platform-js-api.git
|
||||
git clone https://github.com/Alfresco/dev-platform-webcomponents.git
|
||||
cd dev-platform-webcomponents
|
||||
./start.sh
|
||||
@@ -26,7 +27,9 @@ cd dev-platform-webcomponents
|
||||
##### Manual setup
|
||||
|
||||
```sh
|
||||
git clone https://github.com/Alfresco/dev-platform-js-api.git
|
||||
git clone https://github.com/Alfresco/dev-platform-webcomponents.git
|
||||
|
||||
cd dev-platform-webcomponents/demo-shell-ng2
|
||||
|
||||
npm install
|
||||
@@ -34,6 +37,7 @@ npm install ../ng2-components/ng2-alfresco-core
|
||||
npm install ../ng2-components/ng2-alfresco-login
|
||||
npm install ../ng2-components/ng2-alfresco-documentlist
|
||||
npm install ../ng2-components/ng2-alfresco-upload
|
||||
npm install ../../dev-platform-js-api
|
||||
|
||||
npm run build.dev
|
||||
```
|
||||
|
||||
@@ -13,7 +13,19 @@
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- [Alfresco Docker image with CORS support](https://github.com/wabson/alfresco-docker-cors)
|
||||
Docker machine with latest `platform-distribution:api-latest` image.
|
||||
|
||||
```
|
||||
docker login dockerreg.alfresco.com
|
||||
docker pull dockerreg.alfresco.com/platform-distribution:api-latest
|
||||
docker-compose up
|
||||
```
|
||||
|
||||
to clean up afterwards
|
||||
|
||||
```
|
||||
docker-compose rm
|
||||
```
|
||||
|
||||
### Configuring development environment
|
||||
|
||||
@@ -48,6 +60,12 @@ cd ../../demo-shell-ng
|
||||
npm link ng2-alfresco-login
|
||||
```
|
||||
|
||||
*dev-platform-js-api client:*
|
||||
|
||||
```sh
|
||||
npm link ../../dev-platform-js-api
|
||||
```
|
||||
|
||||
Please refer to [this article](https://docs.npmjs.com/cli/link) for more details on npm link.
|
||||
|
||||
### Building and running
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<content-column source="$thumbnail"></content-column>
|
||||
<content-column
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.DISPLAY_NAME' | translate}}"
|
||||
source="displayName"
|
||||
source="name"
|
||||
class="full-width name-column">
|
||||
</content-column>
|
||||
<content-column
|
||||
@@ -13,11 +13,11 @@
|
||||
</content-column>
|
||||
<content-column
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.CREATED_BY' | translate}}"
|
||||
source="createdBy">
|
||||
source="createdByUser.displayName">
|
||||
</content-column>
|
||||
<content-column
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.CREATED_ON' | translate}}"
|
||||
source="createdOn">
|
||||
source="createdAt">
|
||||
</content-column>
|
||||
</content-columns>
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
|
||||
|
||||
<script src="/app/js/xml2json.js"></script>
|
||||
<script src="node_modules/alfresco-core-rest-api/bundle.js"></script>
|
||||
|
||||
<!-- 2. Configure SystemJS -->
|
||||
<script>
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
alfresco:
|
||||
image: dockerreg.alfresco.com/platform-distribution:api-latest
|
||||
ports:
|
||||
- "8080:8080"
|
||||
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
import { OnInit, EventEmitter, AfterContentInit, AfterViewChecked } from 'angular2/core';
|
||||
import { AlfrescoService } from './../services/alfresco.service';
|
||||
import { FolderEntity, DocumentEntity } from './../models/document-library.model';
|
||||
import { MinimalNodeEntity, NodePaging } from './../models/document-library.model';
|
||||
import { ContentActionModel } from './../models/content-action.model';
|
||||
import { ContentColumnModel } from './../models/content-column.model';
|
||||
export declare class DocumentList implements OnInit, AfterViewChecked, AfterContentInit {
|
||||
@@ -30,7 +30,7 @@ export declare class DocumentList implements OnInit, AfterViewChecked, AfterCont
|
||||
path: string;
|
||||
};
|
||||
currentFolderPath: string;
|
||||
folder: FolderEntity;
|
||||
folder: NodePaging;
|
||||
errorMessage: any;
|
||||
route: any[];
|
||||
actions: ContentActionModel[];
|
||||
@@ -61,7 +61,7 @@ export declare class DocumentList implements OnInit, AfterViewChecked, AfterCont
|
||||
* @param item Underlying node item
|
||||
* @param e DOM event (optional)
|
||||
*/
|
||||
onItemClick(item: DocumentEntity, e?: any): void;
|
||||
onItemClick(item: MinimalNodeEntity, e?: any): void;
|
||||
/**
|
||||
* Invoked when a breadcrumb route is clicked.
|
||||
* @param r Route to navigate to
|
||||
@@ -73,19 +73,19 @@ export declare class DocumentList implements OnInit, AfterViewChecked, AfterCont
|
||||
* @param node Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getContentUrl(node: DocumentEntity): string;
|
||||
getContentUrl(node: MinimalNodeEntity): string;
|
||||
/**
|
||||
* Gets thumbnail URL for the given document node.
|
||||
* @param node Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getDocumentThumbnailUrl(node: DocumentEntity): string;
|
||||
getDocumentThumbnailUrl(node: MinimalNodeEntity): string;
|
||||
/**
|
||||
* Invoked when executing content action for a document or folder.
|
||||
* @param node Node to be the context of the execution.
|
||||
* @param action Action to be executed against the context.
|
||||
*/
|
||||
executeContentAction(node: DocumentEntity, action: ContentActionModel): void;
|
||||
executeContentAction(node: MinimalNodeEntity, action: ContentActionModel): void;
|
||||
/**
|
||||
* Loads and displays folder content
|
||||
* @param path Node path
|
||||
@@ -96,7 +96,7 @@ export declare class DocumentList implements OnInit, AfterViewChecked, AfterCont
|
||||
* @param node
|
||||
* @returns {string}
|
||||
*/
|
||||
getNodePath(node: DocumentEntity): string;
|
||||
getNodePath(node: MinimalNodeEntity): string;
|
||||
/**
|
||||
* Gets a value from an object by composed key
|
||||
* documentList.getObjectValue({ item: { nodeType: 'cm:folder' }}, 'item.nodeType') ==> 'cm:folder'
|
||||
|
||||
@@ -28,26 +28,26 @@
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr *ngFor="#content of folder.items; #idx = index">
|
||||
<tr *ngFor="#content of folder.list.entries; #idx = index">
|
||||
<!-- Columns -->
|
||||
<td *ngFor="#col of columns" [ngSwitch]="col.source"
|
||||
class="mdl-data-table__cell--non-numeric {{content.isFolder ? 'folder-row-cell' : 'document-row-cell'}} {{col.cssClass}}"
|
||||
class="mdl-data-table__cell--non-numeric {{content.entry.isFolder ? 'folder-row-cell' : 'document-row-cell'}} {{col.cssClass}}"
|
||||
(click)="onItemClick(content, $event)">
|
||||
<div *ngSwitchWhen="'$thumbnail'">
|
||||
<div *ngIf="content.isFolder">
|
||||
<div *ngIf="content.entry.isFolder">
|
||||
<i class="material-icons folder-thumbnail">{{folderIcon || 'folder_open'}}</i>
|
||||
</div>
|
||||
<div *ngIf="!content.isFolder">
|
||||
<div *ngIf="!content.entry.isFolder">
|
||||
<img class="document-thumbnail" alt="" src="{{getDocumentThumbnailUrl(content)}}">
|
||||
</div>
|
||||
</div>
|
||||
<span *ngSwitchDefault>
|
||||
{{getObjectValue(content, col.source)}}
|
||||
{{getObjectValue(content.entry, col.source)}}
|
||||
</span>
|
||||
</td>
|
||||
|
||||
<!-- Actions: folder -->
|
||||
<td *ngIf="content.isFolder">
|
||||
<td *ngIf="content.entry.isFolder">
|
||||
<!-- action buttons -->
|
||||
<button class="mdl-button mdl-js-button mdl-button--icon"
|
||||
*ngFor="#action of getContentActions('folder', 'button')"
|
||||
@@ -69,7 +69,7 @@
|
||||
</ul>
|
||||
</td>
|
||||
<!-- Actions: document -->
|
||||
<td *ngIf="!content.isFolder">
|
||||
<td *ngIf="!content.entry.isFolder">
|
||||
<!-- action buttons -->
|
||||
<button class="mdl-button mdl-js-button mdl-button--icon"
|
||||
*ngFor="#action of getContentActions('document', 'button')"
|
||||
|
||||
@@ -48,7 +48,7 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
|
||||
this.itemClick = new core_1.EventEmitter();
|
||||
this.rootFolder = {
|
||||
name: 'Document Library',
|
||||
path: 'swsdp/documentLibrary'
|
||||
path: 'Sites/swsdp/documentLibrary'
|
||||
};
|
||||
this.currentFolderPath = 'swsdp/documentLibrary';
|
||||
this.route = [];
|
||||
@@ -125,10 +125,10 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
|
||||
value: item
|
||||
});
|
||||
if (this.navigate && item) {
|
||||
if (item.isFolder) {
|
||||
if (item.entry.isFolder) {
|
||||
var path = this.getNodePath(item);
|
||||
this.route.push({
|
||||
name: item.displayName,
|
||||
name: item.entry.name,
|
||||
path: path
|
||||
});
|
||||
this.displayFolderContent(path);
|
||||
@@ -204,10 +204,8 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
|
||||
*/
|
||||
DocumentList.prototype.getNodePath = function (node) {
|
||||
if (node) {
|
||||
var container = node.location.container;
|
||||
var path = node.location.path !== '/' ? (node.location.path + '/') : '/';
|
||||
var relativePath = container + path + node.fileName;
|
||||
return node.location.site + '/' + relativePath;
|
||||
var pathWithCompanyHome = item.entry.path.name;
|
||||
return pathWithCompanyHome.replace('/Company Home', '') + '/' + item.entry.name;
|
||||
}
|
||||
return null;
|
||||
};
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -25,7 +25,7 @@ import {
|
||||
AfterViewChecked
|
||||
} from 'angular2/core';
|
||||
import {AlfrescoService} from './../services/alfresco.service';
|
||||
import {FolderEntity, DocumentEntity} from './../models/document-library.model';
|
||||
import {MinimalNodeEntity,NodePaging} from './../models/document-library.model';
|
||||
import {ContentActionModel} from './../models/content-action.model';
|
||||
import {ContentColumnModel} from './../models/content-column.model';
|
||||
|
||||
@@ -55,10 +55,10 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
|
||||
rootFolder = {
|
||||
name: 'Document Library',
|
||||
path: 'swsdp/documentLibrary'
|
||||
path: 'Sites/swsdp/documentLibrary'
|
||||
};
|
||||
currentFolderPath: string = 'swsdp/documentLibrary';
|
||||
folder: FolderEntity;
|
||||
folder: NodePaging;
|
||||
errorMessage;
|
||||
|
||||
route: any[] = [];
|
||||
@@ -140,7 +140,7 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
* @param item Underlying node item
|
||||
* @param e DOM event (optional)
|
||||
*/
|
||||
onItemClick(item: DocumentEntity, e = null) {
|
||||
onItemClick(item: MinimalNodeEntity, e = null) {
|
||||
if (e) {
|
||||
e.preventDefault();
|
||||
}
|
||||
@@ -150,10 +150,10 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
});
|
||||
|
||||
if (this.navigate && item) {
|
||||
if (item.isFolder) {
|
||||
if (item.entry.isFolder) {
|
||||
let path = this.getNodePath(item);
|
||||
this.route.push({
|
||||
name: item.displayName,
|
||||
name: item.entry.name,
|
||||
path: path
|
||||
});
|
||||
this.displayFolderContent(path);
|
||||
@@ -185,7 +185,7 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
* @param node Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getContentUrl(node: DocumentEntity): string {
|
||||
getContentUrl(node: MinimalNodeEntity): string {
|
||||
if (this._alfrescoService) {
|
||||
return this._alfrescoService.getContentUrl(node);
|
||||
}
|
||||
@@ -197,7 +197,7 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
* @param node Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getDocumentThumbnailUrl(node: DocumentEntity): string {
|
||||
getDocumentThumbnailUrl(node: MinimalNodeEntity): string {
|
||||
if (this._alfrescoService) {
|
||||
return this._alfrescoService.getDocumentThumbnailUrl(node);
|
||||
}
|
||||
@@ -209,7 +209,7 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
* @param node Node to be the context of the execution.
|
||||
* @param action Action to be executed against the context.
|
||||
*/
|
||||
executeContentAction(node: DocumentEntity, action: ContentActionModel) {
|
||||
executeContentAction(node: MinimalNodeEntity, action: ContentActionModel) {
|
||||
if (action) {
|
||||
action.handler(node);
|
||||
}
|
||||
@@ -220,7 +220,7 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
* @param path Node path
|
||||
*/
|
||||
displayFolderContent(path) {
|
||||
if (path) {
|
||||
if (path !== null) {
|
||||
this.currentFolderPath = path;
|
||||
this._alfrescoService
|
||||
.getFolder(path)
|
||||
@@ -236,12 +236,10 @@ export class DocumentList implements OnInit, AfterViewChecked, AfterContentInit
|
||||
* @param node
|
||||
* @returns {string}
|
||||
*/
|
||||
getNodePath(node: DocumentEntity): string {
|
||||
getNodePath(node: MinimalNodeEntity): string {
|
||||
if (node) {
|
||||
let container = node.location.container;
|
||||
let path = node.location.path !== '/' ? (node.location.path + '/' ) : '/';
|
||||
let relativePath = container + path + node.fileName;
|
||||
return node.location.site + '/' + relativePath;
|
||||
let pathWithCompanyHome = item.entry.path.name;
|
||||
return pathWithCompanyHome.replace('/Company Home', '') + '/' + item.entry.name;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
System.register([], function(exports_1, context_1) {
|
||||
"use strict";
|
||||
var __moduleName = context_1 && context_1.id;
|
||||
var FolderEntity, DocumentEntity, LocationEntity, LocationParentEntity;
|
||||
var FolderEntity, DocumentEntity, LocationEntity, LocationParentEntity, NodePaging, NodePagingList, MinimalNodeEntity, MinimalNodeEntryEntity, UserInfo, ContentInfo, PathInfoEntity, PathElementEntity;
|
||||
return {
|
||||
setters:[],
|
||||
execute: function() {
|
||||
@@ -46,6 +46,54 @@ System.register([], function(exports_1, context_1) {
|
||||
return LocationParentEntity;
|
||||
}());
|
||||
exports_1("LocationParentEntity", LocationParentEntity);
|
||||
NodePaging = (function () {
|
||||
function NodePaging() {
|
||||
}
|
||||
return NodePaging;
|
||||
}());
|
||||
exports_1("NodePaging", NodePaging);
|
||||
NodePagingList = (function () {
|
||||
function NodePagingList() {
|
||||
}
|
||||
return NodePagingList;
|
||||
}());
|
||||
exports_1("NodePagingList", NodePagingList);
|
||||
MinimalNodeEntity = (function () {
|
||||
function MinimalNodeEntity() {
|
||||
}
|
||||
return MinimalNodeEntity;
|
||||
}());
|
||||
exports_1("MinimalNodeEntity", MinimalNodeEntity);
|
||||
MinimalNodeEntryEntity = (function () {
|
||||
function MinimalNodeEntryEntity() {
|
||||
}
|
||||
return MinimalNodeEntryEntity;
|
||||
}());
|
||||
exports_1("MinimalNodeEntryEntity", MinimalNodeEntryEntity);
|
||||
UserInfo = (function () {
|
||||
function UserInfo() {
|
||||
}
|
||||
return UserInfo;
|
||||
}());
|
||||
exports_1("UserInfo", UserInfo);
|
||||
ContentInfo = (function () {
|
||||
function ContentInfo() {
|
||||
}
|
||||
return ContentInfo;
|
||||
}());
|
||||
exports_1("ContentInfo", ContentInfo);
|
||||
PathInfoEntity = (function () {
|
||||
function PathInfoEntity() {
|
||||
}
|
||||
return PathInfoEntity;
|
||||
}());
|
||||
exports_1("PathInfoEntity", PathInfoEntity);
|
||||
PathElementEntity = (function () {
|
||||
function PathElementEntity() {
|
||||
}
|
||||
return PathElementEntity;
|
||||
}());
|
||||
exports_1("PathElementEntity", PathElementEntity);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"document-library.model.js","sourceRoot":"","sources":["document-library.model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;YAEH,yDAAyD;YAEzD;gBAAA;gBAEA,CAAC;gBAAD,mBAAC;YAAD,CAAC,AAFD,IAEC;YAFD,uCAEC,CAAA;YAED;gBAAA;gBA6BA,CAAC;gBAAD,qBAAC;YAAD,CAAC,AA7BD,IA6BC;YA7BD,2CA6BC,CAAA;YAED;gBAAA;gBAQA,CAAC;gBAAD,qBAAC;YAAD,CAAC,AARD,IAQC;YARD,2CAQC,CAAA;YAED;gBAAA;gBAEA,CAAC;gBAAD,2BAAC;YAAD,CAAC,AAFD,IAEC;YAFD,uDAEC,CAAA"}
|
||||
{"version":3,"file":"document-library.model.js","sourceRoot":"","sources":["document-library.model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;YAEH,yDAAyD;YAEzD;gBAAA;gBAEA,CAAC;gBAAD,mBAAC;YAAD,CAAC,AAFD,IAEC;YAFD,uCAEC,CAAA;YAED;gBAAA;gBA6BA,CAAC;gBAAD,qBAAC;YAAD,CAAC,AA7BD,IA6BC;YA7BD,2CA6BC,CAAA;YAED;gBAAA;gBAQA,CAAC;gBAAD,qBAAC;YAAD,CAAC,AARD,IAQC;YARD,2CAQC,CAAA;YAED;gBAAA;gBAEA,CAAC;gBAAD,2BAAC;YAAD,CAAC,AAFD,IAEC;YAFD,uDAEC,CAAA;YAED;gBAAA;gBAEA,CAAC;gBAAD,iBAAC;YAAD,CAAC,AAFD,IAEC;YAFD,mCAEC,CAAA;YAED;gBAAA;gBAEA,CAAC;gBAAD,qBAAC;YAAD,CAAC,AAFD,IAEC;YAFD,2CAEC,CAAA;YAED;gBAAA;gBAEA,CAAC;gBAAD,wBAAC;YAAD,CAAC,AAFD,IAEC;YAFD,iDAEC,CAAA;YAED;gBAAA;gBAaA,CAAC;gBAAD,6BAAC;YAAD,CAAC,AAbD,IAaC;YAbD,2DAaC,CAAA;YAED;gBAAA;gBAGA,CAAC;gBAAD,eAAC;YAAD,CAAC,AAHD,IAGC;YAHD,+BAGC,CAAA;YAED;gBAAA;gBAKA,CAAC;gBAAD,kBAAC;YAAD,CAAC,AALD,IAKC;YALD,qCAKC,CAAA;YAED;gBAAA;gBAIA,CAAC;gBAAD,qBAAC;YAAD,CAAC,AAJD,IAIC;YAJD,2CAIC,CAAA;YAED;gBAAA;gBAGA,CAAC;gBAAD,wBAAC;YAAD,CAAC,AAHD,IAGC;YAHD,iDAGC,CAAA"}
|
||||
@@ -65,3 +65,53 @@ export class LocationEntity {
|
||||
export class LocationParentEntity {
|
||||
nodeRef: string;
|
||||
}
|
||||
|
||||
export class NodePaging {
|
||||
list: NodePagingList;
|
||||
}
|
||||
|
||||
export class NodePagingList {
|
||||
entries: MinimalNodeEntity[];
|
||||
}
|
||||
|
||||
export class MinimalNodeEntity {
|
||||
entry: MinimalNodeEntryEntity;
|
||||
}
|
||||
|
||||
export class MinimalNodeEntryEntity {
|
||||
id: string;
|
||||
parentId: string;
|
||||
name: string;
|
||||
nodeType: string;
|
||||
isFolder: boolean;
|
||||
isFile: boolean;
|
||||
modifiedAt: string;
|
||||
modifiedByUser: UserInfo;
|
||||
createdAt: string;
|
||||
createdByUser: UserInfo;
|
||||
content: ContentInfo;
|
||||
path: PathInfoEntity
|
||||
}
|
||||
|
||||
export class UserInfo {
|
||||
displayName: string;
|
||||
id: string;
|
||||
}
|
||||
|
||||
export class ContentInfo {
|
||||
mimeType: string;
|
||||
mimeTypeName: string;
|
||||
sizeInBytes: number;
|
||||
encoding: string;
|
||||
}
|
||||
|
||||
export class PathInfoEntity {
|
||||
elements: PathElementEntity;
|
||||
isComplete: boolean;
|
||||
name: string
|
||||
}
|
||||
|
||||
export class PathElementEntity {
|
||||
id: string;
|
||||
name: string;
|
||||
}
|
||||
|
||||
+5
-5
@@ -1,6 +1,6 @@
|
||||
import { Http } from 'angular2/http';
|
||||
import { Observable } from 'rxjs/Observable';
|
||||
import { FolderEntity, DocumentEntity } from './../models/document-library.model';
|
||||
import { NodePaging, MinimalNodeEntity } from './../models/document-library.model';
|
||||
import { AlfrescoSettingsService } from '../../../ng2-alfresco-core/services';
|
||||
/**
|
||||
* Internal service used by Document List component.
|
||||
@@ -16,20 +16,20 @@ export declare class AlfrescoService {
|
||||
/**
|
||||
* Gets the folder node with the content.
|
||||
* @param folder Path to folder.
|
||||
* @returns {Observable<FolderEntity>} Folder entity.
|
||||
* @returns {Observable<NodePaging>} Folder entity.
|
||||
*/
|
||||
getFolder(folder: string): Observable<FolderEntity>;
|
||||
getFolder(folder: string): Observable<NodePaging>;
|
||||
/**
|
||||
* Get thumbnail URL for the given document node.
|
||||
* @param document Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getDocumentThumbnailUrl(document: DocumentEntity): string;
|
||||
getDocumentThumbnailUrl(document: MinimalNodeEntity): string;
|
||||
/**
|
||||
* Get content URL for the given node.
|
||||
* @param document Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getContentUrl(document: DocumentEntity): string;
|
||||
getContentUrl(document: MinimalNodeEntity): string;
|
||||
private handleError(error);
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ System.register(['angular2/core', 'angular2/http', 'rxjs/Observable', '../../../
|
||||
this.http = http;
|
||||
this.settings = settings;
|
||||
this._host = 'http://127.0.0.1:8080';
|
||||
this._baseUrlPath = '/alfresco/service/slingshot/doclib/doclist/all/site/';
|
||||
this._baseUrlPath = '/alfresco/api/-default-/public/alfresco/versions/1';
|
||||
if (settings) {
|
||||
this._host = settings.host;
|
||||
}
|
||||
@@ -69,21 +69,49 @@ System.register(['angular2/core', 'angular2/http', 'rxjs/Observable', '../../../
|
||||
AlfrescoService.prototype.getBaseUrl = function () {
|
||||
return this.host + this._baseUrlPath;
|
||||
};
|
||||
AlfrescoService.prototype.getAlfrescoTicket = function () {
|
||||
return localStorage.getItem('token');
|
||||
};
|
||||
AlfrescoService.prototype.getAlfrescoClient = function () {
|
||||
var defaultClient = new AlfrescoApi.ApiClient();
|
||||
defaultClient.basePath = this.getBaseUrl();
|
||||
// Configure HTTP basic authorization: basicAuth
|
||||
var basicAuth = defaultClient.authentications['basicAuth'];
|
||||
basicAuth.username = 'ROLE_TICKET';
|
||||
basicAuth.password = this.getAlfrescoTicket();
|
||||
return defaultClient;
|
||||
};
|
||||
AlfrescoService.prototype.getNodesPromise = function (folder) {
|
||||
var alfrescoClient = this.getAlfrescoClient();
|
||||
return new Promise(function (resolve, reject) {
|
||||
var apiInstance = new AlfrescoApi.NodesApi(alfrescoClient);
|
||||
var nodeId = '-root-';
|
||||
var opts = {
|
||||
relativePath: folder,
|
||||
include: ['path']
|
||||
};
|
||||
var callback = function (error, data /*, response*/) {
|
||||
if (error) {
|
||||
console.error(error);
|
||||
reject(error);
|
||||
}
|
||||
else {
|
||||
console.log('API returned data', data);
|
||||
resolve(data);
|
||||
}
|
||||
};
|
||||
apiInstance.getNodeChildren(nodeId, opts, callback);
|
||||
});
|
||||
};
|
||||
/**
|
||||
* Gets the folder node with the content.
|
||||
* @param folder Path to folder.
|
||||
* @returns {Observable<FolderEntity>} Folder entity.
|
||||
* @returns {Observable<NodePaging>} Folder entity.
|
||||
*/
|
||||
AlfrescoService.prototype.getFolder = function (folder) {
|
||||
var headers = new http_1.Headers({
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': this.settings.getAuthToken()
|
||||
});
|
||||
var options = new http_1.RequestOptions({ headers: headers });
|
||||
return this.http
|
||||
.get(this.getBaseUrl() + folder, options)
|
||||
.map(function (res) { return res.json(); })
|
||||
.do(function (data) { return console.log(data); }) // eyeball results in the console
|
||||
return Observable_1.Observable.fromPromise(this.getNodesPromise(folder))
|
||||
.map(function (res) { return res; })
|
||||
.do(function (data) { return console.log('Node data', data); }) // eyeball results in the console
|
||||
.catch(this.handleError);
|
||||
};
|
||||
/**
|
||||
@@ -92,9 +120,7 @@ System.register(['angular2/core', 'angular2/http', 'rxjs/Observable', '../../../
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
AlfrescoService.prototype.getDocumentThumbnailUrl = function (document) {
|
||||
return this._host +
|
||||
'/alfresco/service/api/node/' +
|
||||
document.nodeRef.replace('://', '/') + '/content/thumbnails/doclib?c=queue&ph=true&lastModified=1';
|
||||
return this.getContentUrl(document) + '/thumbnails/doclib?c=queue&ph=true&lastModified=1';
|
||||
};
|
||||
/**
|
||||
* Get content URL for the given node.
|
||||
@@ -102,13 +128,15 @@ System.register(['angular2/core', 'angular2/http', 'rxjs/Observable', '../../../
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
AlfrescoService.prototype.getContentUrl = function (document) {
|
||||
return this._host + '/alfresco/service/' + document.contentUrl;
|
||||
return this._host +
|
||||
'/alfresco/service/api/node/workspace/SpacesStore/' +
|
||||
document.entry.id + '/content';
|
||||
};
|
||||
AlfrescoService.prototype.handleError = function (error) {
|
||||
// in a real world app, we may send the error to some remote logging infrastructure
|
||||
// instead of just logging it to the console
|
||||
console.error(error);
|
||||
return Observable_1.Observable.throw(error.json().error || 'Server error');
|
||||
return Observable_1.Observable.throw(error || 'Server error');
|
||||
};
|
||||
AlfrescoService = __decorate([
|
||||
core_1.Injectable(),
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"alfresco.service.js","sourceRoot":"","sources":["alfresco.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAQH;;eAEG;YAEH;gBAEI,yBACY,IAAU,EACV,QAAiC;oBADjC,SAAI,GAAJ,IAAI,CAAM;oBACV,aAAQ,GAAR,QAAQ,CAAyB;oBAOrC,UAAK,GAAW,uBAAuB,CAAC;oBACxC,iBAAY,GAAW,sDAAsD,CAAC;oBANlF,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;wBACX,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;oBAC/B,CAAC;gBACL,CAAC;gBAKD,sBAAW,iCAAI;yBAAf;wBACI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACtB,CAAC;yBAED,UAAgB,KAAY;wBACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACvB,CAAC;;;mBAJA;gBAMO,oCAAU,GAAlB;oBACI,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;gBACzC,CAAC;gBAED;;;;mBAIG;gBACH,mCAAS,GAAT,UAAU,MAAc;oBACpB,IAAI,OAAO,GAAG,IAAI,cAAO,CAAC;wBACtB,cAAc,EAAE,kBAAkB;wBAClC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;qBAChD,CAAC,CAAC;oBACH,IAAI,OAAO,GAAG,IAAI,qBAAc,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;oBACvD,MAAM,CAAC,IAAI,CAAC,IAAI;yBACX,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,EAAE,OAAO,CAAC;yBACxC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAe,GAAG,CAAC,IAAI,EAAE,EAAzB,CAAyB,CAAC;yBACrC,EAAE,CAAC,UAAA,IAAI,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC,CAAC,iCAAiC;yBAC/D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACjC,CAAC;gBAED;;;;mBAIG;gBACH,iDAAuB,GAAvB,UAAwB,QAAwB;oBAC5C,MAAM,CAAC,IAAI,CAAC,KAAK;wBACb,6BAA6B;wBAC7B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,mEAAmE,CAAC;gBACnH,CAAC;gBAED;;;;mBAIG;gBACH,uCAAa,GAAb,UAAc,QAAwB;oBAClC,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,oBAAoB,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACnE,CAAC;gBAEO,qCAAW,GAAnB,UAAqB,KAAe;oBAChC,mFAAmF;oBACnF,4CAA4C;oBAC5C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,MAAM,CAAC,uBAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,cAAc,CAAC,CAAC;gBAClE,CAAC;gBAtEL;oBAAC,iBAAU,EAAE;;mCAAA;gBAuEb,sBAAC;YAAD,CAAC,AAtED,IAsEC;YAtED,6CAsEC,CAAA"}
|
||||
{"version":3,"file":"alfresco.service.js","sourceRoot":"","sources":["alfresco.service.ts"],"names":[],"mappings":"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"}
|
||||
@@ -18,9 +18,11 @@
|
||||
import {Injectable} from 'angular2/core';
|
||||
import {Http, Response, RequestOptions, Headers} from 'angular2/http';
|
||||
import {Observable} from 'rxjs/Observable';
|
||||
import {FolderEntity, DocumentEntity} from './../models/document-library.model';
|
||||
import {NodePaging, MinimalNodeEntity} from './../models/document-library.model';
|
||||
import {AlfrescoSettingsService} from '../../../ng2-alfresco-core/services';
|
||||
|
||||
declare var AlfrescoApi: any;
|
||||
|
||||
/**
|
||||
* Internal service used by Document List component.
|
||||
*/
|
||||
@@ -37,7 +39,7 @@ export class AlfrescoService {
|
||||
}
|
||||
|
||||
private _host: string = 'http://127.0.0.1:8080';
|
||||
private _baseUrlPath: string = '/alfresco/service/slingshot/doclib/doclist/all/site/';
|
||||
private _baseUrlPath: string = '/alfresco/api/-default-/public/alfresco/versions/1';
|
||||
|
||||
public get host():string {
|
||||
return this._host;
|
||||
@@ -51,21 +53,54 @@ export class AlfrescoService {
|
||||
return this.host + this._baseUrlPath;
|
||||
}
|
||||
|
||||
private getAlfrescoTicket() {
|
||||
return localStorage.getItem('token');
|
||||
}
|
||||
|
||||
private getAlfrescoClient() {
|
||||
var defaultClient = new AlfrescoApi.ApiClient();
|
||||
defaultClient.basePath = this.getBaseUrl();
|
||||
|
||||
// Configure HTTP basic authorization: basicAuth
|
||||
var basicAuth = defaultClient.authentications['basicAuth'];
|
||||
basicAuth.username = 'ROLE_TICKET';
|
||||
basicAuth.password = this.getAlfrescoTicket();
|
||||
|
||||
return defaultClient;
|
||||
}
|
||||
|
||||
private getNodesPromise(folder: string) {
|
||||
|
||||
var alfrescoClient = this.getAlfrescoClient();
|
||||
return new Promise(function(resolve, reject) {
|
||||
var apiInstance = new AlfrescoApi.NodesApi(alfrescoClient);
|
||||
var nodeId = '-root-';
|
||||
var opts = {
|
||||
relativePath: folder,
|
||||
include: ['path']
|
||||
};
|
||||
var callback = function(error, data /*, response*/) {
|
||||
if (error) {
|
||||
console.error(error);
|
||||
reject(error);
|
||||
} else {
|
||||
console.log('API returned data', data);
|
||||
resolve(data);
|
||||
}
|
||||
};
|
||||
apiInstance.getNodeChildren(nodeId, opts, callback);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the folder node with the content.
|
||||
* @param folder Path to folder.
|
||||
* @returns {Observable<FolderEntity>} Folder entity.
|
||||
* @returns {Observable<NodePaging>} Folder entity.
|
||||
*/
|
||||
getFolder(folder: string) {
|
||||
let headers = new Headers({
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': this.settings.getAuthToken()
|
||||
});
|
||||
let options = new RequestOptions({ headers: headers });
|
||||
return this.http
|
||||
.get(this.getBaseUrl() + folder, options)
|
||||
.map(res => <FolderEntity> res.json())
|
||||
.do(data => console.log(data)) // eyeball results in the console
|
||||
return Observable.fromPromise(this.getNodesPromise(folder))
|
||||
.map(res => <NodePaging> res)
|
||||
.do(data => console.log('Node data', data)) // eyeball results in the console
|
||||
.catch(this.handleError);
|
||||
}
|
||||
|
||||
@@ -74,10 +109,8 @@ export class AlfrescoService {
|
||||
* @param document Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getDocumentThumbnailUrl(document: DocumentEntity): string {
|
||||
return this._host +
|
||||
'/alfresco/service/api/node/' +
|
||||
document.nodeRef.replace('://', '/') + '/content/thumbnails/doclib?c=queue&ph=true&lastModified=1';
|
||||
getDocumentThumbnailUrl(document: MinimalNodeEntity) {
|
||||
return this.getContentUrl(document) + '/thumbnails/doclib?c=queue&ph=true&lastModified=1';
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -85,14 +118,16 @@ export class AlfrescoService {
|
||||
* @param document Node to get URL for.
|
||||
* @returns {string} URL address.
|
||||
*/
|
||||
getContentUrl(document: DocumentEntity): string {
|
||||
return this._host + '/alfresco/service/' + document.contentUrl;
|
||||
getContentUrl(document: MinimalNodeEntity) {
|
||||
return this._host +
|
||||
'/alfresco/service/api/node/workspace/SpacesStore/' +
|
||||
document.entry.id + '/content';
|
||||
}
|
||||
|
||||
private handleError (error: Response) {
|
||||
// in a real world app, we may send the error to some remote logging infrastructure
|
||||
// instead of just logging it to the console
|
||||
console.error(error);
|
||||
return Observable.throw(error.json().error || 'Server error');
|
||||
return Observable.throw(error || 'Server error');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ System.register(['angular2/core', '../services/upload.service', './file-uploadin
|
||||
this.el = el;
|
||||
this.showUploadDialog = true;
|
||||
this.showUdoNotificationBar = true;
|
||||
this.uploadFolders = true;
|
||||
this.uploadFolders = false;
|
||||
this.multipleFiles = false;
|
||||
this.acceptedFilesType = '*';
|
||||
this.filesUploadingList = [];
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"upload-button.component.js","sourceRoot":"","sources":["upload-button.component.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"upload-button.component.js","sourceRoot":"","sources":["upload-button.component.ts"],"names":[],"mappings":"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"}
|
||||
Reference in New Issue
Block a user