summaryrefslogtreecommitdiffstats
path: root/catalog-ui
diff options
context:
space:
mode:
authorIdan Amit <ia096e@intl.att.com>2018-01-28 14:01:47 +0200
committerMichael Lando <ml636r@att.com>2018-01-29 06:54:57 +0000
commit927fb189d16f96e031b5b92dc963ace22a1d6577 (patch)
treeeb88284e7b7675b4ba8c26e1d15d534376e82dd2 /catalog-ui
parentb03fa6198696e16b9b82ea07472752fb1c28f94c (diff)
Add query params options to iframe
Added query params support to the designers iframe Change-Id: I742b4717f5418deb6b7cc6bea143eb7521eed1c0 Issue-ID: SDC-959 Signed-off-by: Idan Amit <ia096e@intl.att.com>
Diffstat (limited to 'catalog-ui')
-rw-r--r--catalog-ui/src/app/app.ts2
-rw-r--r--catalog-ui/src/app/ng2/components/ui/designer/designer-frame.component.ts13
-rw-r--r--catalog-ui/src/app/view-models/designers/designers-view-model.ts12
-rw-r--r--catalog-ui/src/app/view-models/designers/designers-view.html4
-rw-r--r--catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view-model.ts21
-rw-r--r--catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view.html2
6 files changed, 43 insertions, 11 deletions
diff --git a/catalog-ui/src/app/app.ts b/catalog-ui/src/app/app.ts
index f3bfbb9c52..8de2db97ff 100644
--- a/catalog-ui/src/app/app.ts
+++ b/catalog-ui/src/app/app.ts
@@ -153,7 +153,7 @@ angular.module('sdcApp').directive('ng2SearchWithAutocomplete',
inputs: ['searchPlaceholder', 'searchBarClass', 'autoCompleteValues'],
outputs: ['searchChanged', 'searchButtonClicked']
}) as angular.IDirectiveFactory);
-angular.module('sdcApp').directive('designerFrame', downgradeComponent( {component: DesignerFrameComponent, inputs: ['designer']} ) as angular.IDirectiveFactory);
+angular.module('sdcApp').directive('designerFrame', downgradeComponent( {component: DesignerFrameComponent, inputs: ['designer', 'queryParams']} ) as angular.IDirectiveFactory);
ng1appModule.config([
'$stateProvider',
diff --git a/catalog-ui/src/app/ng2/components/ui/designer/designer-frame.component.ts b/catalog-ui/src/app/ng2/components/ui/designer/designer-frame.component.ts
index b66008f022..b52696a287 100644
--- a/catalog-ui/src/app/ng2/components/ui/designer/designer-frame.component.ts
+++ b/catalog-ui/src/app/ng2/components/ui/designer/designer-frame.component.ts
@@ -1,4 +1,5 @@
import {Component, OnInit, Input} from "@angular/core";
+import { URLSearchParams } from '@angular/http';
import {Designer} from "app/models";
@Component({
@@ -10,9 +11,12 @@ import {Designer} from "app/models";
export class DesignerFrameComponent implements OnInit {
@Input() designer: Designer;
+ @Input() queryParams: Object;
designerUrl: string;
+ private urlSearchParams: URLSearchParams;
constructor() {
+ this.urlSearchParams = new URLSearchParams();
}
ngOnInit(): void {
@@ -21,5 +25,14 @@ export class DesignerFrameComponent implements OnInit {
this.designer.designerHost + ":" +
this.designer.designerPort +
this.designer.designerPath;
+
+ if (this.queryParams && !_.isEmpty(this.queryParams)) {
+ _.forOwn(this.queryParams, (value, key) => {
+ this.urlSearchParams.set(key, value);
+ });
+
+ this.designerUrl += '?';
+ this.designerUrl += this.urlSearchParams.toString();
+ }
}
}
diff --git a/catalog-ui/src/app/view-models/designers/designers-view-model.ts b/catalog-ui/src/app/view-models/designers/designers-view-model.ts
index 380e093cb2..b2545c8ba2 100644
--- a/catalog-ui/src/app/view-models/designers/designers-view-model.ts
+++ b/catalog-ui/src/app/view-models/designers/designers-view-model.ts
@@ -1,14 +1,13 @@
import {Designer, IUserProperties} from "app/models";
import {CacheService} from "app/services";
-import {MenuItemGroup} from "app/utils";
import {DesignersService} from "../../ng2/services/designers.service";
interface IDesignerViewModelScope extends ng.IScope {
designer: Designer
- topNavMenuModel:Array<MenuItemGroup>;
- user:IUserProperties;
- version:string;
+ user: IUserProperties;
+ version: string;
+ queryParams: Object;
}
export class DesignersViewModel {
@@ -31,8 +30,11 @@ export class DesignersViewModel {
this.$scope.designer = this.designersService.getDesignerByStateUrl(this.$stateParams.path);
this.$scope.version = this.cacheService.get('version');
- this.$scope.topNavMenuModel = [];
this.$scope.user = this.cacheService.get('user');
+
+ this.$scope.queryParams = {
+ userId: this.$scope.user.userId
+ };
}
}
diff --git a/catalog-ui/src/app/view-models/designers/designers-view.html b/catalog-ui/src/app/view-models/designers/designers-view.html
index 3ae980589d..9dcad66019 100644
--- a/catalog-ui/src/app/view-models/designers/designers-view.html
+++ b/catalog-ui/src/app/view-models/designers/designers-view.html
@@ -1,7 +1,7 @@
<div class="sdc-catalog-container">
- <top-nav [menuModel]="topNavMenuModel" [version]="version" [hideSearch]="true"></top-nav>
+ <top-nav [version]="version" [hide-search]="true"></top-nav>
- <designer-frame [designer]="designer"></designer-frame>
+ <designer-frame [designer]="designer" [query-params]="queryParams"></designer-frame>
</div>
diff --git a/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view-model.ts b/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view-model.ts
index 2f4e1dafac..e145188c00 100644
--- a/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view-model.ts
+++ b/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view-model.ts
@@ -1,20 +1,26 @@
-import {Designer} from "app/models";
+import {Designer, IUserProperties} from "app/models";
+import {CacheService} from "app/services";
import {DesignersService} from "../../../../ng2/services/designers.service";
+import {IWorkspaceViewModelScope} from "../../workspace-view-model";
-interface IDesignerTabViewModelScope extends ng.IScope {
+interface IDesignerTabViewModelScope extends IWorkspaceViewModelScope {
designer: Designer;
+ user:IUserProperties;
+ queryParams: Object;
}
export class DesignersTabViewModel {
static '$inject' = [
'$scope',
'$stateParams',
+ 'Sdc.Services.CacheService',
'DesignersService'
];
constructor(private $scope:IDesignerTabViewModelScope,
private $stateParams:any,
+ private cacheService:CacheService,
private designersService:DesignersService) {
this.initScope();
@@ -22,5 +28,16 @@ export class DesignersTabViewModel {
private initScope = ():void => {
this.$scope.designer = this.designersService.getDesignerByStateUrl(this.$stateParams.path);
+
+ this.$scope.user = this.cacheService.get('user');
+
+ this.$scope.queryParams = {
+ userId: this.$scope.user.userId,
+ contextType: this.$scope.component.componentType,
+ uuid: this.$scope.component.uuid,
+ lifecycleState: this.$scope.component.lifecycleState,
+ isOwner: this.$scope.component.lastUpdaterUserId === this.$scope.user.userId
+ };
+
}
}
diff --git a/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view.html b/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view.html
index 7abb81a694..9af6ae7e30 100644
--- a/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view.html
+++ b/catalog-ui/src/app/view-models/workspace/tabs/designers/designers-tab-view.html
@@ -1,5 +1,5 @@
<div class="workspace-designers">
- <designer-frame [designer]="designer"></designer-frame>
+ <designer-frame [designer]="designer" [query-params]="queryParams"></designer-frame>
</div>