summaryrefslogtreecommitdiffstats
path: root/webapp/src/app/pages/build/settings/project-select-dropdown.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/src/app/pages/build/settings/project-select-dropdown.component.ts')
-rw-r--r--webapp/src/app/pages/build/settings/project-select-dropdown.component.ts25
1 files changed, 10 insertions, 15 deletions
diff --git a/webapp/src/app/pages/build/settings/project-select-dropdown.component.ts b/webapp/src/app/pages/build/settings/project-select-dropdown.component.ts
index da3580a..a83ec0a 100644
--- a/webapp/src/app/pages/build/settings/project-select-dropdown.component.ts
+++ b/webapp/src/app/pages/build/settings/project-select-dropdown.component.ts
@@ -1,4 +1,5 @@
import { Component, OnInit, Input } from '@angular/core';
+import { Observable } from 'rxjs/Observable';
import { IProject, ProjectService } from '../../../@core-xds/services/project.service';
@@ -7,33 +8,27 @@ import { IProject, ProjectService } from '../../../@core-xds/services/project.se
template: `
<div class="form-group">
<label>Project</label>
- <select class="form-control">
- <option *ngFor="let prj of projects" (click)="select(prj)">{{prj.label}}</option>
+ <select class="form-control" [(ngModel)]="curPrj" (click)="select()">
+ <option *ngFor="let prj of projects$ | async" [ngValue]="prj">{{ prj.label }}</option>
</select>
</div>
`,
})
export class ProjectSelectDropdownComponent implements OnInit {
- projects: IProject[];
+ projects$: Observable<IProject[]>;
curPrj: IProject;
- constructor(private prjSvr: ProjectService) { }
+ constructor(private projectSvr: ProjectService) { }
ngOnInit() {
- this.curPrj = this.prjSvr.getCurrent();
- this.prjSvr.Projects$.subscribe((s) => {
- if (s) {
- this.projects = s;
- if (this.curPrj === null || s.indexOf(this.curPrj) === -1) {
- this.prjSvr.setCurrent(this.curPrj = s.length ? s[0] : null);
- }
- }
- });
+ this.curPrj = this.projectSvr.getCurrent();
+ this.projects$ = this.projectSvr.projects$;
+ this.projectSvr.curProject$.subscribe(p => this.curPrj = p);
}
- select(s) {
- this.prjSvr.setCurrent(this.curPrj = s);
+ select() {
+ this.projectSvr.setCurrentById(this.curPrj.id);
}
}