Commit 40eb09797def2861e78d1a248d28c489140dbad0
1 parent
93ba7167
group by and filters LN
Showing
2 changed files
with
112 additions
and
27 deletions
controllets/datalet-selection-controllet/datalet-selection-controllet.html
| ... | ... | @@ -224,7 +224,7 @@ |
| 224 | 224 | <div id="expert_container"> |
| 225 | 225 | |
| 226 | 226 | <div class="inputs"> |
| 227 | - <paper-dropdown-menu id="group_by" label="GROUP BY"> | |
| 227 | + <paper-dropdown-menu id="group_by"> | |
| 228 | 228 | <paper-menu class="dropdown-content"> |
| 229 | 229 | <template is="dom-repeat" items={{selectedFields}}> |
| 230 | 230 | <paper-item id={{index}} on-tap="_showGroupedFields">{{_fieldName(item)}}</paper-item> |
| ... | ... | @@ -238,15 +238,16 @@ |
| 238 | 238 | |
| 239 | 239 | <template is="dom-repeat" items="{{groupedFields}}"> |
| 240 | 240 | <div class="inputs"> |
| 241 | - <paper-dropdown-menu id="calculate_{{index}}" label="CALCULATE"> | |
| 241 | + <paper-dropdown-menu id="calculate_{{index}}" label="{{_calculateLabel()}}"> | |
| 242 | 242 | <paper-menu class="dropdown-content"> |
| 243 | - <paper-item on-tap="_addGroupByInput">COUNT of {{_fieldName(item)}}</paper-item> | |
| 244 | - <paper-item on-tap="_addGroupByInput">SUM of {{_fieldName(item)}}</paper-item> | |
| 245 | - <paper-item on-tap="_addGroupByInput">MIN of {{_fieldName(item)}}</paper-item> | |
| 246 | - <paper-item on-tap="_addGroupByInput">MAX of {{_fieldName(item)}}</paper-item> | |
| 247 | - <paper-item on-tap="_addGroupByInput">AVG of {{_fieldName(item)}}</paper-item> | |
| 248 | - <paper-item on-tap="_addGroupByInput">FIRST of {{_fieldName(item)}}</paper-item> | |
| 249 | - <paper-item on-tap="_addGroupByInput">LAST of {{_fieldName(item)}}</paper-item> | |
| 243 | + <!--foreach functions--> | |
| 244 | + <paper-item id="0" on-tap="_addGroupByInput">{{_operationName(0)}} {{_fieldName(item)}}</paper-item> | |
| 245 | + <paper-item id="1" on-tap="_addGroupByInput">{{_operationName(1)}} {{_fieldName(item)}}</paper-item> | |
| 246 | + <paper-item id="2" on-tap="_addGroupByInput">{{_operationName(2)}} {{_fieldName(item)}}</paper-item> | |
| 247 | + <paper-item id="3" on-tap="_addGroupByInput">{{_operationName(3)}} {{_fieldName(item)}}</paper-item> | |
| 248 | + <paper-item id="4" on-tap="_addGroupByInput">{{_operationName(4)}} {{_fieldName(item)}}</paper-item> | |
| 249 | + <paper-item id="5" on-tap="_addGroupByInput">{{_operationName(5)}} {{_fieldName(item)}}</paper-item> | |
| 250 | + <paper-item id="6" on-tap="_addGroupByInput">{{_operationName(6)}} {{_fieldName(item)}}</paper-item> | |
| 250 | 251 | </paper-menu> |
| 251 | 252 | </paper-dropdown-menu> |
| 252 | 253 | <div class="info_button"> |
| ... | ... | @@ -409,6 +410,11 @@ |
| 409 | 410 | value : false |
| 410 | 411 | }, |
| 411 | 412 | |
| 413 | + functions : { | |
| 414 | + type : Array, | |
| 415 | + value : ["COUNT", "SUM", "MIN", "MAX", "AVG", "FIRST", "LAST"] | |
| 416 | + }, | |
| 417 | + | |
| 412 | 418 | modify : { |
| 413 | 419 | type : Boolean, |
| 414 | 420 | value : false |
| ... | ... | @@ -542,6 +548,7 @@ |
| 542 | 548 | this.$.base_description.label = ln["description_" + ln["localization"]]; |
| 543 | 549 | |
| 544 | 550 | this.$.groupBy.innerHTML = ln["groupBy_" + ln["localization"]]; |
| 551 | + this.$.group_by.setAttribute("label", ln["groupBy_" + ln["localization"]]); | |
| 545 | 552 | |
| 546 | 553 | if(this.modify) |
| 547 | 554 | this.$.add_button.innerHTML = ln["modifyDatalet_" + ln["localization"]]; |
| ... | ... | @@ -799,12 +806,14 @@ |
| 799 | 806 | this.aggregators.push({"field": label, "operation": "GROUP BY"}); |
| 800 | 807 | } |
| 801 | 808 | if(id.indexOf("calculate") > -1) { |
| 802 | - var label = $(ddls[i]).find("paper-menu")[0].selectedItem.textContent.trim(); | |
| 803 | -// var field = label.substring(label.lastIndexOf(" ")+1, label.length); | |
| 804 | - var index = label.split(" ", 2).join(" ").length; | |
| 805 | - var field = label.substring(index+1, label.length); | |
| 806 | - var operation = label.substring(0, label.indexOf(" ")); | |
| 807 | - this.aggregators.push({"field": field, "operation": operation}); | |
| 809 | + var menu = $(ddls[i]).find("paper-menu")[0]; | |
| 810 | + var label = menu.selectedItem.textContent.trim(); | |
| 811 | + var index = menu.selectedItem.id; | |
| 812 | + var ii = label.split(" ", 2).join(" ").length; | |
| 813 | + //attenzione BUG --> non funziona se la traduzione non ha solo 1 spazio | |
| 814 | + var field = label.substring(ii+1, label.length); | |
| 815 | +// var operation = label.substring(0, label.indexOf(" ")); | |
| 816 | + this.aggregators.push({"field": field, "operation": this.functions[index]}); | |
| 808 | 817 | } |
| 809 | 818 | } |
| 810 | 819 | }, |
| ... | ... | @@ -917,6 +926,15 @@ |
| 917 | 926 | return ln[key + "_" +ln["localization"]]; |
| 918 | 927 | }, |
| 919 | 928 | |
| 929 | + _calculateLabel: function() { | |
| 930 | + return ln["calculate" + "_" +ln["localization"]]; | |
| 931 | + }, | |
| 932 | + | |
| 933 | + _operationName: function(index) { | |
| 934 | + var key = this.functions[index]; | |
| 935 | + return ln[key + "_" +ln["localization"]]; | |
| 936 | + }, | |
| 937 | + | |
| 920 | 938 | _resize : function(){ |
| 921 | 939 | var h = Math.max(document.documentElement.clientHeight, window.innerHeight || 0) - 16; |
| 922 | 940 | h = h - 64 - 8; //height with page scroller | ... | ... |
locales/controllet_ln.js
| ... | ... | @@ -28,18 +28,25 @@ ln["dataletPreview_it"] = "ANTEPRIMA"; |
| 28 | 28 | ln["addDatalet_it"] = "AGGIUNGI"; |
| 29 | 29 | ln["modifyDatalet_it"] = "MODIFICA"; |
| 30 | 30 | |
| 31 | -ln["addFilters_en"] = "ADD FILTERS"; | |
| 32 | -ln["filterField_en"] = "Field"; | |
| 33 | -ln["filterOperation_en"] = "Operation"; | |
| 34 | -ln["filterValue_en"] = "Value"; | |
| 35 | -ln["contains_en"] = "contains"; | |
| 36 | -ln["start_en"] = "start with"; | |
| 37 | -ln["ends_en"] = "ends with"; | |
| 38 | -ln["sortAscending_en"] = "sorted ascending"; | |
| 39 | -ln["sortDescending_en"] = "sorted descending"; | |
| 40 | -ln["unsort_en"] = "unsorted"; | |
| 41 | -//ln["countOf_en"] = "COUNT of"; | |
| 42 | -ln["groupBy_en"] = "GROUP BY"; | |
| 31 | +ln["addFilters_it"] = "AGGIUNGI FILTRI"; | |
| 32 | +ln["filterField_it"] = "Campo"; | |
| 33 | +ln["filterOperation_it"] = "Operazione"; | |
| 34 | +ln["filterValue_it"] = "Valore"; | |
| 35 | +ln["contains_it"] = "contiene"; | |
| 36 | +ln["start_it"] = "inizia con"; | |
| 37 | +ln["ends_it"] = "finisce con"; | |
| 38 | +ln["sortAscending_it"] = "ordinamento crescente"; | |
| 39 | +ln["sortDescending_it"] = "ordinamento decrescente"; | |
| 40 | +ln["unsort_it"] = "non ordinato"; | |
| 41 | +ln["groupBy_it"] = "RAGGRUPPA"; | |
| 42 | +ln["calculate_it"] = "CALCOLA"; | |
| 43 | +ln["COUNT_it"] = "CONTEGGIO di"; | |
| 44 | +ln["SUM_it"] = "SOMMA di"; | |
| 45 | +ln["MIN_it"] = "MINIMO di"; | |
| 46 | +ln["MAX_it"] = "MASSIMO di"; | |
| 47 | +ln["AVG_it"] = "MEDIA di"; | |
| 48 | +ln["FIRST_it"] = "PRIMO di"; | |
| 49 | +ln["LAST_it"] = "ULTIMO di"; | |
| 43 | 50 | |
| 44 | 51 | ln["datatable_it"] = "tabella"; |
| 45 | 52 | ln["barchart_it"] = "bar-chart"; |
| ... | ... | @@ -131,6 +138,26 @@ ln["dataletPreview_en"] = "PREVIEW"; |
| 131 | 138 | ln["addDatalet_en"] = "ADD"; |
| 132 | 139 | ln["modifyDatalet_en"] = "MODIFY"; |
| 133 | 140 | |
| 141 | +ln["addFilters_en"] = "ADD FILTERS"; | |
| 142 | +ln["filterField_en"] = "Field"; | |
| 143 | +ln["filterOperation_en"] = "Operation"; | |
| 144 | +ln["filterValue_en"] = "Value"; | |
| 145 | +ln["contains_en"] = "contains"; | |
| 146 | +ln["start_en"] = "start with"; | |
| 147 | +ln["ends_en"] = "ends with"; | |
| 148 | +ln["sortAscending_en"] = "sorted ascending"; | |
| 149 | +ln["sortDescending_en"] = "sorted descending"; | |
| 150 | +ln["unsort_en"] = "unsorted"; | |
| 151 | +ln["groupBy_en"] = "GROUP BY"; | |
| 152 | +ln["calculate_en"] = "CALCULATE"; | |
| 153 | +ln["COUNT_en"] = "COUNT of"; | |
| 154 | +ln["SUM_en"] = "SUM of"; | |
| 155 | +ln["MIN_en"] = "MIN of"; | |
| 156 | +ln["MAX_en"] = "MAX of"; | |
| 157 | +ln["AVG_en"] = "AVG of"; | |
| 158 | +ln["FIRST_en"] = "FIRST of"; | |
| 159 | +ln["LAST_en"] = "LAST of"; | |
| 160 | + | |
| 134 | 161 | ln["datatable_en"] = "table"; |
| 135 | 162 | ln["barchart_en"] = "bar-chart"; |
| 136 | 163 | //ln["bar-chart_en"] = "DDR bar-chart"; |
| ... | ... | @@ -224,6 +251,26 @@ ln["dataletPreview_fr"] = "PREVISUALISATION"; |
| 224 | 251 | ln["addDatalet_fr"] = "AJOUTER"; |
| 225 | 252 | ln["modifyDatalet_fr"] = "MODIFIER"; |
| 226 | 253 | |
| 254 | +ln["addFilters_fr"] = "ADD FILTERS"; | |
| 255 | +ln["filterField_fr"] = "Field"; | |
| 256 | +ln["filterOperation_fr"] = "Operation"; | |
| 257 | +ln["filterValue_fr"] = "Value"; | |
| 258 | +ln["contains_fr"] = "contains"; | |
| 259 | +ln["start_fr"] = "start with"; | |
| 260 | +ln["ends_fr"] = "ends with"; | |
| 261 | +ln["sortAscending_fr"] = "sorted ascending"; | |
| 262 | +ln["sortDescending_fr"] = "sorted descending"; | |
| 263 | +ln["unsort_fr"] = "unsorted"; | |
| 264 | +ln["groupBy_fr"] = "GROUP BY"; | |
| 265 | +ln["calculate_fr"] = "CALCULATE"; | |
| 266 | +ln["COUNT_fr"] = "COUNT of"; | |
| 267 | +ln["SUM_fr"] = "SUM of"; | |
| 268 | +ln["MIN_fr"] = "MIN of"; | |
| 269 | +ln["MAX_fr"] = "MAX of"; | |
| 270 | +ln["AVG_fr"] = "AVG of"; | |
| 271 | +ln["FIRST_fr"] = "FIRST of"; | |
| 272 | +ln["LAST_fr"] = "LAST of"; | |
| 273 | + | |
| 227 | 274 | ln["datatable_fr"] = "table fr"; |
| 228 | 275 | ln["barchart_fr"] = "barchart"; |
| 229 | 276 | ln["columnchart_fr"] = "columnchart"; |
| ... | ... | @@ -314,6 +361,26 @@ ln["dataletPreview_nl"] = "VOORBEELD"; |
| 314 | 361 | ln["addDatalet_nl"] = "TOEVOEGEN"; |
| 315 | 362 | ln["modifyDatalet_nl"] = "WIJZIGEN"; |
| 316 | 363 | |
| 364 | +ln["addFilters_nl"] = "ADD FILTERS"; | |
| 365 | +ln["filterField_nl"] = "Field"; | |
| 366 | +ln["filterOperation_nl"] = "Operation"; | |
| 367 | +ln["filterValue_nl"] = "Value"; | |
| 368 | +ln["contains_nl"] = "contains"; | |
| 369 | +ln["start_nl"] = "start with"; | |
| 370 | +ln["ends_nl"] = "ends with"; | |
| 371 | +ln["sortAscending_nl"] = "sorted ascending"; | |
| 372 | +ln["sortDescending_nl"] = "sorted descending"; | |
| 373 | +ln["unsort_nl"] = "unsorted"; | |
| 374 | +ln["groupBy_nl"] = "GROUP BY"; | |
| 375 | +ln["calculate_nl"] = "CALCULATE"; | |
| 376 | +ln["COUNT_nl"] = "COUNT of"; | |
| 377 | +ln["SUM_nl"] = "SUM of"; | |
| 378 | +ln["MIN_nl"] = "MIN of"; | |
| 379 | +ln["MAX_nl"] = "MAX of"; | |
| 380 | +ln["AVG_nl"] = "AVG of"; | |
| 381 | +ln["FIRST_nl"] = "FIRST of"; | |
| 382 | +ln["LAST_nl"] = "LAST of"; | |
| 383 | + | |
| 317 | 384 | ln["datatable_nl"] = "tafel"; |
| 318 | 385 | ln["barchart_nl"] = "barchart"; |
| 319 | 386 | ln["columnchart_nl"] = "columnchart"; | ... | ... |