it-logica-application-backbone 1.0.10 → 1.0.11

Sign up to get free protection for your applications and to get access to all the features.
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: