custom_fielder 0.5.2 → 0.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/helpers/custom_fielder/deserialization_helper.rb +1 -2
- data/app/helpers/custom_fielder/type_checking_helper.rb +6 -30
- data/app/models/custom_fielder/custom_field.rb +7 -2
- data/lib/custom_fielder/custom_fieldable.rb +1 -2
- data/lib/custom_fielder/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: cdacf42418abc8f142f9b1d3bb6c5b56bc7b6f6e
|
4
|
+
data.tar.gz: 96102550d49e1010be766ad6b5a14c74af122306
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 59419c9269107788d0d037b31aebc4f8759aa20cec191c48941efa638ab0cb78d486f03b325763dd18298d73381563a2853f481c3521085b14e49c652e45ec19
|
7
|
+
data.tar.gz: e10506a2625bc86801a0eb7d0141522dd4e2acb85faa1450d154d59d37a769bde82930940c7d0db2b65ed4a32a5f51fd0d96b0ec8f2d40a4b7bb0b385147039a
|
@@ -15,66 +15,42 @@ module CustomFielder
|
|
15
15
|
# @return [Boolean]
|
16
16
|
#
|
17
17
|
def is_array?(value)
|
18
|
-
|
19
|
-
false
|
20
|
-
else
|
21
|
-
true
|
22
|
-
end
|
18
|
+
value =~ /^\[(.(, )?)+\]$/
|
23
19
|
end
|
24
20
|
|
25
21
|
##
|
26
22
|
# @return [Boolean]
|
27
23
|
#
|
28
24
|
def is_integer?(value)
|
29
|
-
|
30
|
-
false
|
31
|
-
else
|
32
|
-
true
|
33
|
-
end
|
25
|
+
value =~ /^\d+$/
|
34
26
|
end
|
35
27
|
|
36
28
|
##
|
37
29
|
# @return [Boolean]
|
38
30
|
#
|
39
31
|
def is_float?(value)
|
40
|
-
|
41
|
-
false
|
42
|
-
else
|
43
|
-
true
|
44
|
-
end
|
32
|
+
value =~ /^\d+\.\d+$/
|
45
33
|
end
|
46
34
|
|
47
35
|
##
|
48
36
|
# @return [Boolean]
|
49
37
|
#
|
50
38
|
def is_date?(value)
|
51
|
-
|
52
|
-
false
|
53
|
-
else
|
54
|
-
true
|
55
|
-
end
|
39
|
+
value =~ /^\d{4}-\d{2}-\d{2}$/
|
56
40
|
end
|
57
41
|
|
58
42
|
##
|
59
43
|
# @return [Boolean]
|
60
44
|
#
|
61
45
|
def is_date_time?(value)
|
62
|
-
|
63
|
-
false
|
64
|
-
else
|
65
|
-
true
|
66
|
-
end
|
46
|
+
value =~ /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}-\d{2}:\d{2}$/
|
67
47
|
end
|
68
48
|
|
69
49
|
##
|
70
50
|
# @return [Boolean]
|
71
51
|
#
|
72
52
|
def is_boolean?(value)
|
73
|
-
|
74
|
-
false
|
75
|
-
else
|
76
|
-
true
|
77
|
-
end
|
53
|
+
TRUTH_VALUES.include?(value) or FALSE_VALUES.include?(value)
|
78
54
|
end
|
79
55
|
|
80
56
|
##
|
@@ -15,7 +15,11 @@ module CustomFielder
|
|
15
15
|
scope :active, -> { where(active: true) }
|
16
16
|
scope :inactive, -> { where(active: false) }
|
17
17
|
|
18
|
+
scope :fields_with_class, -> (klass) { where(custom_fieldable_type: klass) }
|
18
19
|
scope :fields_with_attributes, -> (field_attrs) { where(field_attributes: field_attrs) }
|
20
|
+
scope :fields_with_class_and_attributes, -> (klass, field_attrs) do
|
21
|
+
where(custom_fieldable_type: klass, field_attributes: field_attrs)
|
22
|
+
end
|
19
23
|
|
20
24
|
##
|
21
25
|
# Because everything is stored as string with ActiveRecord
|
@@ -41,7 +45,7 @@ module CustomFielder
|
|
41
45
|
end
|
42
46
|
|
43
47
|
##
|
44
|
-
#
|
48
|
+
# Deactivates all CustomFields that belong to passed field attributes
|
45
49
|
#
|
46
50
|
# @param field_attrs [CustomField::FieldAttributes]
|
47
51
|
#
|
@@ -134,7 +138,7 @@ module CustomFielder
|
|
134
138
|
# @return [Nil] Adds error if invalid
|
135
139
|
#
|
136
140
|
def check_allowed_values
|
137
|
-
return
|
141
|
+
return unless allowed_values
|
138
142
|
value_not_allowed_error unless allowed_values.include?(value)
|
139
143
|
end
|
140
144
|
|
@@ -185,5 +189,6 @@ module CustomFielder
|
|
185
189
|
def default?
|
186
190
|
default and default != ''
|
187
191
|
end
|
192
|
+
|
188
193
|
end
|
189
194
|
end
|