Fix Agent download link when no tarball detected.
[src/xds/xds-server.git] / webapp / src / app / config / config.component.html
1 <div class="panel panel-default">
2     <div class="panel-heading clearfix">
3         <h2 class="panel-title pull-left">Global Configuration</h2>
4         <div class="pull-right">
5             <span class="fa fa-fw fa-exchange fa-size-x2" [style.color]="((serverStatus$ | async)?.WS_connected)?'green':'red'"></span>
6         </div>
7     </div>
8     <div class="panel-body">
9         <div class="row">
10             <div class="col-xs-12">
11                 <table class="table table-condensed">
12                     <tbody>
13                         <!-- FIXME [XDS-Agent]
14                         <tr [ngClass]="{'info': (agentStatus$ | async)?.connected, 'danger': !(agentStatus$ | async)?.connected}">
15                         -->
16                         <tr [ngClass]="{'info': (localSTStatus$ | async)?.connected, 'danger': !(localSTStatus$ | async)?.connected}">
17                             <th><label>XDS local Agent URL</label></th>
18                             <td> <input type="text" [(ngModel)]="xdsAgentUrl"></td>
19                             <td>
20                                 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
21                                 <!-- FIXME [XDS-Agent]
22                                 <button  *ngIf="!(agentStatus$ | async)?.connected"  -->
23                                 <button  *ngIf="!(localSTStatus$ | async)?.connected" [disabled]="xdsAgentZipUrl==''" class="btn btn-link">
24                                     <a *ngIf="xdsAgentZipUrl!=''" class="fa fa-download fa-size-x2" [href]="xdsAgentZipUrl" target="_blank"></a>
25                                     <a *ngIf="xdsAgentZipUrl==''" class="fa fa-download fa-size-x2" href="javascript:void(0);" target="_blank"></a>
26                                 </button>
27                             </td>
28                         </tr>
29                         <tr class="info">
30                             <th><label>Local Agent connection retry</label></th>
31                             <td> <input type="text" [(ngModel)]="xdsAgentRetry" (ngModelChange)="showApplyBtn['retry'] = true"></td>
32                             <td>
33                                 <button *ngIf="showApplyBtn['retry']" class="btn btn-primary btn-xs" (click)="submitGlobConf('retry')">APPLY</button>
34                             </td>
35                         </tr>
36                         <tr [ngClass]="{'info': (localSTStatus$ | async)?.connected, 'danger': !(localSTStatus$ | async)?.connected}">
37                             <th><label>Local Sync-tool URL</label></th>
38                             <td> <input type="text" [(ngModel)]="syncToolUrl"></td>
39                             <td>
40                                 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
41                             </td>
42                         </tr>
43                         <tr class="info">
44                             <th><label>Local Projects root directory</label></th>
45                             <td> <input type="text" [(ngModel)]="projectsRootDir" (ngModelChange)="showApplyBtn['rootDir'] = true"></td>
46                             <td>
47                                 <button *ngIf="showApplyBtn['rootDir']" class="btn btn-primary btn-xs" (click)="submitGlobConf('rootDir')">APPLY</button>
48                             </td>
49                         </tr>
50                     </tbody>
51                 </table>
52             </div>
53         </div>
54     </div>
55 </div>
56
57 <div class="panel panel-default">
58     <div class="panel-heading">
59         <h2 class="panel-title">Cross SDKs Configuration</h2>
60     </div>
61     <div class="panel-body">
62         <div class="row col-xs-12">
63             <sdks-list-accordion [sdks]="(sdks$ | async)"></sdks-list-accordion>
64         </div>
65     </div>
66 </div>
67
68 <div class="panel panel-default">
69     <div class="panel-heading">
70         <h2 class="panel-title">Projects Configuration</h2>
71     </div>
72     <div class="panel-body">
73         <form [formGroup]="addProjectForm" (ngSubmit)="onSubmit()">
74             <div class="row ">
75                 <div class="col-xs-2">
76                     <button class="btn btn-primary" type="submit" [disabled]="!addProjectForm.valid"><i class="fa fa-plus"></i>&nbsp;New Folder</button>
77                 </div>
78
79                 <div class="col-xs-6">
80                     <label>Folder Path </label>
81                     <input type="text" style="width:70%;" formControlName="path" placeholder="myProject">
82                 </div>
83                 <div class="col-xs-4">
84                     <label>Label </label>
85                     <input type="text" formControlName="label" (keyup)="onKeyLabel($event)">
86                 </div>
87             </div>
88         </form>
89
90         <div class="row col-xs-12">
91             <projects-list-accordion [projects]="(config$ | async).projects"></projects-list-accordion>
92         </div>
93     </div>
94 </div>
95
96
97 <!-- only for debug -->
98 <div *ngIf="false" class="row">
99     {{config$ | async | json}}
100 </div>