it-logica-application-backbone 1.0.10 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.10
1
+ 1.0.11
@@ -0,0 +1,22 @@
1
+ class TableSummaries
2
+ @refresh:(obj) ->
3
+ if obj.summaries?
4
+ for summary in obj.summaries
5
+ do (summary) ->
6
+ if (summary.summary_content_id? && summary.value?)
7
+ $("#" + summary.summary_content_id).html(summary.value)
8
+ if summary.class?
9
+ $("#" + summary.summary_content_id).removeClass();
10
+ $("#" + summary.summary_content_id).addClass(summary.class)
11
+
12
+ return
13
+
14
+
15
+
16
+
17
+ window.TableSummaries = TableSummaries
18
+
19
+
20
+
21
+
22
+
@@ -18,7 +18,7 @@
18
18
  <% if settings[:template].blank? %>
19
19
  var initial_parsed_data = jQuery.parseJSON('<%= j settings.to_json.html_safe %>');
20
20
  var html_from_json = TableBuilder.render_tbody(initial_parsed_data);
21
-
21
+ TableSummaries.refresh(initial_parsed_data);
22
22
 
23
23
  $("#<%= settings[:form_id] %>_ajax_content").html(html_from_json);
24
24
  apply_modifiers_of_the_table($("#<%= settings[:form_id] %>_ajax_content"));
@@ -41,6 +41,7 @@
41
41
  <% if settings[:template].blank? %>
42
42
  var parsed_settings = jQuery.parseJSON(parsed_response['settings'])
43
43
  var html_from_json = TableBuilder.render_tbody(parsed_settings);
44
+ TableSummaries.refresh(parsed_settings);
44
45
 
45
46
 
46
47
  $("#<%= settings[:form_id] %>_ajax_content").html(html_from_json);
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "it-logica-application-backbone"
8
- s.version = "1.0.10"
8
+ s.version = "1.0.11"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Ladas"]
@@ -144,6 +144,7 @@ Gem::Specification.new do |s|
144
144
  "app/assets/javascripts/backbone_js/ladas_saving.js",
145
145
  "app/assets/javascripts/backbone_js/ladas_table_builder.js.coffee",
146
146
  "app/assets/javascripts/backbone_js/ladas_table_for.js",
147
+ "app/assets/javascripts/backbone_js/ladas_table_summaries.js.coffee",
147
148
  "app/assets/javascripts/backbone_js/ladas_tinymce.js",
148
149
  "app/assets/javascripts/backbone_js/load-image.min.js",
149
150
  "app/assets/javascripts/backbone_js/tinymce/changelog.txt",
@@ -21,7 +21,9 @@ module ModelMixins
21
21
  items = not_selected_items.selection(settings)
22
22
  end
23
23
 
24
+
24
25
  if settings[:template].blank?
26
+ # initialize another_global_formats,another_formats and column_methods
25
27
  another_global_formats = []
26
28
  another_formats = []
27
29
  column_methods = []
@@ -52,10 +54,12 @@ module ModelMixins
52
54
  end
53
55
 
54
56
 
57
+ # the array of items, Will be filled with column method values, formatting values
55
58
  all_items = items.all # maybe can be done more optimal
56
- # same as template_items below, loads objects so column method are better to use
57
- # todo think about, but I dont need object, because it's making the same query twice, I just need class and with one outer join it return filtered data, and i include includes to it
58
- #template_items = object.joins("RIGHT OUTER JOIN (" + not_selected_items.select(settings[:row][:id] + " AS row_id").to_sql + ") temp_template_query ON #{settings[:row][:id]} = temp_template_query.row_id")
59
+ # same as template_items below, loads objects so column method are better to use
60
+ # todo think about, but I dont need object, because it's making the same query twice, I just need class and with one outer join it return filtered data, and i include includes to it
61
+ #template_items = object.joins("RIGHT OUTER JOIN (" + not_selected_items.select(settings[:row][:id] + " AS row_id").to_sql + ") temp_template_query ON #{settings[:row][:id]} = temp_template_query.row_id")
62
+ # the AREL with items
59
63
  if object.respond_to?(:klass)
60
64
  template_items = object.klass.joins("RIGHT OUTER JOIN (" + items.uniq.to_sql + ") temp_template_query ON #{settings[:row][:id]} = temp_template_query.row_id")
61
65
  else
@@ -68,6 +72,7 @@ module ModelMixins
68
72
  # todo dat do knowledge base, kdyz chci aby fungoval include nesmim volat all
69
73
  #template_items.each {|t| t.meeting_registrations.each {|x| puts x.inspect}}
70
74
 
75
+ # calling column methods
71
76
  another_columns = {}
72
77
  unless column_methods.blank?
73
78
  column_method_settings = {:params => params}
@@ -88,8 +93,9 @@ module ModelMixins
88
93
  end
89
94
  end
90
95
 
91
- if another_global_formats.blank? && another_formats.blank? && column_methods.blank?
92
- items_array = items
96
+ # updating items by another_global_formats,another_formats, column_methods, summary_methods
97
+ if another_global_formats.blank? && another_formats.blank? && column_methods.blank? &&
98
+ items_array = items
93
99
  else
94
100
  items_array = []
95
101
  all_items.each do |i|
@@ -136,6 +142,35 @@ module ModelMixins
136
142
  template_items = template_items.includes(settings[:includes])
137
143
  settings.merge!({:data => template_items})
138
144
  end
145
+
146
+ # summary_methods
147
+ unless settings[:summaries].blank?
148
+ summaries = settings[:summaries]
149
+ summaries.each do |summary|
150
+ summary_settings = {:params => params}
151
+ summary_settings[:summary_params] = summary[:summary_params]
152
+
153
+ if summary[:summary_class].blank?
154
+ if object.respond_to?(:klass)
155
+ val = object.klass.send(summary[:summary_method], logged_user, all_items, template_items, object, summary_settings)
156
+ else
157
+ val = object.send(summary[:summary_method], logged_user, all_items, template_items, object, summary_settings)
158
+ end
159
+ else
160
+ summary_class = summary[:summary_class].constantize if summary[:summary_class].kind_of?(String)
161
+ val = summary_class.send(summary[:summary_method], logged_user, all_items, template_items, object, summary_settings)
162
+ end
163
+ if val.kind_of?(Hash)
164
+ summary[:value] = val[:value]
165
+ summary[:class] = val[:class]
166
+ else
167
+ summary[:value] = val
168
+ end
169
+ end
170
+
171
+ end
172
+
173
+
139
174
  settings.merge!({:data_paginate => items})
140
175
  settings.merge!({:params => params})
141
176
  settings
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: it-logica-application-backbone
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.10
4
+ version: 1.0.11
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-08-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: htmlentities
16
- requirement: &72117400 !ruby/object:Gem::Requirement
16
+ requirement: &82712690 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *72117400
24
+ version_requirements: *82712690
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: shoulda
27
- requirement: &72541130 !ruby/object:Gem::Requirement
27
+ requirement: &82712420 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *72541130
35
+ version_requirements: *82712420
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rdoc
38
- requirement: &72540830 !ruby/object:Gem::Requirement
38
+ requirement: &82712150 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '3.12'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *72540830
46
+ version_requirements: *82712150
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: bundler
49
- requirement: &72540550 !ruby/object:Gem::Requirement
49
+ requirement: &82711820 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.1.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *72540550
57
+ version_requirements: *82711820
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: jeweler
60
- requirement: &72540280 !ruby/object:Gem::Requirement
60
+ requirement: &82711530 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.8.4
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *72540280
68
+ version_requirements: *82711530
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: simplecov
71
- requirement: &72539960 !ruby/object:Gem::Requirement
71
+ requirement: &82711220 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *72539960
79
+ version_requirements: *82711220
80
80
  description: longer description of your gem
81
81
  email: ladislav.smola@it-logica.cz
82
82
  executables: []
@@ -212,6 +212,7 @@ files:
212
212
  - app/assets/javascripts/backbone_js/ladas_saving.js
213
213
  - app/assets/javascripts/backbone_js/ladas_table_builder.js.coffee
214
214
  - app/assets/javascripts/backbone_js/ladas_table_for.js
215
+ - app/assets/javascripts/backbone_js/ladas_table_summaries.js.coffee
215
216
  - app/assets/javascripts/backbone_js/ladas_tinymce.js
216
217
  - app/assets/javascripts/backbone_js/load-image.min.js
217
218
  - app/assets/javascripts/backbone_js/tinymce/changelog.txt
@@ -570,7 +571,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
570
571
  version: '0'
571
572
  segments:
572
573
  - 0
573
- hash: 682408813
574
+ hash: -380196145
574
575
  required_rubygems_version: !ruby/object:Gem::Requirement
575
576
  none: false
576
577
  requirements: