git_sitools_idoc / Module_DatasetExplorerOchart_sitools2v3 / DatasetExplorerOchartController.js @ 2830ca05
1 | 3c601d2d | shye0000 | /*******************************************************************************
|
---|---|---|---|
2 | * Copyright 2010-2014 CNES - CENTRE NATIONAL d'ETUDES SPATIALES
|
||
3 | *
|
||
4 | * This file is part of SITools2.
|
||
5 | *
|
||
6 | * SITools2 is free software: you can redistribute it and/or modify it under the
|
||
7 | * terms of the GNU General Public License as published by the Free Software
|
||
8 | * Foundation, either version 3 of the License, or (at your option) any later
|
||
9 | * version.
|
||
10 | *
|
||
11 | * SITools2 is distributed in the hope that it will be useful, but WITHOUT ANY
|
||
12 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
||
13 | * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||
14 | *
|
||
15 | * You should have received a copy of the GNU General Public License along with
|
||
16 | * SITools2. If not, see <http://www.gnu.org/licenses/>.
|
||
17 | ******************************************************************************/
|
||
18 | |||
19 | /*global Ext, sitools, i18n, projectGlobal, alertFailure, showResponse*/
|
||
20 | |||
21 | /**
|
||
22 | * DatasetExplorerOchart Module Controller
|
||
23 | * @class sitools.user.controller.modules.datasetExplorerOchart.DatasetExplorerOchartController
|
||
24 | * @extends Ext.app.Controller
|
||
25 | */
|
||
26 | Ext.define('sitools.user.controller.modules.datasetExplorerOchart.DatasetExplorerOchartController', {
|
||
27 | extend : 'Ext.app.Controller', |
||
28 | |||
29 | views : ['modules.datasetExplorerOchart.DatasetExplorerOchartView'], |
||
30 | |||
31 | init : function () { |
||
32 | this.control({
|
||
33 | "DatasetExplorerOchart" : {
|
||
34 | render : function (ochart) { |
||
35 | var project = Ext.getStore('ProjectStore').getProject(); |
||
36 | var projectAttachment = project.get("sitoolsAttachementForUsers"); |
||
37 | |||
38 | Ext.Ajax.request({ |
||
39 | method : 'GET', |
||
40 | url : projectAttachment + "/graph", |
||
41 | scope : this, |
||
42 | success : function (ret) { |
||
43 | var Json = Ext.decode(ret.responseText);
|
||
44 | if (!Json.success) {
|
||
45 | Ext.Msg.alert(i18n.get('label.warning'), Json.message);
|
||
46 | return;
|
||
47 | } |
||
48 | if (Json.graph && Json.graph.nodeList) {
|
||
49 | ochart.store.getRootNode().appendChild(Json.graph.nodeList); |
||
50 | ochart.store.getRootNode().collapseChildren(); |
||
51 | //ochart.store.setRootNode(Json.graph.nodeList);
|
||
52 | console.log(ochart.store.getRootNode()); |
||
53 | var root=ochart.store.getRootNode();
|
||
54 | for(var i=0; i<root.childNodes.length; i++){ |
||
55 | this.collapseRecursive(root.childNodes[i]);
|
||
56 | } |
||
57 | } |
||
58 | } |
||
59 | }); |
||
60 | |||
61 | |||
62 | } |
||
63 | } |
||
64 | }); |
||
65 | |||
66 | this.listen({
|
||
67 | store : {
|
||
68 | "#datasetExplorerOchartTreeStore" : {
|
||
69 | append : function (store, record) { |
||
70 | //record.set("id", Ext.id());
|
||
71 | if (record.get("type") === "dataset") { |
||
72 | var icon = record.get("authorized") === "true" ? loadUrl.get('APP_URL') + "/common/res/images/icons/tree_datasets.png" : loadUrl.get('APP_URL') + "/common/res/images/icons/cadenas.png"; |
||
73 | record.set('icon', icon);
|
||
74 | //record.set("leaf", true);
|
||
75 | |||
76 | } |
||
77 | if (record.get("type") === "node") { |
||
78 | if(!Ext.isEmpty(record.get("image"))) { |
||
79 | record.set("icon", record.get("image").url); |
||
80 | } |
||
81 | //record.set('iconCls', "graphNodeType");
|
||
82 | //record.set("readme", record.get("description"));
|
||
83 | //record.set("expanded", false);
|
||
84 | //record.set("leaf", false);
|
||
85 | //console.log(record);
|
||
86 | //record.collapseChildren();
|
||
87 | } |
||
88 | } |
||
89 | |||
90 | } |
||
91 | } |
||
92 | }); |
||
93 | }, |
||
94 | collapseRecursive: function(node){ |
||
95 | if(node.childNodes != []) {
|
||
96 | for(var i=0; i<node.childNodes.length; i++){ |
||
97 | this.collapseRecursive(node.childNodes[i]);
|
||
98 | node.childNodes[i].collapse(); |
||
99 | } |
||
100 | |||
101 | } |
||
102 | } |
||
103 | |||
104 | }); |