activeadmin_settings_cached 0.0.1 → 0.0.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 75221323ed7afb0d345c5adf498c6d28fad61d8d
4
- data.tar.gz: c7905fcbd72acf1fd3f4541fa4f9866295a2fb0a
3
+ metadata.gz: 8da2e81eeb7e2fb9994d1473ce68467d1ebe2d32
4
+ data.tar.gz: 2eae8c755d9597916f44265c31f9df8395767df1
5
5
  SHA512:
6
- metadata.gz: 18f6f739ea607504a60389458a607322dd24e233a2b64a70182ba9343d63ade95f0ecfd9a86a81f6ebb2bb6158cd03b0ccf9846e539226b14915e23243ee4cfe
7
- data.tar.gz: 2545c611642fd0bdd643cda994ae8cceffc46335dec9a22ab88bb3edb480dfcb58e2c6bd56d2ffffad0109c321571e85334eb7e406b5f68c6ce7f04ea6ccc885
6
+ metadata.gz: dc350529e3c9867dca5d57b027e880f49045b86bd5258d2762dd32d864f68579c7b181f03cd0133e741bc31e728caa6fa4cc945a4eedd6422304b8946bb6d944
7
+ data.tar.gz: d183931042c8d73ac83346790bcf6307d8092a7bfb424fc3729f492a1be414b377d6f8b0e11e97e042e9eea926ee32c785ec9125a83a64ff7c6a70514bcd3f3b
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2014 TODO: Write your name
1
+ Copyright (c) 2014 Semyon Pupkov
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # ActiveadminSettingsCached
1
+ # Activeadmin Settings Cached
2
2
 
3
- TODO: Write a gem description
3
+ Gem for Rails provides ui interface for rails-settings-cached gem in Active Admin
4
4
 
5
5
  ## Installation
6
6
 
@@ -14,18 +14,37 @@ And then execute:
14
14
 
15
15
  $ bundle
16
16
 
17
- Or install it yourself as:
17
+ Create you settings model:
18
18
 
19
- $ gem install activeadmin_settings_cached
19
+ $ rails g settings Settings
20
+ $ bundle exec rake db:migrate
20
21
 
21
- ## Usage
22
+ Add route in config/routes.rb
22
23
 
23
- TODO: Write usage instructions here
24
+ ``` ruby
25
+ ActiveAdmin.routes(self)
26
+ mount ActiveadminSettingsCached::Engine => '/admin'
27
+ ```
28
+
29
+ And configure you default values in model Settings like this:
30
+
31
+ ``` ruby
32
+ class Settings < RailsSettings::CachedSettings
33
+ defaults[:my_awesome_settings] = 'This is my settings'
34
+ end
35
+ ```
24
36
 
25
- ## Contributing
37
+ And in your appication admin avaliable new page with this settings
38
+
39
+ # Localization
40
+ You can localize settings keys in local file
41
+
42
+ ``` yml
43
+ en:
44
+ settings:
45
+ attributes:
46
+ my_awesome_settings:
47
+ name: 'My Awesome Lolaized Setting'
48
+ ```
26
49
 
27
- 1. Fork it ( https://github.com/[my-github-username]/activeadmin_settings_cached/fork )
28
- 2. Create your feature branch (`git checkout -b my-new-feature`)
29
- 3. Commit your changes (`git commit -am 'Add some feature'`)
30
- 4. Push to the branch (`git push origin my-new-feature`)
31
- 5. Create a new Pull Request
50
+ For how use Settings in you application see documentation fo rails-settings-cached gem https://github.com/huacnlee/rails-settings-cached
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency 'activeadmin', '1.0.0pre'
21
+ spec.add_dependency 'activeadmin', '1.0.0.pre'
22
22
  spec.add_dependency 'rails-settings-cached'
23
23
 
24
24
  spec.add_development_dependency "bundler", "~> 1.7"
@@ -0,0 +1,16 @@
1
+ ActiveAdmin.register_page "Settings" do
2
+ title = I18n.t('settings.menu.label')
3
+
4
+ menu label: title, priority: 99
5
+
6
+ content title: title do
7
+ render partial: 'admin/settings/index'
8
+ end
9
+
10
+ controller do
11
+ def settings_list
12
+ settings = ActiveadminSettingsCached.settings_klass
13
+ settings.defaults.merge!(settings.get_all)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,23 @@
1
+ module ActiveadminSettingsCached
2
+ class SettingsController < ApplicationController
3
+ def update
4
+ settings = ActiveadminSettingsCached.settings_klass
5
+
6
+ #TODO: this method call save every param
7
+ # save only changed values
8
+ settings_params.each_pair do |name, value|
9
+ settings[name] = value
10
+ end
11
+
12
+ redirect_to :back
13
+ end
14
+
15
+ private
16
+
17
+ def settings_params
18
+ settings_keys = ActiveadminSettingsCached.settings_klass.defaults.keys
19
+
20
+ params.require(:settings).permit(settings_keys)
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ <div>
2
+ <%= semantic_form_for :settings, :method => :put, url: activeadmin_settings_cached.settings_path do |f| %>
3
+ <table id="settings" class="index_table index">
4
+ <thead>
5
+ <tr>
6
+ <th style="width: 30%"><%= t('settings.index.name')%></th>
7
+ <th><%= t('settings.index.value')%></th>
8
+ </tr>
9
+ </thead>
10
+ <tbody>
11
+ <% controller.settings_list.each_pair do |name, value| %>
12
+ <tr class="odd">
13
+ <td><strong><%= t("settings.attributes.#{name}.name") %></strong></td>
14
+ <td>
15
+ <div class='form'>
16
+ <ol><%= f.input name, label: false, input_html: { value: value } %></ol>
17
+ </div>
18
+ </td>
19
+ </tr>
20
+ <% end%>
21
+ </tbody>
22
+ </table>
23
+ <%= f.submit %>
24
+ <% end %>
25
+ </div>
@@ -0,0 +1,11 @@
1
+ ru:
2
+ activerecord:
3
+ models:
4
+ setings: 'Настройки'
5
+
6
+ settings:
7
+ menu:
8
+ label: 'Настройки'
9
+ index:
10
+ name: 'Название'
11
+ value: 'Значение'
data/config/routes.rb ADDED
@@ -0,0 +1,3 @@
1
+ ActiveadminSettingsCached::Engine.routes.draw do
2
+ resource :settings, only: :update
3
+ end
@@ -0,0 +1,13 @@
1
+ require 'rails-settings-cached'
2
+
3
+ module ActiveadminSettingsCached
4
+ class Engine < Rails::Engine
5
+ isolate_namespace ActiveadminSettingsCached
6
+
7
+ initializer 'activeadmin_settings_cached.admin' do
8
+ ActiveAdmin.before_load do |app|
9
+ app.load_paths << File.expand_path("../../../app/admin", __FILE__)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -1,3 +1,3 @@
1
1
  module ActiveadminSettingsCached
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activeadmin_settings_cached
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Semyon Pupkov
@@ -16,54 +16,54 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0pre
19
+ version: 1.0.0.pre
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.0pre
26
+ version: 1.0.0.pre
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rails-settings-cached
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: '1.7'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.7'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
61
  version: '10.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: '10.0'
69
69
  description: ''
@@ -73,13 +73,19 @@ executables: []
73
73
  extensions: []
74
74
  extra_rdoc_files: []
75
75
  files:
76
- - ".gitignore"
76
+ - .gitignore
77
77
  - Gemfile
78
78
  - LICENSE.txt
79
79
  - README.md
80
80
  - Rakefile
81
81
  - activeadmin_settings_cached.gemspec
82
+ - app/admin/settings.rb
83
+ - app/controllers/activeadmin_settings_cached/settings_controller.rb
84
+ - app/views/admin/settings/_index.html.erb
85
+ - config/locales/ru.yml
86
+ - config/routes.rb
82
87
  - lib/activeadmin_settings_cached.rb
88
+ - lib/activeadmin_settings_cached/engine.rb
83
89
  - lib/activeadmin_settings_cached/version.rb
84
90
  homepage: ''
85
91
  licenses:
@@ -91,17 +97,17 @@ require_paths:
91
97
  - lib
92
98
  required_ruby_version: !ruby/object:Gem::Requirement
93
99
  requirements:
94
- - - ">="
100
+ - - '>='
95
101
  - !ruby/object:Gem::Version
96
102
  version: '0'
97
103
  required_rubygems_version: !ruby/object:Gem::Requirement
98
104
  requirements:
99
- - - ">="
105
+ - - '>='
100
106
  - !ruby/object:Gem::Version
101
107
  version: '0'
102
108
  requirements: []
103
109
  rubyforge_project:
104
- rubygems_version: 2.4.2
110
+ rubygems_version: 2.0.3
105
111
  signing_key:
106
112
  specification_version: 4
107
113
  summary: UI interface for rails-settings-cached in active admin