Blame view

js/app/models/CatalogNode.js 3.27 KB
33705dc4   Benjamin Renard   Catalog visu rework
1
/**
f792a3de   elena   catalog ihm
2
3
4
5
6
7
8
9
10
11
 * Project  : AMDA-NG
 * Name     : CatalogNode.js
 * @class   amdaModel.CatalogNode
 * @extends amdaModel.TimeTableNode
 * @brief   Basic Model of Node corresponding to a amda catalog
 * @author  elena
 */

Ext.define('amdaModel.CatalogNode', {

3a5f60a1   elena   proper use os sta...
12
	extend: 'amdaModel.TimeTableNode',
33705dc4   Benjamin Renard   Catalog visu rework
13

3a5f60a1   elena   proper use os sta...
14
15
16
17
	statics: {
		nodeType: 'catalog',
		objectName: 'Catalog'
	},
f792a3de   elena   catalog ihm
18

3a5f60a1   elena   proper use os sta...
19
	constructor : function(config)
33705dc4   Benjamin Renard   Catalog visu rework
20
	{
3a5f60a1   elena   proper use os sta...
21
22
23
24
25
		this.callParent(arguments)
		this.set('moduleId',myDesktopApp.dynamicModules.catalog.id);
		this.set('objectDataModel',amdaModel.Catalog.$className);
		if (this.get('leaf')) this.set('iconCls', 'icon-catalog');
	},
33705dc4   Benjamin Renard   Catalog visu rework
26

eec153c1   Elena.Budnik   formattage, netto...
27
28
29
30
31
32
33
34
35
36
37
38
	localMenuItems : function() {
		var menuItems =
		[
		{
			fnId : 'leaf-shareLeaf',
			text : 'Share '+this.self.objectName,
			hidden : true
		},{
			fnId : 'leaf-download',
			text : 'Download '+ this.self.objectName,
			hidden : true
		},{
84a1734b   Hacene SI HADJ MOHAND   us 7833 plot TT c...
39
40
41
42
                                                            fnId : 'leaf-plot',
                                                            text : 'Plot '+ this.self.objectName,
                                                            hidden : true
                                        },{
eec153c1   Elena.Budnik   formattage, netto...
43
44
45
			fnId : 'leaf-visu',
			text : 'Visualize '+ this.self.objectName,
			hidden : true
d547a559   Hacene SI HADJ MOHAND   rm_6903 ok
46
47
48
		},{
			fnId : 'leaf-generateTT',
			text : 'Generate Time Table ',
84a1734b   Hacene SI HADJ MOHAND   us 7833 plot TT c...
49
			hidden : true
d547a559   Hacene SI HADJ MOHAND   rm_6903 ok
50
51
		}
            ];
33705dc4   Benjamin Renard   Catalog visu rework
52

eec153c1   Elena.Budnik   formattage, netto...
53
54
		return menuItems;
	},
d18b535d   elena   catalog draft + c...
55

eec153c1   Elena.Budnik   formattage, netto...
56
57
58
59
60
61
62
63
	localMultiMenuItems : function() {
		var menuItems =
		[{
			fnId : 'mult-shareMulti',
			text : 'Share selected '+this.self.objectName+'s'
		},{
			fnId : 'mult-downloadMulti',
			text : 'Download selected '+this.self.objectName+'s'
84a1734b   Hacene SI HADJ MOHAND   us 7833 plot TT c...
64
65
66
		},{
			fnId : 'mult-plotMulti',
			text : 'Plot selected '+this.self.objectName+'s'
eec153c1   Elena.Budnik   formattage, netto...
67
		}];
33705dc4   Benjamin Renard   Catalog visu rework
68

eec153c1   Elena.Budnik   formattage, netto...
69
70
71
		return menuItems;
	},

33705dc4   Benjamin Renard   Catalog visu rework
72
	shareNode: function(node) {
eec153c1   Elena.Budnik   formattage, netto...
73
74
75
76
		myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.catalog.id, true, function (module) {
			module.shareCatalog({'name' : node.get('text'), 'id' : node.get('id')});
		});
	},
33705dc4   Benjamin Renard   Catalog visu rework
77

b0720b91   Benjamin Renard   Finalize catalog ...
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
	visu : function(node) {
    var me = this;

    var visuWinFunc = function(object) {
      myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.visu.id, true, function (module) {
        module.visualize(object);
      });
    };

    amdaModel.InteractiveNode.preloadNodes(this.getRootNode(),
		function()
		{
      if (me.get('object')) {
        visuWinFunc(me.get('object'));
			}
			else
			{
				AmdaAction.getObject(me.get('id'), me.get('nodeType'), function (result,remoteEvent) {
          var t = remoteEvent.getTransaction();

      		if (result) {
      			var paramObj = Ext.create(me.get('objectDataModel'), result);
      			// set parameter into node
      			me.set('object',paramObj);
      			// Edition of parameter into parameter Module
      			visuWinFunc(me.get('object'));
      		}
      		else {
      			myDesktopApp.errorMsg(t.action + "." + t.method + " : No catalog '"
      			+ this.get('name') + "' found!");
      		}
      	}, me);
			}
		});


		//var me = this;
		//myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.visu.id, true, function (module) {
    //  module.visualize(me);
eec153c1   Elena.Budnik   formattage, netto...
117
			// Catalog & TimeTable nodes normally use no objects in the tree
b0720b91   Benjamin Renard   Finalize catalog ...
118
/*			var obj = {'id' : me.get('id'), 'name' : me.get('text') };
33705dc4   Benjamin Renard   Catalog visu rework
119
120
121
			object = Ext.create(me.get('objectDataModel'), obj);
			me.set('object',object);
			module.setLinkedNode(me);
b0720b91   Benjamin Renard   Finalize catalog ...
122
123
			module.createWindow();*/
		//});
9b93ada1   Hacene SI HADJ MOHAND   shared cat to tt ok
124
	}
f792a3de   elena   catalog ihm
125
});