OLD | NEW |
| (Empty) |
1 <div class="container-fluid ng-cloak" ng-cloak> | |
2 | |
3 <div class="row" ng-show="state === c.ST_LOADING"> | |
4 <h4>Loading ...</h4> | |
5 </div> | |
6 | |
7 <div class="row" ng-show="state === c.ST_STILL_LOADING"> | |
8 <h4>Still loading from backend.</h4> | |
9 <div> | |
10 Load time so far: {{ loadTime | number:0 }} s. | |
11 </div> | |
12 </div> | |
13 | |
14 <div class="row" ng-show="state === c.ST_READY"> | |
15 <tabset> | |
16 <tab heading="Unfiled"> | |
17 <!-- settings --> | |
18 <div class="container controlBox"> | |
19 <form class="form-inline settingsForm" novalidate > | |
20 <legend class="simpleLegend">Settings</legend> | |
21 <div class="checkbox formPadding"> | |
22 <label> | |
23 <input type="checkbox" | |
24 ng-model="settings.showThumbnails">Sh
ow thumbnails | |
25 </label> | |
26 </div> | |
27 | |
28 <div class="checkbox formPadding"> | |
29 <label> | |
30 <input type="checkbox" | |
31 ng-model="settings.mergeIdenticalRows" | |
32 ng-change="mergeRowsChanged(mergeIdentical
Rows)"> Merge identical rows | |
33 </label> | |
34 </div> | |
35 | |
36 <div class="form-group formPadding"> | |
37 <label for="imageWidth">Image Width</label> | |
38 <select ng-model="settings.imageSize" | |
39 ng-options="iSize for iSize in c.IM
AGE_SIZES" | |
40 class="form-control input-sm"> | |
41 | |
42 </select> | |
43 </div> | |
44 <div class="form-group formPadding"> | |
45 <label>Max records</label> | |
46 <select ng-model="settings.nRecords" | |
47 ng-options="n for n in c.MAX_RECORD
S" | |
48 ng-change="maxRecordsChanged();" | |
49 class="form-control input-sm"> | |
50 </select> | |
51 </div> | |
52 </form> | |
53 <br> | |
54 | |
55 <form class="form settingsForm" novalidate> | |
56 <legend class="simpleLegend">Filters</legend> | |
57 <div class="container-fluid"> | |
58 <div class="col-lg-2 filterBox" ng-repeat="oneCol in
filterCols"> | |
59 <div class="filterKey">{{ oneCol.key }}</div> | |
60 | |
61 <!-- If we filter this column using free-form
text match... --> | |
62 <div ng-if="oneCol.ftype === c.FILTER_FREE_FOR
M"> | |
63 <input type="text" | |
64 ng-model="filterVals[$index]" | |
65 typeahead="opt.value for opt in oneCo
l.foptions | filter:$viewValue" | |
66 class="form-control input-sm"> | |
67 <br> | |
68 <a ng-click="filterVals[$index]=''" | |
69 ng-disabled="'' === filterVals[$index]" | |
70 href=""> | |
71 Clear | |
72 </a> | |
73 </div> | |
74 | |
75 <!-- If we filter this column using checkboxes
... --> | |
76 <div ng-if="oneCol.ftype === c.FILTER_CHECK_BO
X"> | |
77 | |
78 <div class="checkbox" ng-repeat="oneOpt in
oneCol.foptions"> | |
79 <label> | |
80 <input type="checkbox" | |
81 ng-model="filterVals[$parent.$i
ndex][$index]">{{oneOpt.value}} ({{ oneOpt.count }}) | |
82 </label> | |
83 </div> | |
84 <div> | |
85 <a ng-click="setFilterAll($index, true)"
href="">All</a> - | |
86 <a ng-click="setFilterAll($index, False)
" href="">None</a> - | |
87 <a ng-click="setFilterToggle($index)" hr
ef="">Toggle</a> | |
88 </div> | |
89 </div> | |
90 </div> | |
91 <br> | |
92 </div> | |
93 | |
94 <div class="container updateBtn"> | |
95 <button class="btn btn-success col-lg-4 pull-left" | |
96 ng-click="filtersChanged()" | |
97 ng-disabled="updating"> | |
98 {{ updating && 'Updating ...' || 'Update
' }} | |
99 </button> | |
100 </div> | |
101 | |
102 </form> | |
103 | |
104 <br> | |
105 | |
106 <!-- Rows --> | |
107 | |
108 <!-- results header --> | |
109 <div class="col-lg-12 resultsHeaderActions well"> | |
110 <div class="col-lg-6"> | |
111 <h4>Showing {{showingRecords}} of {{selectedRecord
s}} (of {{totalRecords}} total)</h4> | |
112 <span ng-show="renderTime > 0"> | |
113 Rendered in {{renderTime | number:0 }} ms (filte
red and sorted in {{ filterTime | number:0 }} ms). | |
114 </span> | |
115 <br> | |
116 (click on the column header radio buttons to re-so
rt by that column) | |
117 </div> | |
118 | |
119 | |
120 <div class="col-lg-6"> | |
121 All tests shown: | |
122 <button class="btn btn-default btn-sm" ng-click=
"selectAllImagePairs()">Select</button> | |
123 <button class="btn btn-default btn-sm" ng-click=
"clearAllImagePairs()">Clear</button> | |
124 <button class="btn btn-default btn-sm" ng-click=
"toggleAllImagePairs()">Toggle</button> | |
125 | |
126 <div ng-repeat="otherTab in tabs"> | |
127 <button class="btn btn-default btn-sm" | |
128 ng-click="moveSelectedImagePairsToTa
b(otherTab)" | |
129 ng-disabled="selectedImagePairs.leng
th == 0" | |
130 ng-show="otherTab != viewingTab"> | |
131 Move {{selectedImagePairs.length}} s
elected tests to {{otherTab}} tab | |
132 </button> | |
133 </div> | |
134 </div> | |
135 <br> | |
136 </div> | |
137 | |
138 <!-- results --> | |
139 <table class="table table-bordered"> | |
140 <thead> | |
141 <tr> | |
142 <!-- Most column headers are displayed in a comm
on fashion... --> | |
143 <th ng-repeat="oneCol in allCols" ng-style="{ 'm
in-width': getImageWidthStyle(oneCol, 20, 'auto') }"> | |
144 <a ng-class="getSortedClass('sort', $index,
'')" | |
145 ng-click="sortBy($index)" | |
146 href="" | |
147 class="sortableHeader"> | |
148 {{ oneCol.ctitle }} | |
149 </a> | |
150 </th> | |
151 <th> | |
152 <div class="checkbox"> | |
153 <label> | |
154 <input type="checkbox" ng-model="
allChecked" ng-change="checkAll()">All | |
155 </label> | |
156 </div> | |
157 </th> | |
158 </tr> | |
159 </thead> | |
160 <tbody> | |
161 <tr ng-repeat="oneRow in data"> | |
162 <td ng-repeat="oneColVal in oneRow.dataCols"> | |
163 {{oneColVal}} | |
164 </td> | |
165 | |
166 <td ng-repeat="oneCol in oneRow.imageCols" ng-if
="oneRow.rowspan > 0" rowspan="{{ oneRow.rowspan }}"> | |
167 <div ng-show="oneCol.url"> | |
168 <a href="{{ oneCol.url }}" target="_blan
k">View Image</a><br/> | |
169 <img ng-if="settings.showThumbnails" | |
170 ng-style="{ width: settings.imageSi
ze+'px' }" | |
171 ng-src="{{ oneCol.url }}" /> | |
172 <div ng-if="oneCol.percent && oneCol.val
ue"> | |
173 {{oneCol.percent}}% ({{ oneCol.value
}}) | |
174 </div> | |
175 </div> | |
176 <div ng-hide="oneCol.url" style="text-align:
center"> | |
177 <span ng-show="oneCol.url === null">&nda
sh;none–</span> | |
178 <span ng-hide="oneCol.url === null">&nbs
p;</span> | |
179 </div> | |
180 </td> | |
181 | |
182 <td ng-if="oneRow.rowspan > 0" rowspan="{{ oneRo
w.rowspan }}"> | |
183 <div class="checkbox"> | |
184 <input type="checkbox" | |
185 ng-model="checkRows[$index]" | |
186 ng-change="rowCheckChanged($index
)"> | |
187 </div> | |
188 </td> | |
189 </tr> | |
190 </tbody> | |
191 </table> | |
192 | |
193 </div> | |
194 </tab> | |
195 | |
196 <tab heading="Hidden"> | |
197 <h3>Hidden</h3> | |
198 </tab> | |
199 | |
200 <tab heading="Pending Approval"> | |
201 <h3>Pending Approval</h3> | |
202 </tab> | |
203 | |
204 </tabset> | |
205 | |
206 </div> | |
207 </div> | |
OLD | NEW |