rails_admin_settings 1.1.0.pre.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rspec +0 -0
  4. data/.ruby-gemset +0 -0
  5. data/.ruby-version +0 -0
  6. data/.travis.yml +0 -0
  7. data/CHANGELOG.md +19 -0
  8. data/Gemfile +0 -0
  9. data/Gemfile.lock +103 -119
  10. data/LICENSE.txt +0 -0
  11. data/README.md +4 -11
  12. data/Rakefile +0 -0
  13. data/app/models/rails_admin_settings/setting.rb +8 -0
  14. data/app/views/rails_admin/main/_setting_value.html.haml +22 -2
  15. data/config/locales/en.yml +0 -0
  16. data/config/locales/ru.yml +0 -0
  17. data/gemfiles/mongoid-3.1.gemfile +0 -0
  18. data/gemfiles/mongoid-4.0.gemfile +0 -0
  19. data/lib/generators/rails_admin_settings/migration_generator.rb +0 -0
  20. data/lib/generators/rails_admin_settings/templates/migration.rb +0 -0
  21. data/lib/rails_admin_settings/dumper.rb +0 -0
  22. data/lib/rails_admin_settings/engine.rb +0 -0
  23. data/lib/rails_admin_settings/fallback.rb +0 -0
  24. data/lib/rails_admin_settings/hex_color_validator.rb +0 -0
  25. data/lib/rails_admin_settings/kinds.rb +3 -1
  26. data/lib/rails_admin_settings/mongoid.rb +0 -0
  27. data/lib/rails_admin_settings/namespaced.rb +0 -0
  28. data/lib/rails_admin_settings/processing.rb +9 -2
  29. data/lib/rails_admin_settings/rails_admin_config.rb +2 -0
  30. data/lib/rails_admin_settings/require_helpers.rb +0 -0
  31. data/lib/rails_admin_settings/settings.rb +0 -0
  32. data/lib/rails_admin_settings/storage/carrierwave.rb +0 -0
  33. data/lib/rails_admin_settings/tasks.rb +0 -0
  34. data/lib/rails_admin_settings/uploads.rb +1 -1
  35. data/lib/rails_admin_settings/validation.rb +0 -0
  36. data/lib/rails_admin_settings/version.rb +1 -2
  37. data/lib/rails_admin_settings.rb +0 -0
  38. data/rails_admin_settings.gemspec +0 -0
  39. data/spec/advanced_usage_spec.rb +0 -0
  40. data/spec/carrierwave_spec.rb +0 -0
  41. data/spec/database_trickery_spec.rb +0 -0
  42. data/spec/defaults_spec.rb +8 -0
  43. data/spec/enabling_spec.rb +0 -0
  44. data/spec/factories/setting.rb +0 -0
  45. data/spec/label_spec.rb +0 -0
  46. data/spec/migration_spec.rb +0 -0
  47. data/spec/model_spec.rb +0 -0
  48. data/spec/namespaced_spec.rb +0 -0
  49. data/spec/paperclip_spec.rb +0 -0
  50. data/spec/settings_spec.rb +0 -0
  51. data/spec/spec_helper.rb +0 -0
  52. data/spec/support/database_cleaner.rb +0 -0
  53. data/spec/support/defaults.yml +10 -2
  54. data/spec/support/defaults_w_file.yml +0 -0
  55. data/spec/support/mongoid.rb +0 -0
  56. data/spec/support/mongoid.yml +0 -0
  57. data/spec/types_spec.rb +10 -1
  58. metadata +5 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4128eb2cbea4bc24d3b020923ee7824fb69aee2a
4
- data.tar.gz: 9399ca1e1706716eb39866ce3119edf27dbc5ddb
3
+ metadata.gz: eb8a82776828edcae4754e00c8a2d7784277f2a9
4
+ data.tar.gz: c791f863ecd37dd5b5acaf08f03f1f6033d03d5e
5
5
  SHA512:
6
- metadata.gz: 97966ab422eafd14fe5cd2dad8f5b7f7de6f85252ff547365cf4f00f67a5cc755fb9ef3affd6123db4cd32778618a7df78cdd1f567c20ba020a9b4e938f97901
7
- data.tar.gz: 87d9de27b98ee0516a4b5736e0e6fdd60eb777160507e24926efaa337fe3af94d70b3d8de80d1c2d4140297d55ff17cb49f03f84b760f2a567d7cc00d223d4b8
6
+ metadata.gz: a934c7c8621a822943165858158ba2fd0587e599aabe4833cd103082307f208edfb7aff16c10cac9a9443bca7386b34415a719c6af57740ead90a176d0f6e92f
7
+ data.tar.gz: 8478ac74537fa997bd0a2d34f46bd766a4e044eabdfba2ff1be3d4af8f4e2ec2808b009bee3daa55c95da07831f475bf40081c86486031e9f294e9c8627ceaa2
data/.gitignore CHANGED
File without changes
data/.rspec CHANGED
File without changes
data/.ruby-gemset CHANGED
File without changes
data/.ruby-version CHANGED
File without changes
data/.travis.yml CHANGED
File without changes
data/CHANGELOG.md CHANGED
@@ -1,3 +1,18 @@
1
+ ## 1.1.2
2
+
3
+ - Add namespace tabs in rails_admin
4
+ - Add code type with codemirror (requires glebtv-ckeditor)
5
+ - Fixed Paperclip installation checking #6. Thx @tanelj
6
+ - Add boolean data type #2. Thx @teonimesic
7
+
8
+ ## 1.1.0
9
+
10
+ - Fix file type
11
+
12
+ ## 1.0.0
13
+
14
+ - Support ActiveRecord
15
+
1
16
  ## 1.0.0.pre.1
2
17
 
3
18
  Disable auto migrate. To migrate from 0.8 run:
@@ -17,6 +32,10 @@ RailsAdminSettings.migrate!
17
32
  - Added ActiveRecord support
18
33
  - [!!!] Type renamed to Kind to avoid messing with AR STI column
19
34
 
35
+ Rename it in all invocations, then run migrate DB with:
36
+
37
+ RailsAdminSettings.migrate!
38
+
20
39
  ## 0.6.0
21
40
 
22
41
  - Added namespaced settings
data/Gemfile CHANGED
File without changes
data/Gemfile.lock CHANGED
@@ -1,50 +1,41 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rails_admin_settings (1.1.0.pre.1)
4
+ rails_admin_settings (1.1.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- actionmailer (4.2.4)
10
- actionpack (= 4.2.4)
11
- actionview (= 4.2.4)
12
- activejob (= 4.2.4)
13
- mail (~> 2.5, >= 2.5.4)
14
- rails-dom-testing (~> 1.0, >= 1.0.5)
15
- actionpack (4.2.4)
16
- actionview (= 4.2.4)
17
- activesupport (= 4.2.4)
18
- rack (~> 1.6)
19
- rack-test (~> 0.6.2)
20
- rails-dom-testing (~> 1.0, >= 1.0.5)
21
- rails-html-sanitizer (~> 1.0, >= 1.0.2)
22
- actionview (4.2.4)
23
- activesupport (= 4.2.4)
24
- builder (~> 3.1)
9
+ actionmailer (3.2.22)
10
+ actionpack (= 3.2.22)
11
+ mail (~> 2.5.4)
12
+ actionpack (3.2.22)
13
+ activemodel (= 3.2.22)
14
+ activesupport (= 3.2.22)
15
+ builder (~> 3.0.0)
25
16
  erubis (~> 2.7.0)
26
- rails-dom-testing (~> 1.0, >= 1.0.5)
27
- rails-html-sanitizer (~> 1.0, >= 1.0.2)
28
- activejob (4.2.4)
29
- activesupport (= 4.2.4)
30
- globalid (>= 0.3.0)
31
- activemodel (4.2.4)
32
- activesupport (= 4.2.4)
33
- builder (~> 3.1)
34
- activerecord (4.2.4)
35
- activemodel (= 4.2.4)
36
- activesupport (= 4.2.4)
37
- arel (~> 6.0)
38
- activesupport (4.2.4)
39
- i18n (~> 0.7)
40
- json (~> 1.7, >= 1.7.7)
41
- minitest (~> 5.1)
42
- thread_safe (~> 0.3, >= 0.3.4)
43
- tzinfo (~> 1.1)
44
- addressable (2.3.8)
45
- arel (6.0.3)
46
- bson (3.2.4)
47
- builder (3.2.2)
17
+ journey (~> 1.0.4)
18
+ rack (~> 1.4.5)
19
+ rack-cache (~> 1.2)
20
+ rack-test (~> 0.6.1)
21
+ sprockets (~> 2.2.1)
22
+ activemodel (3.2.22)
23
+ activesupport (= 3.2.22)
24
+ builder (~> 3.0.0)
25
+ activerecord (3.2.22)
26
+ activemodel (= 3.2.22)
27
+ activesupport (= 3.2.22)
28
+ arel (~> 3.0.2)
29
+ tzinfo (~> 0.3.29)
30
+ activeresource (3.2.22)
31
+ activemodel (= 3.2.22)
32
+ activesupport (= 3.2.22)
33
+ activesupport (3.2.22)
34
+ i18n (~> 0.6, >= 0.6.4)
35
+ multi_json (~> 1.0)
36
+ addressable (2.4.0)
37
+ arel (3.0.3)
38
+ builder (3.0.4)
48
39
  carrierwave (0.10.0)
49
40
  activemodel (>= 3.2.0)
50
41
  activesupport (>= 3.2.0)
@@ -52,129 +43,122 @@ GEM
52
43
  mime-types (>= 1.16)
53
44
  climate_control (0.0.3)
54
45
  activesupport (>= 3.0)
55
- cocaine (0.5.7)
46
+ cocaine (0.5.8)
56
47
  climate_control (>= 0.0.3, < 1.0)
57
48
  coderay (1.1.0)
58
- connection_pool (2.2.0)
59
49
  crass (1.0.2)
60
- database_cleaner (1.5.0)
50
+ database_cleaner (1.5.1)
61
51
  diff-lcs (1.2.5)
62
52
  docile (1.1.5)
63
53
  erubis (2.7.0)
64
54
  factory_girl (4.5.0)
65
55
  activesupport (>= 3.0.0)
66
- geocoder (1.2.11)
56
+ geocoder (1.2.12)
67
57
  glebtv-carrierwave-mongoid (0.8.0)
68
58
  carrierwave (>= 0.8.0, < 0.11.0)
69
59
  mongoid (>= 3.0, < 5.0)
70
- glebtv-mongoid-paperclip (0.3.0)
71
- mongoid (>= 3.0, < 5.0)
72
- paperclip (>= 3.4, != 4.3.0)
73
- globalid (0.3.6)
74
- activesupport (>= 4.1.0)
60
+ glebtv-mongoid-paperclip (0.4.0)
61
+ mongoid (>= 3.0, < 6.0)
62
+ paperclip (~> 4.3.1)
63
+ hike (1.2.3)
75
64
  i18n (0.7.0)
65
+ journey (1.0.4)
76
66
  json (1.8.3)
77
- loofah (2.0.3)
78
- nokogiri (>= 1.5.9)
79
- mail (2.6.3)
80
- mime-types (>= 1.16, < 3)
67
+ mail (2.5.4)
68
+ mime-types (~> 1.16)
69
+ treetop (~> 1.4.8)
81
70
  method_source (0.8.2)
82
- mime-types (2.6.2)
71
+ mime-types (1.25.1)
83
72
  mimemagic (0.3.0)
84
- mini_portile (0.6.2)
85
- minitest (5.8.0)
86
- mongoid (4.0.2)
87
- activemodel (~> 4.0)
88
- moped (~> 2.0.0)
89
- origin (~> 2.1)
90
- tzinfo (>= 0.3.37)
91
- mongoid-rspec (2.2.0)
92
- mongoid (~> 4.0.0)
73
+ mini_portile2 (2.0.0)
74
+ mongoid (3.1.7)
75
+ activemodel (~> 3.2)
76
+ moped (~> 1.4)
77
+ origin (~> 1.0)
78
+ tzinfo (~> 0.3.29)
79
+ mongoid-rspec (1.13.0)
80
+ mongoid (~> 3.1)
93
81
  rake
94
82
  rspec (~> 3.1)
95
- moped (2.0.7)
96
- bson (~> 3.0)
97
- connection_pool (~> 2.0)
98
- optionable (~> 0.2.0)
99
- nokogiri (1.6.6.2)
100
- mini_portile (~> 0.6.0)
101
- nokogumbo (1.4.1)
83
+ moped (1.5.3)
84
+ multi_json (1.11.2)
85
+ nokogiri (1.6.7)
86
+ mini_portile2 (~> 2.0.0.rc2)
87
+ nokogumbo (1.4.6)
102
88
  nokogiri
103
- optionable (0.2.0)
104
- origin (2.1.1)
105
- paperclip (4.3.1)
89
+ origin (1.1.0)
90
+ paperclip (4.3.2)
106
91
  activemodel (>= 3.2.0)
107
92
  activesupport (>= 3.2.0)
108
93
  cocaine (~> 0.5.5)
109
94
  mime-types
110
95
  mimemagic (= 0.3.0)
111
- pry (0.10.1)
96
+ polyglot (0.3.5)
97
+ pry (0.10.3)
112
98
  coderay (~> 1.1.0)
113
99
  method_source (~> 0.8.1)
114
100
  slop (~> 3.4)
115
- rack (1.6.4)
101
+ rack (1.4.7)
102
+ rack-cache (1.5.1)
103
+ rack (>= 0.4)
104
+ rack-ssl (1.3.4)
105
+ rack
116
106
  rack-test (0.6.3)
117
107
  rack (>= 1.0)
118
- rails (4.2.4)
119
- actionmailer (= 4.2.4)
120
- actionpack (= 4.2.4)
121
- actionview (= 4.2.4)
122
- activejob (= 4.2.4)
123
- activemodel (= 4.2.4)
124
- activerecord (= 4.2.4)
125
- activesupport (= 4.2.4)
126
- bundler (>= 1.3.0, < 2.0)
127
- railties (= 4.2.4)
128
- sprockets-rails
129
- rails-deprecated_sanitizer (1.0.3)
130
- activesupport (>= 4.2.0.alpha)
131
- rails-dom-testing (1.0.7)
132
- activesupport (>= 4.2.0.beta, < 5.0)
133
- nokogiri (~> 1.6.0)
134
- rails-deprecated_sanitizer (>= 1.0.1)
135
- rails-html-sanitizer (1.0.2)
136
- loofah (~> 2.0)
137
- railties (4.2.4)
138
- actionpack (= 4.2.4)
139
- activesupport (= 4.2.4)
108
+ rails (3.2.22)
109
+ actionmailer (= 3.2.22)
110
+ actionpack (= 3.2.22)
111
+ activerecord (= 3.2.22)
112
+ activeresource (= 3.2.22)
113
+ activesupport (= 3.2.22)
114
+ bundler (~> 1.0)
115
+ railties (= 3.2.22)
116
+ railties (3.2.22)
117
+ actionpack (= 3.2.22)
118
+ activesupport (= 3.2.22)
119
+ rack-ssl (~> 1.3.2)
140
120
  rake (>= 0.8.7)
141
- thor (>= 0.18.1, < 2.0)
121
+ rdoc (~> 3.4)
122
+ thor (>= 0.14.6, < 2.0)
142
123
  rake (10.4.2)
143
- rspec (3.3.0)
144
- rspec-core (~> 3.3.0)
145
- rspec-expectations (~> 3.3.0)
146
- rspec-mocks (~> 3.3.0)
147
- rspec-core (3.3.2)
148
- rspec-support (~> 3.3.0)
149
- rspec-expectations (3.3.1)
124
+ rdoc (3.12.2)
125
+ json (~> 1.4)
126
+ rspec (3.4.0)
127
+ rspec-core (~> 3.4.0)
128
+ rspec-expectations (~> 3.4.0)
129
+ rspec-mocks (~> 3.4.0)
130
+ rspec-core (3.4.1)
131
+ rspec-support (~> 3.4.0)
132
+ rspec-expectations (3.4.0)
150
133
  diff-lcs (>= 1.2.0, < 2.0)
151
- rspec-support (~> 3.3.0)
152
- rspec-mocks (3.3.2)
134
+ rspec-support (~> 3.4.0)
135
+ rspec-mocks (3.4.0)
153
136
  diff-lcs (>= 1.2.0, < 2.0)
154
- rspec-support (~> 3.3.0)
155
- rspec-support (3.3.0)
137
+ rspec-support (~> 3.4.0)
138
+ rspec-support (3.4.1)
156
139
  russian_phone (0.5.3)
157
140
  safe_yaml (1.0.4)
158
- sanitize (4.0.0)
141
+ sanitize (4.0.1)
159
142
  crass (~> 1.0.2)
160
143
  nokogiri (>= 1.4.4)
161
- nokogumbo (= 1.4.1)
162
- simplecov (0.10.0)
144
+ nokogumbo (~> 1.4.1)
145
+ simplecov (0.11.1)
163
146
  docile (~> 1.1.0)
164
147
  json (~> 1.8)
165
148
  simplecov-html (~> 0.10.0)
166
149
  simplecov-html (0.10.0)
167
150
  slop (3.6.0)
168
- sprockets (3.3.4)
151
+ sprockets (2.2.3)
152
+ hike (~> 1.2)
153
+ multi_json (~> 1.0)
169
154
  rack (~> 1.0)
170
- sprockets-rails (2.3.3)
171
- actionpack (>= 3.0)
172
- activesupport (>= 3.0)
173
- sprockets (>= 2.8, < 4.0)
155
+ tilt (~> 1.1, != 1.3.0)
174
156
  thor (0.19.1)
175
- thread_safe (0.3.5)
176
- tzinfo (1.2.2)
177
- thread_safe (~> 0.1)
157
+ tilt (1.4.1)
158
+ treetop (1.4.15)
159
+ polyglot
160
+ polyglot (>= 0.3.1)
161
+ tzinfo (0.3.46)
178
162
  validates_email_format_of (1.6.3)
179
163
  i18n
180
164
 
data/LICENSE.txt CHANGED
File without changes
data/README.md CHANGED
@@ -3,17 +3,9 @@
3
3
  [![Build Status](https://secure.travis-ci.org/rs-pro/rails_admin_settings.png?branch=master)](http://travis-ci.org/rs-pro/rails_admin_settings)
4
4
  [![Dependency Status](https://gemnasium.com/rs-pro/rails_admin_settings.svg)](https://gemnasium.com/rs-pro/rails_admin_settings)
5
5
 
6
- ## Since 1.0 AR is fully supported but not well tested yet.
6
+ App settings editable via RailsAdmin with support for ActiveRecord and Mongoid.
7
7
 
8
- ## 0.9.0 is not backwards-compatible with 0.8
9
-
10
- Type renamed to Kind to avoid messing with AR STI column
11
-
12
- Rename it in all invocations, then run migrate DB with:
13
-
14
- RailsAdminSettings.migrate!
15
-
16
- Also, active record is now supported in addition to mongoid.
8
+ Supports images, files, html with or without sanitization, code with codemirror, etc.
17
9
 
18
10
  ## Features
19
11
 
@@ -68,7 +60,7 @@ Or install it yourself as:
68
60
  Settings.content_block_1(kind: 'html', default: 'test')
69
61
  Settings.data(kind: 'yaml')
70
62
  Settings.data = [1, 2, 3]
71
-
63
+
72
64
  Settings.enabled?(:phone, kind: 'phone', default: '906 111-11-11') # also creates setting if it doesn't exist
73
65
  Settings.phone.area
74
66
  Settings.phone.subscriber
@@ -101,6 +93,7 @@ Supported types:
101
93
 
102
94
  string (input)
103
95
  text (textarea)
96
+ boolean (checkbox)
104
97
  color (uses built-in RailsAdmin color picker)
105
98
  html (supports Rich, glebtv-ckeditor, ckeditor, but does not require any of them)
106
99
  sanitized (requires sanitize -- sanitizes HTML before saving to DB [Warning: uses RELAXED config!])
data/Rakefile CHANGED
File without changes
@@ -59,6 +59,14 @@ module RailsAdminSettings
59
59
  v
60
60
  end
61
61
 
62
+ # t = {_all: 'Все'}
63
+ ::RailsAdminSettings::Setting.pluck(:ns).uniq.each do |c|
64
+ s = "ns_#{c.gsub('-', '_')}".to_sym
65
+ scope s, -> { where(ns: c) }
66
+ # t[s] = c
67
+ end
68
+ # I18n.backend.store_translations(:ru, {admin: {scopes: {'rails_admin_settings/setting': t}}})
69
+
62
70
  if Object.const_defined?('RailsAdmin')
63
71
  include RailsAdminSettings::RailsAdminConfig
64
72
  else
@@ -1,10 +1,30 @@
1
1
  - if ['string', 'integer', 'phone', 'email', 'address', 'url', 'domain'].include?(@object.type)
2
2
  = form.text_field :raw, :value => field.value
3
+ - if @object.type == 'boolean'
4
+ = form.check_box :raw, {:value => field.value}, 'true', 'false'
3
5
  - if @object.type == 'color'
4
6
  = form.text_field :raw, :value => field.value, 'data-color' => true, style: "background-color: ##{field.value}"
5
7
  - elsif %w(text yaml phones).include?( @object.type )
6
8
  = form.text_area :raw, :value => field.value, :rows => 10, :cols => 80
7
- - elsif @object.type == 'html'
9
+ - elsif @object.type == 'code'
10
+ :ruby
11
+ #binding.pry
12
+ js_data = {
13
+ csspath: asset_path('ckeditor/plugins/codemirror/css/codemirror.min.css'),
14
+ jspath: asset_path('ckeditor/plugins/codemirror/js/codemirror.min.js'),
15
+ options: {
16
+ mode: 'htmlmixed',
17
+ theme: 'monokai',
18
+ lineNumbers: true
19
+ },
20
+ locations: {
21
+ mode: asset_path('ckeditor/plugins/codemirror/js/codemirror.mode.htmlmixed.min.js'),
22
+ theme: asset_path('ckeditor/plugins/codemirror/theme/monokai.css')
23
+ }
24
+ }
25
+
26
+ = form.text_area field.method_name, field.html_attributes.reverse_merge(data: { richtext: 'codemirror', options: js_data.to_json }).reverse_merge({ value: field.form_value })
27
+ - elsif @object.type == 'html' || @object.type == 'sanitized'
8
28
  - if form.respond_to?(:cktext_area)
9
29
  = javascript_include_tag "ckeditor/init"
10
30
  = form.cktext_area :raw, :value => field.value, :rows => 10, :cols => 80
@@ -19,4 +39,4 @@
19
39
  - else
20
40
  .alert.alert-error
21
41
  = t('admin.settings.no_ckeditor_detected')
22
- = form.text_area :raw, :value => field.value, :rows => 10, :cols => 80
42
+ = form.text_area :raw, :value => field.value, :rows => 10, :cols => 80
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -4,7 +4,9 @@ module RailsAdminSettings
4
4
  'string',
5
5
  'text',
6
6
  'integer',
7
+ 'boolean',
7
8
  'html',
9
+ 'code',
8
10
  'sanitized',
9
11
  'yaml',
10
12
  'phone',
@@ -22,4 +24,4 @@ module RailsAdminSettings
22
24
  def self.types
23
25
  self.kinds
24
26
  end
25
- end
27
+ end
File without changes
File without changes
@@ -10,7 +10,7 @@ module RailsAdminSettings
10
10
  end
11
11
 
12
12
  def text_kind?
13
- (RailsAdminSettings.kinds - ['phone', 'phones', 'integer', 'yaml']).include? kind
13
+ (RailsAdminSettings.kinds - ['phone', 'phones', 'integer', 'yaml', 'boolean']).include? kind
14
14
  end
15
15
 
16
16
  def upload_kind?
@@ -18,7 +18,7 @@ module RailsAdminSettings
18
18
  end
19
19
 
20
20
  def html_kind?
21
- ['html', 'sanitized'].include? kind
21
+ ['html', 'code', 'sanitized'].include? kind
22
22
  end
23
23
  alias_method :text_type?, :text_kind?
24
24
  alias_method :upload_type?, :upload_kind?
@@ -72,6 +72,9 @@ module RailsAdminSettings
72
72
  elsif integer_kind?
73
73
  0
74
74
  elsif yaml_kind?
75
+ elsif boolean_kind?
76
+ false
77
+ elsif yaml_type?
75
78
  nil
76
79
  elsif phone_kind?
77
80
  require_russian_phone do
@@ -87,6 +90,8 @@ module RailsAdminSettings
87
90
  def default_serializable_value
88
91
  if phones_kind?
89
92
  ''
93
+ elsif boolean_type?
94
+ 'false'
90
95
  else
91
96
  default_value
92
97
  end
@@ -131,6 +136,8 @@ module RailsAdminSettings
131
136
  raw.to_i
132
137
  elsif yaml_kind?
133
138
  load_yaml
139
+ elsif boolean_kind?
140
+ raw == 'true'
134
141
  elsif phone_kind?
135
142
  load_phone
136
143
  elsif phones_kind?
@@ -25,6 +25,8 @@ module RailsAdminSettings
25
25
  end
26
26
  end
27
27
  end
28
+ nss = ::RailsAdminSettings::Setting.pluck(:ns).uniq.map { |c| "ns_#{c.gsub('-', '_')}".to_sym }
29
+ scopes([nil] + nss)
28
30
  end
29
31
 
30
32
  edit do
File without changes
File without changes
File without changes
File without changes
@@ -25,7 +25,7 @@ module RailsAdminSettings
25
25
 
26
26
  Settings.file_uploads_supported = true
27
27
  Settings.file_uploads_engine = :paperclip
28
- elsif RailsAdminSettings.active_record? && defined?('Paperclip')
28
+ elsif RailsAdminSettings.active_record? && defined?(Paperclip)
29
29
  if defined?(Rails)
30
30
  base.has_attached_file(:file)
31
31
  else
File without changes
@@ -1,4 +1,3 @@
1
1
  module RailsAdminSettings
2
- VERSION = "1.1.0.pre.1"
2
+ VERSION = "1.1.2"
3
3
  end
4
-
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -46,11 +46,19 @@ describe 'Settings loading defaults' do
46
46
  it 'works with custom default namespace' do
47
47
  Settings.ns_default = 'other'
48
48
  Settings.ns_fallback = 'other'
49
+
49
50
  expect(Settings.ns(:main).phone).to eq '906 1111111'
50
51
  expect(Settings.ns(:other).footer).to eq 'zzz'
51
52
  expect(Settings.ns(:main).footer).to eq 'test <b></b>'
52
53
  expect(Settings.footer).to eq 'zzz'
53
54
 
55
+ Settings.ns(:main).phone.should eq '906 1111111'
56
+ Settings.ns(:main).true_setting.should be true
57
+ Settings.ns(:main).false_setting.should be false
58
+ Settings.ns(:other).footer.should eq 'zzz'
59
+ Settings.ns(:main).footer.should eq 'test <b></b>'
60
+ Settings.footer.should eq 'zzz'
61
+
54
62
  expect(Settings.ns(:etc, fallback: :main).phone).to eq '906 1111111'
55
63
  expect(Settings.ns(:etc, fallback: :main).footer).to eq 'test <b></b>'
56
64
  expect(Settings.ns(:other, fallback: :main).footer).to eq 'zzz'
File without changes
File without changes
data/spec/label_spec.rb CHANGED
File without changes
File without changes
data/spec/model_spec.rb CHANGED
File without changes
File without changes
File without changes
File without changes
data/spec/spec_helper.rb CHANGED
File without changes
File without changes
@@ -6,10 +6,18 @@ main:
6
6
  phone:
7
7
  kind: 'phone'
8
8
  value: '906 1111111'
9
-
9
+
10
+ true_setting:
11
+ kind: 'boolean'
12
+ value: true
13
+
14
+ false_setting:
15
+ kind: 'boolean'
16
+ value: false
17
+
10
18
  disabled:
11
19
  enabled: false
12
-
20
+
13
21
  other:
14
22
  footer:
15
23
  value: 'zzz'
File without changes
File without changes
File without changes
data/spec/types_spec.rb CHANGED
@@ -3,6 +3,15 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  describe 'Settings kind' do
6
+ it 'boolean' do
7
+ Settings.get(:testbool, kind: 'boolean').value.should be false
8
+ Settings.get(:testbool, default: true, kind: 'boolean').value.should be false
9
+ Settings.get(:testbool2, default: true, kind: 'boolean').value.should be true
10
+ Settings.testbool2.should be true
11
+ Settings.set(:testbool3, true, kind: 'boolean')
12
+ Settings.testbool3.should be true
13
+ end
14
+
6
15
  it 'html' do
7
16
  expect(Settings.get(:email, kind: 'html', default: 'test@example.com').to_s).to eq 'test@example.com'
8
17
  end
@@ -76,4 +85,4 @@ describe 'Settings kind' do
76
85
  Settings.col = 'zzzzzz'
77
86
  }.to raise_error
78
87
  end
79
- end
88
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_admin_settings
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0.pre.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gleb Tv
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-16 00:00:00.000000000 Z
11
+ date: 2015-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mongoid
@@ -347,12 +347,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
347
347
  version: '0'
348
348
  required_rubygems_version: !ruby/object:Gem::Requirement
349
349
  requirements:
350
- - - ">"
350
+ - - ">="
351
351
  - !ruby/object:Gem::Version
352
- version: 1.3.1
352
+ version: '0'
353
353
  requirements: []
354
354
  rubyforge_project:
355
- rubygems_version: 2.4.5
355
+ rubygems_version: 2.4.5.1
356
356
  signing_key:
357
357
  specification_version: 4
358
358
  summary: ''