annotate app/query-select.component.ts @ 1:59b7c3afcc6b

first interface and http request.
author Robert Casties <casties@mpiwg-berlin.mpg.de>
date Mon, 11 Jan 2016 19:25:53 +0100
parents 39ec75917ef7
children c741a00d38de
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
1 import {Component, OnInit} from 'angular2/core';
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
2 import {HTTP_PROVIDERS} from 'angular2/http';
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
3
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
4 import {QueryService} from './query.service';
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
5 import {QueryMode} from './query-mode';
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
6
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
7
39ec75917ef7 first checkin
casties
parents:
diff changeset
8 @Component({
39ec75917ef7 first checkin
casties
parents:
diff changeset
9 selector: 'query-select',
39ec75917ef7 first checkin
casties
parents:
diff changeset
10 template: `
39ec75917ef7 first checkin
casties
parents:
diff changeset
11 <p>Selected option: {{selectedQuery}}</p>
39ec75917ef7 first checkin
casties
parents:
diff changeset
12 <select (change)="onSelectType($event)">
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
13 <option *ngFor="#mode of queryModes" [value]="mode.id">
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
14 {{mode.label}}
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
15 </option>
39ec75917ef7 first checkin
casties
parents:
diff changeset
16 </select>
39ec75917ef7 first checkin
casties
parents:
diff changeset
17 <select [(ngModel)]="selectedQuery">
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
18 <option *ngFor="#option of query2Options" [value]="option">
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
19 {{option}}
39ec75917ef7 first checkin
casties
parents:
diff changeset
20 </option>
39ec75917ef7 first checkin
casties
parents:
diff changeset
21 </select>
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
22 `,
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
23 providers: [QueryService, HTTP_PROVIDERS]
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
24 })
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
25
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
26 export class QuerySelectComponent implements OnInit {
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
27 public queryModes;
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
28 public selectedQuery = 'unknown';
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
29 public query2Options;
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
30
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
31 constructor(private _queryService: QueryService) {}
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
32
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
33 ngOnInit() {
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
34 this.setupQueryModes();
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
35 }
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
36
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
37 setupQueryModes() {
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
38 this.queryModes = this._queryService.getQueryModes();
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
39 this._queryService.getIsmiObjectTypes();
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
40 }
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
41
39ec75917ef7 first checkin
casties
parents:
diff changeset
42 onSelectType(event: any) {
1
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
43 var selected = event.target.value;
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
44 this._queryService.getQueryOptions(selected).then(
59b7c3afcc6b first interface and http request.
Robert Casties <casties@mpiwg-berlin.mpg.de>
parents: 0
diff changeset
45 options => this.query2Options = options);
0
39ec75917ef7 first checkin
casties
parents:
diff changeset
46 }
39ec75917ef7 first checkin
casties
parents:
diff changeset
47 }