admino 0.0.17 → 0.0.18
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/admino/query/base.rb +15 -9
- data/lib/admino/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e115cafc7d24ac251e1f500199b1b18b3bc70b56
|
4
|
+
data.tar.gz: 9482479f4a69e0ee09760fe04afe784ead68c39e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f3053d735e38636af984dece01372e44a0b0f54320d718def74d48145430594b3e8b4d050a352bffda3e05488da6b68d012a991da829f76d888476135236579
|
7
|
+
data.tar.gz: c1b7f8548ee8a7b62513ce9c14c39fbf1d3dcd1172d53e73d053daf8c68f1671aa3f4587f69d3793eb70aed54f94ba8399802a427b6daff3561078b29209ba75
|
data/lib/admino/query/base.rb
CHANGED
@@ -41,15 +41,7 @@ module Admino
|
|
41
41
|
raise ArgumentError, 'no starting scope provided'
|
42
42
|
end
|
43
43
|
|
44
|
-
|
45
|
-
scope_augmenters = search_fields + filter_groups
|
46
|
-
scope_augmenters << sorting if sorting
|
47
|
-
|
48
|
-
scope_augmenters.each do |search_field|
|
49
|
-
query_builder = search_field.augment_scope(query_builder)
|
50
|
-
end
|
51
|
-
|
52
|
-
scope = query_builder.scope
|
44
|
+
scope = augment_scope(Builder.new(self, starting_scope)).scope
|
53
45
|
|
54
46
|
if config.ending_scope_callable
|
55
47
|
scope.instance_exec(self, &config.ending_scope_callable)
|
@@ -84,6 +76,20 @@ module Admino
|
|
84
76
|
|
85
77
|
private
|
86
78
|
|
79
|
+
def augment_scope(query_builder)
|
80
|
+
scope_augmenters.each do |augmenter|
|
81
|
+
query_builder = augmenter.augment_scope(query_builder)
|
82
|
+
end
|
83
|
+
|
84
|
+
query_builder
|
85
|
+
end
|
86
|
+
|
87
|
+
def scope_augmenters
|
88
|
+
scope_augmenters = search_fields + filter_groups
|
89
|
+
scope_augmenters << sorting if sorting
|
90
|
+
scope_augmenters
|
91
|
+
end
|
92
|
+
|
87
93
|
def init_filter_groups
|
88
94
|
@filter_groups = {}
|
89
95
|
i18n_key = self.class.model_name.i18n_key
|
data/lib/admino/version.rb
CHANGED