activeadmin-settings 0.3.0 → 0.3.1
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/Gemfile +4 -0
- data/Gemfile.lock +52 -0
- data/README.md +74 -2
- data/activeadmin-settings.gemspec +8 -0
- data/img/activeadmin-settings-demo.jpg +0 -0
- data/lib/activeadmin-settings.rb +5 -0
- data/lib/activeadmin-settings/version.rb +1 -1
- data/lib/generators/activeadmin_settings/install_generator.rb +0 -6
- data/vendor/assets/javascripts/activeadmin_settings/index.js.coffee +1 -0
- data/vendor/assets/stylesheets/activeadmin_settings.css.scss +2 -0
- metadata +122 -4
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
activeadmin-settings (0.3.1)
|
5
|
+
carrierwave-mongoid
|
6
|
+
mini_magick
|
7
|
+
mongoid_globalize
|
8
|
+
select2-rails
|
9
|
+
|
10
|
+
GEM
|
11
|
+
remote: https://rubygems.org/
|
12
|
+
specs:
|
13
|
+
activemodel (3.2.8)
|
14
|
+
activesupport (= 3.2.8)
|
15
|
+
builder (~> 3.0.0)
|
16
|
+
activesupport (3.2.8)
|
17
|
+
i18n (~> 0.6)
|
18
|
+
multi_json (~> 1.0)
|
19
|
+
bson (1.6.4)
|
20
|
+
bson_ext (1.6.4)
|
21
|
+
bson (~> 1.6.4)
|
22
|
+
builder (3.0.0)
|
23
|
+
carrierwave (0.6.2)
|
24
|
+
activemodel (>= 3.2.0)
|
25
|
+
activesupport (>= 3.2.0)
|
26
|
+
carrierwave-mongoid (0.2.1)
|
27
|
+
carrierwave (~> 0.6.1)
|
28
|
+
mongoid (~> 2.1)
|
29
|
+
i18n (0.6.0)
|
30
|
+
mini_magick (3.4)
|
31
|
+
subexec (~> 0.2.1)
|
32
|
+
mongo (1.6.2)
|
33
|
+
bson (~> 1.6.2)
|
34
|
+
mongoid (2.4.12)
|
35
|
+
activemodel (~> 3.1)
|
36
|
+
mongo (<= 1.6.2)
|
37
|
+
tzinfo (~> 0.3.22)
|
38
|
+
mongoid_globalize (0.2.1)
|
39
|
+
bson_ext (~> 1.5)
|
40
|
+
mongoid (~> 2.4)
|
41
|
+
multi_json (1.3.6)
|
42
|
+
select2-rails (3.0.0)
|
43
|
+
thor (~> 0.14)
|
44
|
+
subexec (0.2.2)
|
45
|
+
thor (0.15.4)
|
46
|
+
tzinfo (0.3.33)
|
47
|
+
|
48
|
+
PLATFORMS
|
49
|
+
ruby
|
50
|
+
|
51
|
+
DEPENDENCIES
|
52
|
+
activeadmin-settings!
|
data/README.md
CHANGED
@@ -1,6 +1,10 @@
|
|
1
1
|
## activeadmin-settings
|
2
2
|
|
3
|
-
|
3
|
+
**IN DEVELOPMENT**
|
4
|
+
|
5
|
+
Easy to use general purpose settings backend for activeadmin. At the moment only [activeadmin-mongoid](https://github.com/elia/activeadmin-mongoid/) is suported. ActiveRecord support is not in my plans, so everyone interested is welcome on a board.
|
6
|
+
|
7
|
+

|
4
8
|
|
5
9
|
### Installation
|
6
10
|
|
@@ -10,4 +14,72 @@ Add to `Gemfile`:
|
|
10
14
|
|
11
15
|
Run installer:
|
12
16
|
|
13
|
-
$ rails g activeadmin_settings:install
|
17
|
+
$ rails g activeadmin_settings:install
|
18
|
+
|
19
|
+
|
20
|
+
### Configuration
|
21
|
+
|
22
|
+
After installation you should find a new **Settings** menu in the admin. If no configuration found in `config/activeadmin_settings.yml` only *Admins* tab is shown. *Admin* tab implements basic functionality of editing *AdminUser* objects.
|
23
|
+
|
24
|
+
To add some settings go to `config/activeadmin_settings.yml`. Settings are splitted into groups, each setting name concidered to be uniq, e.g.:
|
25
|
+
|
26
|
+
SEO:
|
27
|
+
Website Keywords:
|
28
|
+
description: These keywords are included in homepage header meta tag
|
29
|
+
default_value: lorem ipsum simply dummy text printing
|
30
|
+
|
31
|
+
Website Description:
|
32
|
+
type: text
|
33
|
+
description: Website description is used as value for header meta tag on homepage
|
34
|
+
default_value: Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.
|
35
|
+
|
36
|
+
There are a few types of settings:
|
37
|
+
|
38
|
+
* `string` (default) - a regular text input
|
39
|
+
* `link` - text input with a format: `(TITLE) URL`
|
40
|
+
* `text` - textarea input
|
41
|
+
* `html` - textarea with [redactor.js](http://redactorjs.com/)
|
42
|
+
* `file` - input for file upload
|
43
|
+
|
44
|
+
Some examples:
|
45
|
+
|
46
|
+
Types Examples:
|
47
|
+
Logo Image:
|
48
|
+
type: file
|
49
|
+
description: Please make sure logo image size is 287x140 pixels
|
50
|
+
default_value: home/home-logo.jpg
|
51
|
+
|
52
|
+
CEO Message:
|
53
|
+
type: html
|
54
|
+
description: This text is used for the "CEO Message" page
|
55
|
+
default_value: >
|
56
|
+
<p><strong>Lorem Ipsum</strong> is simply dummy text of the printing and typesetting industry.</p>
|
57
|
+
<p>Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>
|
58
|
+
|
59
|
+
Facebook Link:
|
60
|
+
type: link
|
61
|
+
description: Company facebook page link
|
62
|
+
default_value: (Facebook) https://www.facebook.com/
|
63
|
+
|
64
|
+
|
65
|
+
Settings could be integrated into templates as well as models or controllers code using `settings_value` helper. For example:
|
66
|
+
|
67
|
+
* `<%= settings_value("CEO Message") %>` - provides html
|
68
|
+
* `<%= image_tag setting_value("Logo Image") %>` - provides an image url: `<img src="/production-assets-path/home/home-logo.jpg" />`
|
69
|
+
* `<%= settings_value("Facebook Link") %>` - provides link: `<a href="https://www.facebook.com/" title="Facebook">Facebook</a>`
|
70
|
+
|
71
|
+
|
72
|
+
If setting value is `null` or an empty string default setting value is used which is defined in `config/activeadmin_settings.yml`.
|
73
|
+
|
74
|
+
|
75
|
+
### FUTURE FEATURES
|
76
|
+
|
77
|
+
I'm going to add types:
|
78
|
+
|
79
|
+
* `Boolean` - checkbox or dropdown with two values
|
80
|
+
* `Dropdown` - dropdown with options
|
81
|
+
* `List` - list bases selection
|
82
|
+
|
83
|
+
Issues or feature requests are [welcome](https://github.com/alexkravets/activeadmin-settings/issues?state=open).
|
84
|
+
|
85
|
+
### GLHF
|
@@ -14,4 +14,12 @@ Gem::Specification.new do |gem|
|
|
14
14
|
gem.name = "activeadmin-settings"
|
15
15
|
gem.require_paths = ["lib"]
|
16
16
|
gem.version = ActiveadminSettings::VERSION
|
17
|
+
|
18
|
+
gem.add_runtime_dependency "select2-rails"
|
19
|
+
gem.add_runtime_dependency "carrierwave-mongoid"
|
20
|
+
gem.add_runtime_dependency "mini_magick"
|
21
|
+
gem.add_runtime_dependency "mongoid_globalize"
|
22
|
+
gem.add_runtime_dependency "fog"
|
23
|
+
gem.add_runtime_dependency "aws-s3"
|
24
|
+
gem.add_runtime_dependency "heroku-mongo-backup"
|
17
25
|
end
|
Binary file
|
data/lib/activeadmin-settings.rb
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
require "activeadmin-settings/version"
|
2
2
|
|
3
|
+
require "carrierwave/mongoid"
|
4
|
+
require "mini_magick"
|
5
|
+
require "select2-rails"
|
6
|
+
require "mongoid_globalize"
|
7
|
+
|
3
8
|
module ActiveadminSettings
|
4
9
|
require 'activeadmin-settings/engine'
|
5
10
|
require 'activeadmin-settings/helper'
|
@@ -34,12 +34,6 @@ module ActiveadminSettings
|
|
34
34
|
puts "It doesn't look like you've installed activeadmin: active_admin.scss is missing.\nPlease install it and try again."
|
35
35
|
end
|
36
36
|
end
|
37
|
-
|
38
|
-
def add_gems
|
39
|
-
gem "carrierwave-mongoid", :require => "carrierwave/mongoid"
|
40
|
-
gem "mini_magick"
|
41
|
-
gem "mongoid_globalize"
|
42
|
-
end
|
43
37
|
end
|
44
38
|
end
|
45
39
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activeadmin-settings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,8 +9,120 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-08-
|
13
|
-
dependencies:
|
12
|
+
date: 2012-08-11 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: select2-rails
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: carrierwave-mongoid
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: mini_magick
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: mongoid_globalize
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: fog
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
type: :runtime
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: aws-s3
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :runtime
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: heroku-mongo-backup
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :runtime
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
14
126
|
description: Easy to use general purpose settings backend for activeadmin
|
15
127
|
email:
|
16
128
|
- santyor@gmail.com
|
@@ -19,6 +131,8 @@ extensions: []
|
|
19
131
|
extra_rdoc_files: []
|
20
132
|
files:
|
21
133
|
- .gitignore
|
134
|
+
- Gemfile
|
135
|
+
- Gemfile.lock
|
22
136
|
- README.md
|
23
137
|
- Rakefile
|
24
138
|
- activeadmin-settings.gemspec
|
@@ -35,6 +149,7 @@ files:
|
|
35
149
|
- app/views/admin/settings/_index.html.erb
|
36
150
|
- app/views/admin/settings/_settings_table.html.erb
|
37
151
|
- config/routes.rb
|
152
|
+
- img/activeadmin-settings-demo.jpg
|
38
153
|
- lib/activeadmin-settings.rb
|
39
154
|
- lib/activeadmin-settings/.DS_Store
|
40
155
|
- lib/activeadmin-settings/engine.rb
|
@@ -103,13 +218,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
103
218
|
version: '0'
|
104
219
|
segments:
|
105
220
|
- 0
|
106
|
-
hash:
|
221
|
+
hash: -1666352658322677865
|
107
222
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
108
223
|
none: false
|
109
224
|
requirements:
|
110
225
|
- - ! '>='
|
111
226
|
- !ruby/object:Gem::Version
|
112
227
|
version: '0'
|
228
|
+
segments:
|
229
|
+
- 0
|
230
|
+
hash: -1666352658322677865
|
113
231
|
requirements: []
|
114
232
|
rubyforge_project:
|
115
233
|
rubygems_version: 1.8.24
|