caboose-cms 0.4.98 → 0.4.99
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/app/models/caboose/page_bar_generator.rb +36 -8
- data/lib/caboose/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZGExNDQyODU4OTg2YmNhMDQyNDNlMThiYWIyOTY0NjAxMjU2MzkyNA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MjcwZThhMzJmNjkwNWM5NGIyN2U2MjIwOTAzN2ZjNDYyYmZkNTc0OA==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZmQ0MWYxNzQ0Zjc5NjE3Yzk2Y2JhMTZjNDFjYmI4YTA5MTJlNWRmODY2Zjgz
|
10
|
+
NmFmYzViMDMwOWMyZGE5MWIxZTNkZjdiMmRhNjJhZjA3ZWNmZWQ3YmQ5ODI2
|
11
|
+
ZmFkMjI5ZWQ2ZDk2MWNmOTk4YjkyYjczZjIyMjMyOTVhZWFiYWM=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YmI2MzlhMzM0ZTJmYTgxMWMwMjIwNjVmZDY1ZDBlMjIwNjQ5YmJhNDJlOWZl
|
14
|
+
YmI0ZWExOGVjYTdmNDVjOTc3NjhiYTU4NGI5MjQ0NzJiYzJmOGZiYjFjMzI5
|
15
|
+
YjdkYjVkMzllNDUxOTE4Mzg5Y2Y4M2I2OGMxNzFjMTI0MjI3ZDE=
|
@@ -21,7 +21,7 @@ module Caboose
|
|
21
21
|
# itemsPerPage: Number of items you want to show per page. Defaults to 10 if not present.
|
22
22
|
# page: Current page number. Defaults to 0 if not present.
|
23
23
|
#
|
24
|
-
attr_accessor :original_params, :params, :options, :custom_url_vars
|
24
|
+
attr_accessor :original_params, :params, :options, :custom_url_vars, :post_get
|
25
25
|
|
26
26
|
#def initialize(post_get, params = nil, options = nil, &custom_url_vars = nil)
|
27
27
|
def initialize(post_get, params = nil, options = nil)
|
@@ -31,6 +31,7 @@ module Caboose
|
|
31
31
|
|
32
32
|
# Note: a few keys are required:
|
33
33
|
# base_url, page, itemCount, itemsPerPage
|
34
|
+
@post_get = post_get
|
34
35
|
@original_params = {}
|
35
36
|
@params = {}
|
36
37
|
@options = {
|
@@ -83,7 +84,10 @@ module Caboose
|
|
83
84
|
end
|
84
85
|
|
85
86
|
def set_item_count
|
86
|
-
|
87
|
+
m = model_with_includes.where(self.where)
|
88
|
+
n = self.near
|
89
|
+
m = m.near(n[0], n[1]) if n
|
90
|
+
@options['item_count'] = m.count
|
87
91
|
end
|
88
92
|
|
89
93
|
def model_with_includes
|
@@ -146,21 +150,29 @@ module Caboose
|
|
146
150
|
end
|
147
151
|
|
148
152
|
def items
|
149
|
-
|
153
|
+
assoc = model_with_includes.where(self.where)
|
154
|
+
n = self.near
|
155
|
+
assoc = assoc.near(n[0], n[1]) if n
|
150
156
|
if @options['items_per_page'] != -1
|
151
|
-
assoc = assoc.limit(limit).offset(offset)
|
157
|
+
assoc = assoc.limit(self.limit).offset(self.offset)
|
152
158
|
end
|
153
|
-
return assoc.reorder(reorder).all
|
159
|
+
return assoc.reorder(self.reorder).all
|
154
160
|
end
|
155
161
|
|
156
162
|
def all_items
|
157
|
-
|
163
|
+
m = model_with_includes.where(self.where)
|
164
|
+
n = self.near
|
165
|
+
m = m.near(n[0], n[1]) if n
|
166
|
+
return m.all
|
158
167
|
end
|
159
168
|
|
160
169
|
def item_values(attribute)
|
161
170
|
arr = []
|
162
|
-
model_with_includes.where(where)
|
163
|
-
|
171
|
+
m = model_with_includes.where(self.where)
|
172
|
+
n = self.near
|
173
|
+
m = m.near(n[0], n[1]) if n
|
174
|
+
m.all.each do |m2|
|
175
|
+
arr << m2[attribute]
|
164
176
|
end
|
165
177
|
return arr.uniq
|
166
178
|
end
|
@@ -305,6 +317,7 @@ module Caboose
|
|
305
317
|
table = @options['model'].constantize.table_name
|
306
318
|
@params.each do |k,v|
|
307
319
|
next if v.nil? || (v.kind_of?(String) && v.length == 0)
|
320
|
+
next if k.ends_with?('_near')
|
308
321
|
|
309
322
|
col = nil
|
310
323
|
if @options['includes'] && @options['includes'].include?(k)
|
@@ -396,6 +409,21 @@ module Caboose
|
|
396
409
|
return sql
|
397
410
|
end
|
398
411
|
|
412
|
+
def near
|
413
|
+
@params.each do |k,v|
|
414
|
+
next if !k.ends_with?('_near')
|
415
|
+
arr = k.split('_')
|
416
|
+
if arr.length == 3
|
417
|
+
location = @post_get[arr[0]]
|
418
|
+
radius = @post_get[arr[1]]
|
419
|
+
v = [location, radius] if location && radius && location.strip.length > 0 && radius.strip.length > 0
|
420
|
+
end
|
421
|
+
next if v.nil? || !v.is_a?(Array) || v.count != 2
|
422
|
+
return v
|
423
|
+
end
|
424
|
+
return nil
|
425
|
+
end
|
426
|
+
|
399
427
|
def limit
|
400
428
|
return @options['items_per_page'].to_i
|
401
429
|
end
|
data/lib/caboose/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: caboose-cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.99
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- William Barry
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|