Commit 2217c83da623c04c05a398b0ecd4c2546ef6880c
1 parent
addc5f69
Support for meta information in Dataset Explorer Datalet
Showing
2 changed files
with
41 additions
and
4 deletions
datalets/datasetexplorer-datalet/datasetexplorer-datalet.html
@@ -188,12 +188,38 @@ Example: | @@ -188,12 +188,38 @@ Example: | ||
188 | var xyz = function(url) { | 188 | var xyz = function(url) { |
189 | me.selectResource(url); | 189 | me.selectResource(url); |
190 | } | 190 | } |
191 | - build(this.map, "treemap_placeholder", xyz, this._component.width, this._component.height); | 191 | + build(this.map, this.meta, "treemap_placeholder", xyz, this._component.width, this._component.height); |
192 | }, | 192 | }, |
193 | 193 | ||
194 | selectResource: function(url) { | 194 | selectResource: function(url) { |
195 | this._component.fire("datasetexplorer-datalet_data-url", { url: url }); | 195 | this._component.fire("datasetexplorer-datalet_data-url", { url: url }); |
196 | - } | 196 | + }, |
197 | + | ||
198 | + selectData : function() { | ||
199 | + this.data = []; | ||
200 | + this.meta = this.properties.json_results.value.result.providers; | ||
201 | + | ||
202 | + //Deal the fields with "'" char | ||
203 | + //this._component.fields = this._component.fields.replace(/#/g,"'"); | ||
204 | + | ||
205 | + this._component.fields = JSON.parse(this._component.fields); | ||
206 | + | ||
207 | + for (var i = 0; i < this._component.fields.length; i++) { | ||
208 | + var query = "$"; | ||
209 | + var query_elements = this._component.fields[i].split(','); | ||
210 | + for (var j = 0; j < query_elements.length; j++) { | ||
211 | + query += "['" + query_elements[j] + "']"; | ||
212 | + if (this.isFieldArray(query_elements.slice(0, j + 1))) { | ||
213 | + query += "[*]"; | ||
214 | + } | ||
215 | + } | ||
216 | + this.data.push({ | ||
217 | + name: query_elements[query_elements.length - 1], | ||
218 | + data: jsonPath(this.properties.json_results.value, query) | ||
219 | + }); | ||
220 | + } | ||
221 | + this.deleteWaitImage(); | ||
222 | + }, | ||
197 | }; | 223 | }; |
198 | 224 | ||
199 | 225 |
datalets/datasetexplorer-datalet/js/buildtreemap.js
@@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
2 | * Created by Utente on 17/07/2015. | 2 | * Created by Utente on 17/07/2015. |
3 | */ | 3 | */ |
4 | 4 | ||
5 | -function build(root, place_holder, select_listener, width, height) { | 5 | +function build(root, meta, place_holder, select_listener, width, height) { |
6 | 6 | ||
7 | var plwidth = width >= 0 ? width : $("#" + place_holder).width(), | 7 | var plwidth = width >= 0 ? width : $("#" + place_holder).width(), |
8 | plheight = height >= 0 ? height : $("#" + place_holder).height(); | 8 | plheight = height >= 0 ? height : $("#" + place_holder).height(); |
@@ -223,6 +223,17 @@ function build(root, place_holder, select_listener, width, height) { | @@ -223,6 +223,17 @@ function build(root, place_holder, select_listener, width, height) { | ||
223 | text.call(wrap); | 223 | text.call(wrap); |
224 | } | 224 | } |
225 | 225 | ||
226 | + function checkProviderName(name) { | ||
227 | + console.log(name); | ||
228 | + if (name.substr(0, 2) == 'p:') { | ||
229 | + console.log("in"); | ||
230 | + var pid = name.substr(2); | ||
231 | + name = meta[pid].title; | ||
232 | + } | ||
233 | + console.log(name); | ||
234 | + return name; | ||
235 | + } | ||
236 | + | ||
226 | function wrap(d) { | 237 | function wrap(d) { |
227 | var wwidth = width; | 238 | var wwidth = width; |
228 | var hheight = height; | 239 | var hheight = height; |
@@ -230,7 +241,7 @@ function build(root, place_holder, select_listener, width, height) { | @@ -230,7 +241,7 @@ function build(root, place_holder, select_listener, width, height) { | ||
230 | d.each(function(){ | 241 | d.each(function(){ |
231 | var text = d3.select(this), | 242 | var text = d3.select(this), |
232 | d = text[0][0].__data__, | 243 | d = text[0][0].__data__, |
233 | - name = d.name.trim(), | 244 | + name = checkProviderName(d.name.trim()); |
234 | words = name.search(/\s+/) >= 0 ? name.split(/\s+/).reverse() : [name], | 245 | words = name.search(/\s+/) >= 0 ? name.split(/\s+/).reverse() : [name], |
235 | word = words.pop(), | 246 | word = words.pop(), |
236 | line = [word], | 247 | line = [word], |