Commit 59da3efe69bbcd73eda58c8d10966a50ed5777b7
Merge branch 'master' of http://service.routetopa.eu:7480/WebCompDev/COMPONENTS
Showing
1 changed file
with
655 additions
and
0 deletions
controllets/dataset-table-controllet/dataset-table-controllet.html
0 → 100644
1 | +<link rel="import" href="../../bower_components/polymer/polymer.html" /> | |
2 | + | |
3 | +<link rel="import" href="../../bower_components/paper-material/paper-material.html" /> | |
4 | +<link rel="import" href="../../bower_components/paper-input/paper-input.html"> | |
5 | +<link rel="import" href="../../bower_components/paper-icon-button/paper-icon-button.html"> | |
6 | +<link rel="import" href="../../bower_components/iron-icons/iron-icons.html"> | |
7 | +<link rel="import" href="../../bower_components/paper-tooltip/paper-tooltip.html"> | |
8 | +<link rel="import" href="../../bower_components/paper-checkbox/paper-checkbox.html"> | |
9 | +<link rel="import" href="../../bower_components/paper-dialog/paper-dialog.html"> | |
10 | +<link rel="import" href="../data-table-controllet/data-table-controllet.html"> | |
11 | + | |
12 | +<script type="text/javascript" src="../../bower_components/JSDataChecker/jsdatachecker.min.js"></script> | |
13 | + | |
14 | +<dom-module id="dataset-table-controllet"> | |
15 | + | |
16 | + <template> | |
17 | + | |
18 | + <style is="custom-style"> | |
19 | + | |
20 | + paper-checkbox { | |
21 | + height: 24px; | |
22 | + /*margin-top: 8px*/ | |
23 | + --paper-checkbox-checked-color: #2196F3; | |
24 | + --paper-checkbox-checked-ink-color: #FFFFFF; | |
25 | + --paper-checkbox-unchecked-color: #000000; | |
26 | + --paper-checkbox-unchecked-ink-color: #FFFFFF; | |
27 | + --paper-checkbox-label-color: #000000; | |
28 | + } | |
29 | + | |
30 | + paper-input { | |
31 | + max-width: 288px; | |
32 | + --paper-input-container-focus-color: #2196F3; | |
33 | + } | |
34 | + | |
35 | + paper-icon-button.preview-close | |
36 | + { | |
37 | + height: 28px; | |
38 | + width: 28px; | |
39 | + } | |
40 | + | |
41 | + paper-icon-button{ | |
42 | + height: 48px; | |
43 | + width: 48px; | |
44 | + padding: 0px; | |
45 | + --paper-icon-button-ink-color: #FFFFFF; | |
46 | + } | |
47 | + | |
48 | + paper-icon-button.tools | |
49 | + { | |
50 | + height: 24px; | |
51 | + width: 24px; | |
52 | + padding: 0px; | |
53 | + --paper-icon-button-ink-color: #2196F3; | |
54 | + } | |
55 | + | |
56 | + paper-icon-button:hover{ | |
57 | + color: #2196F3; | |
58 | + } | |
59 | + | |
60 | + paper-icon-button.clear { | |
61 | + width: 24px; | |
62 | + height: 24px; | |
63 | + padding: 0px 4px; | |
64 | + color: #F44336; | |
65 | + --paper-icon-button-ink-color: #FFFFFF; | |
66 | + } | |
67 | + | |
68 | + paper-icon-button.order { | |
69 | + height: 24px; | |
70 | + width: 24px; | |
71 | + cursor: pointer; | |
72 | + } | |
73 | + | |
74 | + paper-icon-button.order:hover { | |
75 | + color: #FFFFFF; | |
76 | + } | |
77 | + | |
78 | + paper-tooltip { | |
79 | + --paper-tooltip-background: black; | |
80 | + } | |
81 | + | |
82 | + #data_table_container { | |
83 | + height: 100%; | |
84 | + width: 100%; | |
85 | + } | |
86 | + | |
87 | + #data_table_container * { | |
88 | + font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif; | |
89 | + font-size: 16px; | |
90 | + line-height: 24px; | |
91 | + } | |
92 | + | |
93 | + #data_table_container #header { | |
94 | + background: #B6B6B6; | |
95 | + height: 24px; | |
96 | + padding: 12px; | |
97 | + text-align: center; | |
98 | + font-weight: 700; | |
99 | + } | |
100 | + | |
101 | + #data_table_container table { | |
102 | + height: calc(100% - 96px); | |
103 | + width: 100%; | |
104 | + | |
105 | + border-spacing: 0px; | |
106 | + } | |
107 | + | |
108 | + #data_table_container tbody { | |
109 | + width: 100%; | |
110 | + display: block; | |
111 | + position: relative; | |
112 | + } | |
113 | + | |
114 | + #data_table_container .even-row{ | |
115 | + | |
116 | + } | |
117 | + | |
118 | + #data_table_container .odd-row{ | |
119 | + background: #E0E0E0; | |
120 | + } | |
121 | + | |
122 | + /*#data_table_container tr:nth-child(odd) { | |
123 | + background: #E0E0E0; | |
124 | + }*/ | |
125 | + | |
126 | + #data_table_container th, | |
127 | + #data_table_container td{ | |
128 | + height: 24px; | |
129 | + padding: 12px; | |
130 | + text-align: center; | |
131 | + max-width: 224px; | |
132 | + overflow: hidden; | |
133 | + white-space: nowrap; | |
134 | + text-overflow: ellipsis; | |
135 | + width: 1%; | |
136 | + vertical-align: middle; | |
137 | + } | |
138 | + | |
139 | + #data_table_container th { | |
140 | + background: #2196F3; | |
141 | + color: #FFFFFF; | |
142 | + font-weight: 700; | |
143 | + /*cursor: help;*/ | |
144 | + } | |
145 | + | |
146 | + #data_table_container td { | |
147 | + font-size: 14px; | |
148 | + padding: 4px; | |
149 | + } | |
150 | + | |
151 | + #data_table_container tfoot td { | |
152 | + height: 48px; | |
153 | + padding: 0px; | |
154 | + font-size: 16px; | |
155 | + background: #B6B6B6; | |
156 | + } | |
157 | + | |
158 | + #data_table_container #footer { | |
159 | + width: 100%; | |
160 | + height: 48px; | |
161 | + background: #B6B6B6; | |
162 | + | |
163 | + display: flex; | |
164 | + flex-direction: row; | |
165 | + } | |
166 | + | |
167 | + #data_table_container .footer_block { | |
168 | + height: 24px; | |
169 | + padding: 12px 8px; | |
170 | + text-align: right; | |
171 | + } | |
172 | + | |
173 | + #data_table_container .footer_block:nth-child(1) { | |
174 | + width: 30%; | |
175 | + overflow: hidden; | |
176 | + white-space: nowrap; | |
177 | + text-overflow: ellipsis; | |
178 | + } | |
179 | + | |
180 | + #data_table_container .footer_block:nth-child(2) { | |
181 | + width: 40%; | |
182 | + height: 48px; | |
183 | + padding: 0px 8px; | |
184 | + text-align: center; | |
185 | + } | |
186 | + | |
187 | + #data_table_container .footer_block:nth-child(3) { | |
188 | + width: 30%; | |
189 | + height: 40px; | |
190 | + padding: 4px 8px; | |
191 | + text-align: left; | |
192 | + } | |
193 | + | |
194 | + #data_table_container br { | |
195 | + display: block; | |
196 | + margin-top: 8px; | |
197 | + content: " "; | |
198 | + } | |
199 | + | |
200 | + #data_table_container p { | |
201 | + margin: 0; | |
202 | + padding: 0; | |
203 | + } | |
204 | + | |
205 | + #data_table_container p .type{ | |
206 | + font-weight: 700; | |
207 | + } | |
208 | + | |
209 | + #data_table_container p .warning{ | |
210 | + font-weight: 700; | |
211 | + color: #F44336; | |
212 | + } | |
213 | + | |
214 | + paper-dialog { | |
215 | + /*position: fixed;*/ | |
216 | + min-height: 80%; | |
217 | + min-width: 85%; | |
218 | + height: 80%; | |
219 | + width: 85%; | |
220 | + } | |
221 | + | |
222 | + paper-dialog > * | |
223 | + { | |
224 | + padding: 0; | |
225 | + margin: 0; | |
226 | + } | |
227 | + | |
228 | + .buttons_position | |
229 | + { | |
230 | + position: absolute; | |
231 | + top: 10px; | |
232 | + right: 10px; | |
233 | + } | |
234 | + | |
235 | + </style> | |
236 | + | |
237 | + <paper-material id="data_table_container" elevation="5"> | |
238 | + | |
239 | + <div id="header"> | |
240 | + <span id="selected_data"></span> | |
241 | + <div style="float: right; right: 10px"> | |
242 | + <paper-checkbox checked on-change="showAll"><span id="suggested_datasets">Last Version</span></paper-checkbox> | |
243 | + </div> | |
244 | + </div> | |
245 | + | |
246 | + <table> | |
247 | + <tbody id="tbody"> | |
248 | + <tr> | |
249 | + <template is="dom-repeat" items="{{fields}}"> | |
250 | + <th id="id_{{index}}"> | |
251 | + {{item.name}} | |
252 | + <paper-icon-button id="{{index}}" class="order" on-click="_order" icon="unfold-more"></paper-icon-button> | |
253 | + </th> | |
254 | + </template> | |
255 | + <th> | |
256 | + TOOLS | |
257 | + </th> | |
258 | + </tr> | |
259 | + <template is="dom-repeat" items="{{shownData}}"> | |
260 | + <tr class$="{{item.cssClass}}"> | |
261 | + <template is="dom-repeat" items="{{_toArray(item)}}"> | |
262 | + <template is="dom-if" if="{{!item.isLink}}"> | |
263 | + <td title="{{item.value}}">{{item.value}}</td> | |
264 | + </template> | |
265 | + <template is="dom-if" if="{{item.isLink}}"> | |
266 | + <td> | |
267 | + <template is="dom-repeat" items="{{item.value}}" as="user" > | |
268 | + <div class="ow_avatar"> | |
269 | + <a href="#"> | |
270 | + <img alt="" src="{{user}}" style="max-width: 100%;"> | |
271 | + </a> | |
272 | + </div> | |
273 | + </template> | |
274 | + </td> | |
275 | + </template> | |
276 | + </template> | |
277 | + <td> | |
278 | + <paper-icon-button class="tools" icon="open-in-new" on-click="_onOpenDatasetClick"></paper-icon-button> | |
279 | + <paper-icon-button class="tools" icon="file-download"></paper-icon-button> | |
280 | + <paper-icon-button class="tools" icon="content-copy"></paper-icon-button> | |
281 | + </td> | |
282 | + </tr> | |
283 | + </template> | |
284 | + </tbody> | |
285 | + </table> | |
286 | + | |
287 | + <!--<template is="dom-repeat" items="{{fields}}"> | |
288 | + <paper-tooltip for="{{_fieldId(index)}}" offset="8"> | |
289 | + <p> | |
290 | + <span class="type">{{_type()}}:</span> {{item.type}} | |
291 | + <template is="dom-if" if={{item.errorsDescription.length}}> | |
292 | + <br/> | |
293 | + <span class="warning">{{_warning()}}:</span> {{item.errorsDescription}} | |
294 | + </template> | |
295 | + </p> | |
296 | + </paper-tooltip> | |
297 | + </template>--> | |
298 | + | |
299 | + <div id="footer"> | |
300 | + <div class="footer_block"> | |
301 | + <span id="showing"></span> {{shownPrev}} <span id="to"></span> {{shownNext}} <span id="of"></span> {{length}} <span id="rows"></span> | |
302 | + </div> | |
303 | + <div class="footer_block"> | |
304 | + <paper-icon-button id="slider_chevron_left" class="chevron-left" on-click="_onPrevClick" icon="chevron-left"></paper-icon-button> | |
305 | + <paper-icon-button id="slider_chevron_right" class="chevron-right" on-click="_onNextClick" icon="chevron-right"></paper-icon-button> | |
306 | + </div> | |
307 | + <div class="footer_block"> | |
308 | + <paper-input id="filter" value={{filter}} no-label-float> | |
309 | + <iron-icon class="search" icon="search" prefix></iron-icon> | |
310 | + <paper-icon-button class="clear" suffix on-click="_clearInput" icon="clear"></paper-icon-button> | |
311 | + </paper-input> | |
312 | + </div> | |
313 | + </div> | |
314 | + | |
315 | + </paper-material> | |
316 | + | |
317 | + <paper-dialog modal id="paper_dialog"> | |
318 | + <data-table-controllet id="data_table_controllet" data='[{"ID":"1", "VER":"5", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
319 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
320 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
321 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
322 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
323 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
324 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
325 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
326 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
327 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
328 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
329 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
330 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
331 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
332 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
333 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
334 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
335 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
336 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
337 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
338 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
339 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
340 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
341 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
342 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
343 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
344 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
345 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
346 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
347 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
348 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
349 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
350 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
351 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
352 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
353 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
354 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
355 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
356 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
357 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
358 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
359 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
360 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
361 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
362 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
363 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
364 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
365 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
366 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
367 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
368 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
369 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
370 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
371 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
372 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
373 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
374 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
375 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
376 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
377 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
378 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
379 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
380 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
381 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
382 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
383 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
384 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
385 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
386 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
387 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
388 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
389 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
390 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
391 | + {"ID":"1", "VER":"4", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
392 | + {"ID":"1", "VER":"3", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
393 | + {"ID":"1", "VER":"2", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
394 | + {"ID":"1", "VER":"1", "USER":"http://172.16.15.77/ow_userfiles/plugins/base/avatars/avatar_1_1457965950.jpg", "Name":"Bilancio Battipaglia", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
395 | + {"ID":"16", "VER":"4", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
396 | + {"ID":"16", "VER":"3", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
397 | + {"ID":"16", "VER":"2", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
398 | + {"ID":"16", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}, | |
399 | + {"ID":"17", "VER":"1", "USER":"https://www.google.it/images/branding/googleg/1x/googleg_standard_color_128dp.png", "Name":"Traffic Cameras", "Data":"07/06/2016", "METADATA":"Traffic, Cameras", "USED" : 10}]'> | |
400 | + | |
401 | + </data-table-controllet> | |
402 | + <div class="buttons buttons_position"> | |
403 | + <paper-icon-button dialog-confirm icon="close" class="preview-close"></paper-icon-button> | |
404 | + </div> | |
405 | + </paper-dialog> | |
406 | + | |
407 | + </template> | |
408 | + | |
409 | + <script> | |
410 | + | |
411 | + Polymer({ | |
412 | + | |
413 | + is : 'dataset-table-controllet', | |
414 | + | |
415 | + properties : { | |
416 | + | |
417 | + data : { | |
418 | + type : Array, | |
419 | + value : [] | |
420 | + }, | |
421 | + | |
422 | + filter : { | |
423 | + type : String, | |
424 | + value : undefined, | |
425 | + observer : '_filter' | |
426 | + } | |
427 | + | |
428 | + }, | |
429 | + | |
430 | + ready : function() { | |
431 | + this.step = 10; | |
432 | + }, | |
433 | + | |
434 | + attached : function(){ | |
435 | + $(this.$.tbody).perfectScrollbar(); | |
436 | + | |
437 | + this._resize(); | |
438 | + var that = this; | |
439 | + window.addEventListener("resize", function() { that._resize(); }); | |
440 | + | |
441 | + this._translate(); | |
442 | + | |
443 | + if(this.data.length > 0) | |
444 | + this.setData(this.data); | |
445 | + }, | |
446 | + | |
447 | + _translate : function(){ | |
448 | + this.$.selected_data.innerHTML = ln["selectedData_" + ln["localization"]]; | |
449 | + | |
450 | + this.$.showing.innerHTML = ln["showing_" + ln["localization"]]; | |
451 | + this.$.to.innerHTML = ln["to_" + ln["localization"]]; | |
452 | + this.$.of.innerHTML = ln["of_" + ln["localization"]]; | |
453 | + this.$.rows.innerHTML = ln["rows_" + ln["localization"]]; | |
454 | + | |
455 | + this.$.filter.setAttribute("label", ln["search_" + ln["localization"]]); | |
456 | + }, | |
457 | + | |
458 | + _type : function() {return ln["type_" + ln["localization"]];}, | |
459 | + _warning : function() {return ln["warning_" + ln["localization"]];}, | |
460 | + | |
461 | + _onOpenDatasetClick : function() { | |
462 | + this.$.paper_dialog.open(); | |
463 | + this.$.data_table_controllet._resize(); | |
464 | + }, | |
465 | + | |
466 | + setData : function(data) { | |
467 | + var converter = new DataTypeConverter(); | |
468 | + var result = converter.inferJsonDataType(data, ["*"]); | |
469 | + result = converter.cast(result); | |
470 | + delete result.types.ID; | |
471 | + this.fields = ArrayUtils.toFieldsArray(result.types); | |
472 | + this.originalData = result.dataset; | |
473 | + this.uniqueData = []; | |
474 | + var uniqueId = {}; | |
475 | + var cssClass = ["even-row", "odd-row"]; | |
476 | + var j = 0; | |
477 | + | |
478 | + for(var i=0; i<result.dataset.length; i++) { | |
479 | + if (!uniqueId[result.dataset[i].ID.toString()]) { | |
480 | + uniqueId[result.dataset[i].ID.toString()] = result.dataset[i].ID.toString(); | |
481 | + result.dataset[i]["cssClass"] = cssClass[j%2]; | |
482 | + this.uniqueData.push(result.dataset[i]); | |
483 | + j++; | |
484 | + } | |
485 | + result.dataset[i]["cssClass"] = cssClass[j%2]; | |
486 | + } | |
487 | + | |
488 | + this.data = this.uniqueData; | |
489 | + this.filter = ""; | |
490 | + $(".order").attr("icon", "unfold-more"); | |
491 | + | |
492 | + this.prev = 1; | |
493 | + this.next = this.step; | |
494 | + this.length = this.data.length; | |
495 | + | |
496 | + this.shownPrev = Math.min(this.prev, this.length); | |
497 | + this.shownNext = Math.min(this.next, this.length); | |
498 | + this.shownData = this.data.slice(this.prev-1, this.next); | |
499 | + | |
500 | + this._resize(); | |
501 | + }, | |
502 | + | |
503 | + reset : function(){ | |
504 | + this.setData([]); | |
505 | + $(this.$.tbody).animate({ scrollTop: 0}, 0); | |
506 | +// this.filter = ""; | |
507 | + }, | |
508 | + | |
509 | + showAll : function (e) { | |
510 | + | |
511 | + if(!e.target.checked) { | |
512 | + this.data = this.originalData; | |
513 | + }else{ | |
514 | + this.data = this.uniqueData; | |
515 | + } | |
516 | + this.length = this.data.length; | |
517 | + this.shownPrev = Math.min(this.prev, this.length); | |
518 | + this.shownNext = Math.min(this.next, this.length); | |
519 | + this.shownData = this.data.slice(this.prev-1, this.next); | |
520 | + }, | |
521 | + | |
522 | + _onPrevClick : function(){ | |
523 | + if(this.prev != 1) { | |
524 | + this.prev -= this.step; | |
525 | + this.next -= this.step; | |
526 | + | |
527 | + this.shownPrev = Math.min(this.prev, this.length); | |
528 | + this.shownNext = Math.min(this.next, this.length); | |
529 | + this.shownData = this.data.slice(this.prev - 1, this.next); | |
530 | + } | |
531 | + $(this.$.tbody).animate({ scrollTop: 0}, 0); | |
532 | + }, | |
533 | + | |
534 | + _onNextClick : function(){ | |
535 | + if(this.next < this.length) { | |
536 | + this.prev += this.step; | |
537 | + this.next += this.step; | |
538 | + | |
539 | + this.shownPrev = Math.min(this.prev, this.length); | |
540 | + this.shownNext = Math.min(this.next, this.length); | |
541 | + this.shownData = this.data.slice(this.prev - 1, this.next); | |
542 | + } | |
543 | + $(this.$.tbody).animate({ scrollTop: 0}, 0); | |
544 | + }, | |
545 | + | |
546 | + _filter : function(a, b) { | |
547 | + this.debounce('_filter', function () { | |
548 | + if(this.data.length) { | |
549 | + var filter = this.filter.toLowerCase(); | |
550 | + | |
551 | + if(filter == "") | |
552 | + this.shownData = this.data; | |
553 | + else { | |
554 | + var keys = Object.keys(this.data[0]); | |
555 | + this.shownData = this.data.filter(function (el) { | |
556 | + var values = keys.map(function (key) { | |
557 | + return el[key]; | |
558 | + }); | |
559 | + for (var i in values) | |
560 | + if (values[i] && String(values[i]).toLowerCase().indexOf(filter) > -1) | |
561 | + return true; | |
562 | + return false; | |
563 | + }); | |
564 | + } | |
565 | + | |
566 | + this.prev = 1; | |
567 | + this.next = this.step; | |
568 | + this.length = this.shownData.length; | |
569 | + | |
570 | + this.shownPrev = Math.min(this.prev, this.length); | |
571 | + this.shownNext = Math.min(this.next, this.length); | |
572 | + this.shownData = this.shownData.slice(this.prev - 1, this.next); | |
573 | + | |
574 | + $(this.$.tbody).animate({ scrollTop: 0}, 0); | |
575 | + } | |
576 | + }, 300); | |
577 | + }, | |
578 | + | |
579 | + _clearInput : function() { | |
580 | + this.$.filter.value = ""; | |
581 | + }, | |
582 | + | |
583 | + _order : function(e) { | |
584 | + t = $(e.target).parents("paper-icon-button")[0]; | |
585 | + | |
586 | + var icon = t.getAttribute("icon"); | |
587 | + var id = t.getAttribute("id"); | |
588 | + var field = this.fields[id]; | |
589 | + var reverse = false; | |
590 | + | |
591 | + if(icon.indexOf("unfold-more") > -1){ | |
592 | + t.setAttribute("icon", "arrow-drop-up"); | |
593 | + } | |
594 | + else if(icon.indexOf("arrow-drop-up") > -1){ | |
595 | + t.setAttribute("icon", "arrow-drop-down"); | |
596 | + reverse = true; | |
597 | + } | |
598 | + else if(icon.indexOf("arrow-drop-down") > -1){ | |
599 | + t.setAttribute("icon", "arrow-drop-up"); | |
600 | + } | |
601 | + | |
602 | + | |
603 | + if(field.type == "NUMBER") | |
604 | +// this.data = this.data.sort(this._sort_by(field.name, reverse, parseInt)); | |
605 | + this.data = this.data.sort(this._sort_by(field.name, reverse, function(a){return (isNaN(a) ? -Number.MAX_VALUE : a)})); | |
606 | + else | |
607 | + this.data = this.data.sort(this._sort_by(field.name, reverse, function(a){return (a ? a.toLowerCase() : "")})); | |
608 | + this._filter(); | |
609 | + }, | |
610 | + | |
611 | + _sort_by : function(field, reverse, primer){ | |
612 | + | |
613 | + var key = primer ? | |
614 | + function(x) {return primer(x[field])} : | |
615 | + function(x) {return x[field]}; | |
616 | + | |
617 | + reverse = !reverse ? 1 : -1; | |
618 | + | |
619 | + return function (a, b) { | |
620 | + return a = key(a), b = key(b), reverse * ((a > b) - (b > a)); | |
621 | + } | |
622 | + }, | |
623 | + | |
624 | + _toArray: function(obj) { | |
625 | + var regExp = new RegExp(/(https?:\/\/[^\s]+)/g); | |
626 | + return Object.keys(obj).map(function(key) { | |
627 | + if(key != "ID" && key != "cssClass") { | |
628 | + var test = regExp.test(obj[key]); | |
629 | + return { | |
630 | + key: key, | |
631 | + value: test ? obj[key].split(",") : obj[key], | |
632 | + isLink: test | |
633 | + } | |
634 | + } | |
635 | + }); | |
636 | + }, | |
637 | + | |
638 | + _fieldId: function(index) { | |
639 | + return "id_" + index; | |
640 | + }, | |
641 | + | |
642 | + _resize : function(){ | |
643 | + this.async(function() { | |
644 | + var h = $(this.$.data_table_container).height() - 96; | |
645 | + var w = $(this.$.data_table_container).width(); | |
646 | + $(this.$.tbody).width(w).height(h); | |
647 | + $(this.$.tbody).perfectScrollbar('update'); | |
648 | + }, 1); | |
649 | + } | |
650 | + | |
651 | + }); | |
652 | + | |
653 | + </script> | |
654 | + | |
655 | +</dom-module> | |
0 | 656 | \ No newline at end of file | ... | ... |