it-logica-application-backbone 1.0.24 → 1.0.25
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.
|
1
|
+
1.0.25
|
@@ -1,4 +1,6 @@
|
|
1
1
|
class TableSorting
|
2
|
+
@max_together = 2
|
3
|
+
|
2
4
|
@change_sorting: (form_id, order_by_value, dir, obj) ->
|
3
5
|
order_by_value = order_by_value.toLowerCase()
|
4
6
|
dir = dir.toLowerCase()
|
@@ -37,6 +39,7 @@ class TableSorting
|
|
37
39
|
|
38
40
|
else # i am not ordering by element value, I will append it to end
|
39
41
|
#console.log("pridavam")
|
42
|
+
order_by_array.pop() if order_by_array.length >= TableSorting.max_together
|
40
43
|
order_by_array.push(order_by_value + " " + dir)
|
41
44
|
|
42
45
|
|
@@ -399,19 +399,37 @@ module ModelMixins
|
|
399
399
|
end
|
400
400
|
end
|
401
401
|
|
402
|
+
|
402
403
|
if per_page && per_page > 0
|
403
404
|
# only when i need pagination
|
404
405
|
if total_count.blank?
|
405
406
|
# if I call this more times, I can pass the total count and not count it multiple times
|
406
|
-
|
407
407
|
# fuck will paginate, if there are agregated queries that I use for condition, will_paginage will delete it
|
408
408
|
# i am counting rows on my own (as sugested in will paginete gem, when the query got more complex)
|
409
|
-
if
|
410
|
-
|
409
|
+
if (settings[:total_count_cache].blank?)
|
410
|
+
# I am not caching total count. Be advised in table cca. 200 000 rows total count take about 1 second to compute, it very much.
|
411
|
+
if object.respond_to?(:klass)
|
412
|
+
mysql_count = object.klass.find_by_sql("SELECT COUNT(*) AS count_all FROM (" + ret.selection(settings).to_sql + ") count")
|
413
|
+
else
|
414
|
+
mysql_count = object.find_by_sql("SELECT COUNT(*) AS count_all FROM (" + ret.selection(settings).to_sql + ") count")
|
415
|
+
end
|
416
|
+
|
417
|
+
ret = ret.paginate(:page => params[:page], :per_page => per_page, :total_entries => mysql_count.first[:count_all])
|
411
418
|
else
|
412
|
-
|
419
|
+
# I am caching total count
|
420
|
+
# todo find out how to cache this when everything can change, maybe I can cache only not filtered version
|
421
|
+
# !!!!!!1 dont turn this on till then
|
422
|
+
|
423
|
+
total_count = Rails.cache.fetch(settings[:form_id] + "__cached_total_count", :expires_in => settings[:total_count_cache]) do
|
424
|
+
if object.respond_to?(:klass)
|
425
|
+
mysql_count = object.klass.find_by_sql("SELECT COUNT(*) AS count_all FROM (" + ret.selection(settings).to_sql + ") count")
|
426
|
+
else
|
427
|
+
mysql_count = object.find_by_sql("SELECT COUNT(*) AS count_all FROM (" + ret.selection(settings).to_sql + ") count")
|
428
|
+
end
|
429
|
+
mysql_count.first[:count_all]
|
430
|
+
end
|
431
|
+
ret = ret.paginate(:page => params[:page], :per_page => per_page, :total_entries => total_count)
|
413
432
|
end
|
414
|
-
ret = ret.paginate(:page => params[:page], :per_page => per_page, :total_entries => mysql_count.first[:count_all])
|
415
433
|
else
|
416
434
|
ret = ret.paginate(:page => params[:page], :per_page => per_page, :total_entries => total_count)
|
417
435
|
end
|
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.
|
4
|
+
version: 1.0.25
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-09-06 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: htmlentities
|
16
|
-
requirement: &
|
16
|
+
requirement: &72605220 !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: *
|
24
|
+
version_requirements: *72605220
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: shoulda
|
27
|
-
requirement: &
|
27
|
+
requirement: &72604880 !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: *
|
35
|
+
version_requirements: *72604880
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rdoc
|
38
|
-
requirement: &
|
38
|
+
requirement: &72604600 !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: *
|
46
|
+
version_requirements: *72604600
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bundler
|
49
|
-
requirement: &
|
49
|
+
requirement: &72604290 !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: *
|
57
|
+
version_requirements: *72604290
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: jeweler
|
60
|
-
requirement: &
|
60
|
+
requirement: &72603880 !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: *
|
68
|
+
version_requirements: *72603880
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: simplecov
|
71
|
-
requirement: &
|
71
|
+
requirement: &72603330 !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: *
|
79
|
+
version_requirements: *72603330
|
80
80
|
description: longer description of your gem
|
81
81
|
email: ladislav.smola@it-logica.cz
|
82
82
|
executables: []
|
@@ -576,7 +576,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
576
576
|
version: '0'
|
577
577
|
segments:
|
578
578
|
- 0
|
579
|
-
hash:
|
579
|
+
hash: 779687315
|
580
580
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
581
581
|
none: false
|
582
582
|
requirements:
|