knitkit 2.0.5 → 2.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/app/controllers/knitkit/erp_app/desktop/app_controller.rb +5 -8
  2. data/app/controllers/knitkit/erp_app/desktop/articles_controller.rb +11 -8
  3. data/app/controllers/knitkit/erp_app/desktop/content_controller.rb +26 -4
  4. data/app/controllers/knitkit/erp_app/desktop/file_assets_controller.rb +49 -35
  5. data/app/controllers/knitkit/erp_app/desktop/image_assets_controller.rb +30 -21
  6. data/app/controllers/knitkit/erp_app/desktop/theme_controller.rb +41 -32
  7. data/app/controllers/knitkit/erp_app/desktop/website_controller.rb +0 -6
  8. data/app/controllers/knitkit/erp_app/desktop/website_section_controller.rb +42 -6
  9. data/app/{models → mailers}/website_inquiry_mailer.rb +0 -0
  10. data/app/models/article.rb +4 -0
  11. data/app/models/content.rb +0 -4
  12. data/app/models/theme.rb +3 -3
  13. data/app/models/website.rb +44 -17
  14. data/app/views/knitkit/website_sections/index.html.erb +1 -1
  15. data/app/views/layouts/knitkit/base.html.erb +6 -0
  16. data/app/views/shared/knitkit/_footer.html.erb +2 -2
  17. data/app/widgets/signup/base.rb +0 -2
  18. data/db/data_migrations/20120809020508_update_website_and_configuration.rb +77 -0
  19. data/lib/knitkit/engine.rb +4 -0
  20. data/lib/knitkit/extensions.rb +4 -1
  21. data/lib/knitkit/extensions/action_controller/theme_support/acts_as_themed_controller.rb +36 -33
  22. data/lib/knitkit/extensions/action_mailer/theme_support/acts_as_themed_mailer.rb +60 -0
  23. data/lib/knitkit/extensions/active_record/acts_as_commentable.rb +9 -4
  24. data/lib/knitkit/extensions/active_record/acts_as_document.rb +1 -1
  25. data/lib/knitkit/extensions/compass_ae/widgets/base.rb +21 -1
  26. data/lib/knitkit/extensions/compass_ae/widgets/widget_proxy_controller.rb +26 -0
  27. data/lib/knitkit/extensions/railties/action_view/base.rb +11 -0
  28. data/lib/knitkit/extensions/railties/action_view/helpers/blog_helper.rb +62 -0
  29. data/lib/knitkit/extensions/railties/action_view/helpers/content_helper.rb +83 -0
  30. data/lib/knitkit/extensions/railties/action_view/helpers/knitkit_helper.rb +67 -0
  31. data/lib/knitkit/extensions/railties/action_view/helpers/menu_helper.rb +71 -0
  32. data/lib/knitkit/version.rb +1 -1
  33. data/public/images/knitkit/close.png +0 -0
  34. data/public/javascripts/erp_app/desktop/applications/knitkit/articles_grid_panel.js +150 -400
  35. data/public/javascripts/erp_app/desktop/applications/knitkit/center_region.js +687 -593
  36. data/public/javascripts/erp_app/desktop/applications/knitkit/east_region.js +1 -2
  37. data/public/javascripts/erp_app/desktop/applications/knitkit/file_assets_panel.js +39 -15
  38. data/public/javascripts/erp_app/desktop/applications/knitkit/image_assets_data_view.js +1 -1
  39. data/public/javascripts/erp_app/desktop/applications/knitkit/image_assets_panel.js +65 -126
  40. data/public/javascripts/erp_app/desktop/applications/knitkit/module.js +65 -1
  41. data/public/javascripts/erp_app/desktop/applications/knitkit/section_articles_grid_panel.js +265 -183
  42. data/public/javascripts/erp_app/desktop/applications/knitkit/themes_tree_panel.js +24 -9
  43. data/public/javascripts/erp_app/desktop/applications/knitkit/versions_grid_panel.js +631 -595
  44. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/document.js +265 -0
  45. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/host.js +133 -0
  46. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/menu.js +174 -0
  47. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/section.js +399 -0
  48. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/website.js +165 -0
  49. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/website_nav_items.js +266 -0
  50. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/west_region.js +1224 -0
  51. data/public/javascripts/knitkit/inline_editing.js +136 -0
  52. data/public/stylesheets/extjs/resources/css/knitkit_extjs_4.css +1 -2
  53. data/public/stylesheets/knitkit/inline_editing.css +88 -0
  54. data/public/stylesheets/knitkit/style.css +1 -1
  55. metadata +47 -31
  56. data/lib/knitkit/extensions/railties/action_view.rb +0 -199
  57. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region.js +0 -2725
@@ -39,11 +39,10 @@ Ext.define("Compass.ErpApp.Desktop.Applications.Knitkit.EastRegion",{
39
39
 
40
40
  constructor : function(config) {
41
41
  config = Ext.apply({
42
- id:'knitkitEastRegion',
42
+ itemId:'knitkitEastRegion',
43
43
  region:'east',
44
44
  width:300,
45
45
  split:true,
46
- autoDestroy:true,
47
46
  collapsible:true
48
47
  }, config);
49
48
 
@@ -39,13 +39,16 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
39
39
  };
40
40
 
41
41
  this.sharedFileAssetsTreePanel = Ext.create("Compass.ErpApp.Shared.FileManagerTree",{
42
+ loadMask: true,
43
+ collapsible:false,
42
44
  title:'Shared',
45
+ rootText:'Shared Files',
43
46
  allowDownload:false,
44
47
  addViewContentsToContextMenu:false,
45
48
  rootVisible:true,
49
+ multiSelect:true,
46
50
  controllerPath:'/knitkit/erp_app/desktop/file_assets/shared',
47
51
  standardUploadUrl:'/knitkit/erp_app/desktop/file_assets/shared/upload_file',
48
- xhrUploadUrl:'/knitkit/erp_app/desktop/file_assets/shared/upload_file',
49
52
  url:'/knitkit/erp_app/desktop/file_assets/shared/expand_directory',
50
53
  containerScroll: true,
51
54
  additionalContextMenuItems:[{
@@ -56,7 +59,10 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
56
59
  scope:self,
57
60
  'click':function(){
58
61
  var node = this.sharedFileAssetsTreePanel.selectedNode;
59
- Ext.Msg.alert('Details', 'URL: /download/'+node.data.text+'?path='+node.data.downloadPath);
62
+ Ext.Msg.alert('Details', 'Filename: '+node.data.text +
63
+ '<br /> URL: '+node.data.url +
64
+ '<br /> Size: ' + node.data.size + ' bytes'
65
+ );
60
66
  }
61
67
  }
62
68
  },
@@ -70,7 +76,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
70
76
  var node = this.sharedFileAssetsTreePanel.selectedNode;
71
77
  Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
72
78
  if(btn == 'ok'){
73
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'">'+text+'</a>');
79
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'">'+text+'</a>');
74
80
  }
75
81
  });
76
82
  }
@@ -86,7 +92,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
86
92
  var node = this.sharedFileAssetsTreePanel.selectedNode;
87
93
  Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
88
94
  if(btn == 'ok'){
89
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=inline">'+text+'</a>');
95
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=inline">'+text+'</a>');
90
96
  }
91
97
  });
92
98
  }
@@ -102,7 +108,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
102
108
  var node = this.sharedFileAssetsTreePanel.selectedNode;
103
109
  Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
104
110
  if(btn == 'ok'){
105
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=attachment">'+text+'</a>');
111
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=attachment">'+text+'</a>');
106
112
  }
107
113
  });
108
114
  }
@@ -147,14 +153,16 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
147
153
  });
148
154
 
149
155
  this.websiteFileAssetsTreePanel = Ext.create("Compass.ErpApp.Shared.FileManagerTree",{
156
+ loadMask: true,
157
+ collapsible:false,
150
158
  autoLoadRoot:false,
151
159
  title:'Website',
152
160
  allowDownload:false,
153
161
  addViewContentsToContextMenu:false,
154
162
  rootVisible:true,
163
+ multiSelect:true,
155
164
  controllerPath:'/knitkit/erp_app/desktop/file_assets/website',
156
165
  standardUploadUrl:'/knitkit/erp_app/desktop/file_assets/website/upload_file',
157
- xhrUploadUrl:'/knitkit/erp_app/desktop/file_assets/website/upload_file',
158
166
  url:'/knitkit/erp_app/desktop/file_assets/website/expand_directory',
159
167
  containerScroll: true,
160
168
  additionalContextMenuItems:[{
@@ -165,7 +173,10 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
165
173
  scope:self,
166
174
  'click':function(){
167
175
  var node = this.websiteFileAssetsTreePanel.selectedNode;
168
- Ext.Msg.alert('Details', 'URL: /download/'+node.data.text+'?path='+node.data.downloadPath);
176
+ Ext.Msg.alert('Details', 'Filename: '+node.data.text +
177
+ '<br /> URL: '+node.data.url +
178
+ '<br /> Size: ' + node.data.size + ' bytes'
179
+ );
169
180
  }
170
181
  }
171
182
  },
@@ -179,7 +190,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
179
190
  var node = this.websiteFileAssetsTreePanel.selectedNode;
180
191
  Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
181
192
  if(btn == 'ok'){
182
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'">'+text+'</a>');
193
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'">'+text+'</a>');
183
194
  }
184
195
  });
185
196
  }
@@ -195,7 +206,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
195
206
  var node = this.websiteFileAssetsTreePanel.selectedNode;
196
207
  Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
197
208
  if(btn == 'ok'){
198
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=inline">'+text+'</a>');
209
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=inline">'+text+'</a>');
199
210
  }
200
211
  });
201
212
  }
@@ -211,7 +222,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
211
222
  var node = this.websiteFileAssetsTreePanel.selectedNode;
212
223
  Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
213
224
  if(btn == 'ok'){
214
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=attachment">'+text+'</a>');
225
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=attachment">'+text+'</a>');
215
226
  }
216
227
  });
217
228
  }
@@ -231,6 +242,10 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
231
242
  }],
232
243
  listeners:{
233
244
  scope:self,
245
+ 'load':function(store, node, records){
246
+ store.getRootNode().data.text = self.websiteName;
247
+ self.websiteFileAssetsTreePanel.view.refresh();
248
+ },
234
249
  'show': function(){
235
250
  self.reloadWebsiteFileAssetsTreePanel(self.websiteId);
236
251
  },
@@ -275,15 +290,14 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
275
290
  })
276
291
  });
277
292
 
278
- this.selectWebsite = function(websiteId){
293
+ this.selectWebsite = function(websiteId, websiteName){
279
294
  this.websiteId = websiteId;
280
- this.reloadWebsiteFileAssetsTreePanel(websiteId);
295
+ this.websiteName = websiteName;
281
296
  }
282
297
 
283
298
  this.reloadWebsiteFileAssetsTreePanel = function(websiteId){
284
299
  this.websiteFileAssetsTreePanel.extraPostData = {
285
- website_id:websiteId,
286
- websiteid:websiteId // for xhrFileUpload to work
300
+ website_id:websiteId
287
301
  };
288
302
  this.websiteFileAssetsTreePanel.getStore().setProxy({
289
303
  type: 'ajax',
@@ -292,6 +306,16 @@ Compass.ErpApp.Desktop.Applications.Knitkit.FileAssetsPanel = function(module) {
292
306
  website_id:websiteId
293
307
  }
294
308
  });
295
- this.websiteFileAssetsTreePanel.getStore().load();
309
+
310
+ if (websiteId){
311
+ while (delNode = this.websiteFileAssetsTreePanel.getRootNode().childNodes[0]) {
312
+ this.websiteFileAssetsTreePanel.getRootNode().removeChild(delNode);
313
+ }
314
+ this.websiteFileAssetsTreePanel.getRootNode().expand();
315
+
316
+ if (!this.websiteFileAssetsTreePanel.getStore().isLoading()){
317
+ this.websiteFileAssetsTreePanel.getStore().load();
318
+ }
319
+ }
296
320
  }
297
321
  }
@@ -21,7 +21,7 @@ Ext.define("Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsDataView",{
21
21
  tpl: new Ext.XTemplate(
22
22
  '<tpl for=".">',
23
23
  '<div class="thumb-wrap" id="{name}">',
24
- '<div class="thumb"><img src="{url}" alt="{name}" class="thumb-img"></div>',
24
+ '<div class="thumb"><img src="{url}" title="{name}" alt="{name}" class="thumb-img"></div>',
25
25
  '<span>{shortName}</span></div>',
26
26
  '</tpl>')
27
27
  }, config);
@@ -12,90 +12,49 @@ Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsPanel = function(module)
12
12
 
13
13
  this.sharedImageAssetsTreePanel = Ext.create("Compass.ErpApp.Shared.FileManagerTree",{
14
14
  region:'north',
15
- rootText:'Images',
16
- collapsible:true,
15
+ rootText:'Shared Images',
16
+ collapsible:false,
17
17
  allowDownload:false,
18
18
  addViewContentsToContextMenu:false,
19
19
  rootVisible:true,
20
+ multiSelect:true,
20
21
  controllerPath:'/knitkit/erp_app/desktop/image_assets/shared',
21
22
  standardUploadUrl:'/knitkit/erp_app/desktop/image_assets/shared/upload_file',
22
- xhrUploadUrl:'/knitkit/erp_app/desktop/image_assets/shared/upload_file',
23
23
  url:'/knitkit/erp_app/desktop/image_assets/shared/expand_directory',
24
24
  containerScroll: true,
25
25
  height:200,
26
- additionalContextMenuItems:[{
27
- nodeType:'leaf',
28
- text:'View Details',
29
- iconCls:'icon-add',
30
- listeners:{
31
- scope:self,
32
- 'click':function(){
33
- var node = this.sharedImageAssetsTreePanel.selectedNode;
34
- Ext.Msg.alert('Details', 'URL: /download/'+node.data.text+'?path='+node.data.downloadPath);
35
- }
36
- }
37
- },
26
+ additionalContextMenuItems:[
38
27
  {
39
28
  nodeType:'leaf',
40
- text:'Insert link at cursor',
29
+ text:'Insert image at cursor',
41
30
  iconCls:'icon-add',
42
31
  listeners:{
43
32
  scope:self,
44
33
  'click':function(){
45
34
  var node = this.sharedImageAssetsTreePanel.selectedNode;
46
- Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
47
- if(btn == 'ok'){
48
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'">'+text+'</a>');
49
- }
50
- });
35
+ var imgTagHtml = '<img';
36
+ if(!Ext.isEmpty(node.data.width) && !Ext.isEmpty(node.data.height)){
37
+ imgTagHtml += (' width="'+node.data.width+'" height="'+node.data.height+'"');
38
+ }
39
+ imgTagHtml += ' alt="'+node.data.text+'" src="/download/'+node.data.text+'?path='+node.data.downloadPath+'" />'
40
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror(imgTagHtml);
51
41
  }
52
42
  }
53
- },
54
- {
55
- nodeType:'leaf',
56
- text:'Insert link at cursor (inline)',
57
- iconCls:'icon-add',
58
- listeners:{
59
- scope:self,
60
- 'click':function(){
61
- var node = this.sharedImageAssetsTreePanel.selectedNode;
62
- Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
63
- if(btn == 'ok'){
64
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=inline">'+text+'</a>');
65
- }
43
+ }
44
+ ],
45
+ listeners:{
46
+ 'allowdelete':function(){
47
+ return currentUser.hasApplicationCapability('knitkit', {
48
+ capability_type_iid:'delete',
49
+ resource:'GlobalImageAsset'
66
50
  });
67
- }
68
- }
69
- },
70
- {
71
- nodeType:'leaf',
72
- text:'Insert link at cursor (prompt)',
73
- iconCls:'icon-add',
74
- listeners:{
75
- scope:self,
76
- 'click':function(){
77
- var node = this.sharedImageAssetsTreePanel.selectedNode;
78
- Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
79
- if(btn == 'ok'){
80
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=attachment">'+text+'</a>');
81
- }
51
+ },
52
+ 'allowupload':function(){
53
+ return currentUser.hasApplicationCapability('knitkit', {
54
+ capability_type_iid:'upload',
55
+ resource:'GlobalImageAsset'
82
56
  });
83
- }
84
- }
85
- }],
86
- listeners:{
87
- 'allowdelete':function(){
88
- return currentUser.hasApplicationCapability('knitkit', {
89
- capability_type_iid:'delete',
90
- resource:'GlobalImageAsset'
91
- });
92
- },
93
- 'allowupload':function(){
94
- return currentUser.hasApplicationCapability('knitkit', {
95
- capability_type_iid:'upload',
96
- resource:'GlobalImageAsset'
97
- });
98
- },
57
+ },
99
58
  'itemclick':function(view, record, item, index, e){
100
59
  e.stopEvent();
101
60
  if(!record.data["leaf"]){
@@ -112,11 +71,19 @@ Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsPanel = function(module)
112
71
  },
113
72
  'fileDeleted':function(fileTreePanel, node){
114
73
  var store = self.sharedImageAssetsDataView.getStore();
115
- store.load();
74
+ store.load({
75
+ params:{
76
+ directory:node.data.downloadPath
77
+ }
78
+ });
116
79
  },
117
80
  'fileUploaded':function(fileTreePanel, node){
118
81
  var store = self.sharedImageAssetsDataView.getStore();
119
- store.load();
82
+ store.load({
83
+ params:{
84
+ directory:node.data.id
85
+ }
86
+ });
120
87
  },
121
88
  'downloadfile':function(fileTreePanel, node){
122
89
  window.open("/download/"+node.data.text+"?path=" + node.data.downloadPath+'&disposition=attachment','mywindow','width=400,height=200');
@@ -129,77 +96,40 @@ Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsPanel = function(module)
129
96
  autoLoadRoot:false,
130
97
  region:'north',
131
98
  rootText:'Images',
132
- collapsible:true,
99
+ collapsible:false,
133
100
  allowDownload:false,
134
101
  addViewContentsToContextMenu:false,
135
102
  rootVisible:true,
103
+ multiSelect:true,
136
104
  controllerPath:'/knitkit/erp_app/desktop/image_assets/website',
137
105
  standardUploadUrl:'/knitkit/erp_app/desktop/image_assets/website/upload_file',
138
- xhrUploadUrl:'/knitkit/erp_app/desktop/image_assets/website/upload_file',
139
106
  url:'/knitkit/erp_app/desktop/image_assets/website/expand_directory',
140
107
  containerScroll: true,
141
108
  height:200,
142
- additionalContextMenuItems:[{
143
- nodeType:'leaf',
144
- text:'View Details',
145
- iconCls:'icon-add',
146
- listeners:{
147
- scope:self,
148
- 'click':function(){
149
- var node = this.websiteImageAssetsTreePanel.selectedNode;
150
- Ext.Msg.alert('Details', 'URL: /download/'+node.data.text+'?path='+node.data.downloadPath);
151
- }
152
- }
153
- },
154
- {
155
- nodeType:'leaf',
156
- text:'Insert link at cursor',
157
- iconCls:'icon-add',
158
- listeners:{
159
- scope:self,
160
- 'click':function(){
161
- var node = this.websiteImageAssetsTreePanel.selectedNode;
162
- Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
163
- if(btn == 'ok'){
164
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'">'+text+'</a>');
165
- }
166
- });
167
- }
168
- }
169
- },
109
+ additionalContextMenuItems:[
170
110
  {
171
111
  nodeType:'leaf',
172
- text:'Insert link at cursor (inline)',
112
+ text:'Insert image at cursor',
173
113
  iconCls:'icon-add',
174
114
  listeners:{
175
115
  scope:self,
176
116
  'click':function(){
177
117
  var node = this.websiteImageAssetsTreePanel.selectedNode;
178
- Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
179
- if(btn == 'ok'){
180
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=inline">'+text+'</a>');
181
- }
182
- });
183
- }
184
- }
185
- },
186
- {
187
- nodeType:'leaf',
188
- text:'Insert link at cursor (prompt)',
189
- iconCls:'icon-add',
190
- listeners:{
191
- scope:self,
192
- 'click':function(){
193
- var node = this.websiteImageAssetsTreePanel.selectedNode;
194
- Ext.MessageBox.prompt('Display Name', 'Please enter display name:', function(btn, text){
195
- if(btn == 'ok'){
196
- self.module.centerRegion.insertHtmlIntoActiveCkEditor('<a href="/download/'+node.data.text+'?path='+node.data.downloadPath+'&disposition=attachment">'+text+'</a>');
197
- }
198
- });
118
+ var imgTagHtml = '<img';
119
+ if(!Ext.isEmpty(node.data.width) && !Ext.isEmpty(node.data.height)){
120
+ imgTagHtml += (' width="'+node.data.width+'" height="'+node.data.height+'"');
121
+ }
122
+ imgTagHtml += ' alt="'+node.data.text+'" src="/download/'+node.data.text+'?path='+node.data.downloadPath+'" />'
123
+ self.module.centerRegion.insertHtmlIntoActiveCkEditorOrCodemirror(imgTagHtml);
199
124
  }
200
125
  }
201
- }],
126
+ }
127
+ ],
202
128
  listeners:{
129
+ 'load':function(store, node, records){
130
+ store.getRootNode().data.text = self.websiteName;
131
+ self.websiteImageAssetsTreePanel.view.refresh();
132
+ },
203
133
  'itemclick':function(view, record, item, index, e){
204
134
  if(self.websiteId != null){
205
135
  e.stopEvent();
@@ -220,7 +150,7 @@ Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsPanel = function(module)
220
150
  'fileDeleted':function(fileTreePanel, node){
221
151
  self.websiteImageAssetsDataView.getStore().load({
222
152
  params:{
223
- directory:node.data.id,
153
+ directory:node.data.downloadPath,
224
154
  website_id:self.websiteId
225
155
  }
226
156
  });
@@ -301,14 +231,14 @@ Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsPanel = function(module)
301
231
  })
302
232
  });
303
233
 
304
- this.selectWebsite = function(websiteId){
234
+ this.selectWebsite = function(websiteId, websiteName){
305
235
  this.websiteId = websiteId;
236
+ this.websiteName = websiteName;
306
237
  }
307
238
 
308
239
  this.reloadWebsiteImageAssetsTreePanel = function(websiteId){
309
240
  this.websiteImageAssetsTreePanel.extraPostData = {
310
- website_id:websiteId,
311
- websiteid:websiteId // for xhrFileUpload to work
241
+ website_id:websiteId
312
242
  };
313
243
  this.websiteImageAssetsTreePanel.getStore().setProxy({
314
244
  type: 'ajax',
@@ -317,7 +247,16 @@ Compass.ErpApp.Desktop.Applications.Knitkit.ImageAssetsPanel = function(module)
317
247
  website_id:websiteId
318
248
  }
319
249
  });
320
- this.websiteImageAssetsTreePanel.getStore().load();
321
- this.websiteImageAssetsDataView.getStore().removeAll();
250
+
251
+ if (websiteId){
252
+ while (delNode = this.websiteImageAssetsTreePanel.getRootNode().childNodes[0]) {
253
+ this.websiteImageAssetsTreePanel.getRootNode().removeChild(delNode);
254
+ }
255
+ this.websiteImageAssetsTreePanel.getRootNode().expand();
256
+
257
+ if (!this.websiteImageAssetsTreePanel.getStore().isLoading()){
258
+ this.websiteImageAssetsTreePanel.getStore().load();
259
+ }
260
+ }
322
261
  }
323
262
  }