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], |