From 4bd2f9c2936561d1ccd713656f639d01380e6726 Mon Sep 17 00:00:00 2001
From: renato <rended83@gmail.com>
Date: Tue, 7 Jun 2016 11:29:17 +0200
Subject: [PATCH] data-table

---
 controllets/data-sevc-controllet/data-sevc-controllet_old.html | 210 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 controllets/data-table-controllet/data-table-controllet.html   |  10 +++++++---
 2 files changed, 217 insertions(+), 3 deletions(-)
 create mode 100755 controllets/data-sevc-controllet/data-sevc-controllet_old.html

diff --git a/controllets/data-sevc-controllet/data-sevc-controllet_old.html b/controllets/data-sevc-controllet/data-sevc-controllet_old.html
new file mode 100755
index 0000000..27f6702
--- /dev/null
+++ b/controllets/data-sevc-controllet/data-sevc-controllet_old.html
@@ -0,0 +1,210 @@
+<script src="../shared_js/perfect-scrollbar/js/min/perfect-scrollbar.jquery.min.js"></script>
+<link rel="stylesheet" href="../shared_js/perfect-scrollbar/css/perfect-scrollbar.min.css">
+
+<script src="../../locales/controllet_ln.js"></script>
+
+<link rel="import" href="../../bower_components/polymer/polymer.html">
+
+<link rel="import" href="../page-slider-controllet/page-slider-controllet.html">
+
+<link rel="import" href="../select-dataset-controllet/select-dataset-controllet.html">
+<link rel="import" href="../select-data-controllet/select-data-controllet.html" />
+<link rel="import" href="../select-visualization-controllet/select-visualization-controllet.html" />
+
+<dom-module id="data-sevc-controllet">
+
+    <template>
+
+        <page-slider-controllet id="slider">
+
+            <neon-animatable>
+
+                <template is="dom-if" if={{!modify}}>
+                    <select-dataset-controllet id="select_dataset" data={{data}} datasets={{datasets}} suggested-datasets={{suggestedDatasets}}></select-dataset-controllet>
+                </template>
+
+            </neon-animatable>
+
+            <neon-animatable>
+
+                <select-data-controllet id="select_data" data-url={{dataUrl}} preselected-fields={{selectedFields}} datalet-preset="{{dataletPreset}}"></select-data-controllet>
+
+            </neon-animatable>
+
+            <neon-animatable>
+
+                <select-visualization-controllet id="select_visualization" deep-url={{deepUrl}} datalets-list-url={{dataletsListUrl}} data-url={{dataUrl}} preselected-datalet={{selectedDatalet}} datalet-preset={{dataletPreset}}></select-visualization-controllet>
+
+            </neon-animatable>
+
+        </page-slider-controllet>
+
+    </template>
+
+    <script>
+
+        Polymer({
+
+            is : 'data-sevc-controllet',
+
+            listeners : {
+                'page-slider-controllet_selected' : '_updateSlider',
+                'dataset-selection-controllet_data-url' : '_allowSecondStep',
+                'tree-view-controllet_selected-fields' : '_allowThirdStep'
+            },
+
+            properties : {
+
+                deepUrl : {
+                    type : String,
+                    value : undefined
+                },
+
+                dataletsListUrl : {
+                    type : String ,
+                    value : undefined
+                },
+
+                datasets : {
+                    type : Array,
+                    value : undefined
+                },
+
+                suggestedDatasets : {
+                    type : Array,
+                    value : undefined
+                },
+
+                dataUrl : {
+                    type  : String,
+                    value : undefined
+                },
+
+                jsonData : {
+                    type  : Object,
+                    value : undefined
+                },
+
+                modify : {
+                    type  : Boolean,
+                    value : false
+                },
+
+                selectedDatalet : {
+                    type  : String,
+                    value : undefined
+                },
+
+                selectedFields : {
+                    type  : Array,
+                    value : []
+                },
+
+                dataletPreset : {
+                    type  : Object,
+                    value : []
+                },
+
+                localization : {
+                    type : String,
+                    value : "en"
+                }
+
+            },
+
+            ready : function(){
+                if(this.selectedDatalet){
+                    this.modify = true;
+                    this.$.slider.selected = 1;
+                    this.dataUrl = this.dataletPreset["data-url"];
+                }
+                ln["localization"] = this.localization;
+            },
+
+            _updateSlider : function(e){
+                switch (e.detail.selected) {
+                    case 0:
+                        slider.setTitle(ln["slide1Title_" + this.localization], ln["slide1Subtitle_" + this.localization]);
+                        slider.chevronLeft("invisible");
+                        slider.chevronRight(false);
+                        if(slider.getPrevSelected() == 1)
+                            slider.chevronRight(true);
+                        break;
+                    case 1:
+                        slider.setTitle(ln["slide2Title_" + this.localization], ln["slide2Subtitle_" + this.localization]);
+                        if(this.modify){
+                            slider.chevronLeft("invisible");
+                        }
+                        else{
+                            slider.chevronLeft(true);
+                        }
+                        slider.chevronRight(false);
+                        this._allowThirdStep({detail: {fields: select_data.getSelectedFields()}});
+                        if(this.modify){
+                            this.$.select_visualization.setFields(select_data.getSelectedFields());
+                            this.$.select_visualization.setFilters(select_data.getFilters());
+                        }
+                        break;
+                    case 2:
+                        slider.setTitle(ln["slide3Title_" + this.localization], ln["slide3Subtitle_" + this.localization]);
+                        slider.chevronLeft(true);
+                        slider.chevronRight("invisible");
+
+                        this.$.select_visualization.setFields(select_data.getSelectedFields());
+                        this.$.select_visualization.setFilters(select_data.getFilters());
+                        if(this.modify) {
+                            this.$.select_visualization.show();//resize
+                        }
+                }
+            },
+
+            _allowSecondStep : function(e){
+                if(e.detail.url == "") {
+                    slider.chevronRight(false);
+                    select_dataset.$.selected_url.invalid = false;
+                    return;
+                }
+
+                this.dataUrl = e.detail.url;
+
+                var that = this;
+
+                $.ajax({
+                    url: e.detail.url,
+                    dataType: "json",
+                    success: function(data){
+//                        this.dataUrl = e.detail.url
+//                        this.jsonData = JSON.stringify(data);
+                        slider.chevronRight(true);
+                        select_dataset.$.selected_url.invalid = false;
+
+                        that.$.select_data._init();
+                    },
+                    error: function(){
+//                        this.jsonData = undefined;
+                        slider.chevronRight(false);
+                        select_dataset.$.selected_url.invalid = true;
+
+                        that.$.select_data._reset();
+                    }
+                });
+
+                //NOT HERE ma quando VADO al secondo passo e l'url รจ cambiato
+//                this.$.select_data._init();
+                this.$.select_visualization.reset();
+            },
+
+            _allowThirdStep : function(e){
+                if(e.detail.fields.length > 0)
+                    slider.chevronRight(true);
+                else
+                    slider.chevronRight(false);
+
+                //this.$.select_visualization.reset();
+            }
+
+        });
+
+    </script>
+
+</dom-module>
\ No newline at end of file
diff --git a/controllets/data-table-controllet/data-table-controllet.html b/controllets/data-table-controllet/data-table-controllet.html
index 3f01f38..570d700 100644
--- a/controllets/data-table-controllet/data-table-controllet.html
+++ b/controllets/data-table-controllet/data-table-controllet.html
@@ -283,9 +283,6 @@
             _warning : function() {return ln["warning_" + ln["localization"]];},
 
             setData : function(data) {
-//                this.data = data.slice();
-
-                //jsdatachecker
                 var converter = new DataTypeConverter();
                 var result = converter.inferJsonDataType(data, ["*"]);
                 result = converter.cast(result);
@@ -302,6 +299,13 @@
                 this.shownPrev = Math.min(this.prev, this.length);
                 this.shownNext = Math.min(this.next, this.length);
                 this.shownData = this.data.slice(this.prev-1, this.next);
+
+                this._resize();
+            },
+
+            reset : function(){
+                this.setData([]);
+                this.filter = "";
             },
 
             _onPrevClick : function(){
--
libgit2 0.21.4