activeadmin-settings 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
![ActiveadminSettings Demo](https://raw.github.com/alexkravets/activeadmin-settings/master/img/activeadmin-settings-demo.jpg)
|
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
|