settingson 1.2.22 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fef8b2be92f46bc95e2ee956d0809cf8faf4abe1
4
- data.tar.gz: b73fb6dcc1c767cc307095576fbd8c60f630d2c7
3
+ metadata.gz: 9aa6d03e8b75983a07d5e6785a4e4568ee5ed263
4
+ data.tar.gz: ef2d696f0832dd9cae9b44b94d335057a9f8c9e4
5
5
  SHA512:
6
- metadata.gz: 08592f51401ed0e1328d123013bb29c4c4493f31d07d9a5128b2c09d4056155bd49c2de1550823a4aac50761947f0c28db0c4bd1f2c71f4f7df621caa8a27b19
7
- data.tar.gz: b57850f82e14020208f02346807c206900ac2275e7ea6ac76a8782f91f4e9a413a7224cf12260ecebb83a2397d65419754c745492fbd39f088b6de763bb56025
6
+ metadata.gz: 941079284edbe34349d08f5623413bdffcf676cbabcfbd3449bc625b57a7cf8c8b5b3fd611caec6f21a9855321ebc702c68651db4161d6856d75da6823df19ad
7
+ data.tar.gz: 00c50d207845a378789147fc5080475738f5c810d7c5b158c830039df6af4c846954f090cd9ed2727ac766e89cd4b0eab082ae6d434bee86946d2185f753f99c
data/README.md CHANGED
@@ -28,7 +28,7 @@ Settings.array # => [1, 2, 3, 4, 5]
28
28
  # Array of hashes
29
29
  Settings.array_of.hashes = [ { hello: :world}, {'glad' => :to}, {see: 'you'} ]
30
30
  Settings.array_of.hashes # => [{:hello=>:world}, {"glad"=>:to}, {:see=>"you"}]
31
- ```
31
+
32
32
  # Boolean
33
33
  Settings.item # => false
34
34
  Settings.item = :hello
@@ -36,13 +36,15 @@ Settings.item # => true
36
36
 
37
37
  # ActiveRecord
38
38
  Settings.item! # => <Settings id: 1, key: "item", value: :hello, created_at: "...", updated_at: "...">
39
+ ```
39
40
 
40
41
  ### Using with [Simple Form](https://github.com/plataformatec/simple_form) and [Haml](https://github.com/haml/haml)
41
42
  in view:
42
43
  ```ruby
43
- = simple_form_for Settings.server do |f|
44
- = f.input :host
45
- = f.input :port
44
+ = simple_form_for(Settings, url: settings_path) do |f|
45
+ = f.error_notification
46
+ = f.input :'host.port'
47
+ = f.button :submit
46
48
  ```
47
49
 
48
50
  ## Installation
@@ -4,10 +4,7 @@ module Settingson::Base
4
4
 
5
5
  included do
6
6
  attr_accessor :settingson
7
-
8
- after_find do |setting|
9
- setting.value = YAML.load(setting.value)
10
- end
7
+ serialize :value
11
8
  end
12
9
 
13
10
  def to_s
@@ -30,9 +27,9 @@ module Settingson::Base
30
27
  if record = self.class.find_by(key: @settingson) and args.first.nil?
31
28
  record.destroy
32
29
  elsif record
33
- record.update(value: args.first.to_yaml)
30
+ record.update(value: args.first)
34
31
  else
35
- self.class.create(key: @settingson, value: args.first.to_yaml)
32
+ self.class.create(key: @settingson, value: args.first)
36
33
  end
37
34
  when /(.+)\?$/ # returns boolean
38
35
  @settingson = "#{@settingson}.#{$1}"
@@ -47,7 +44,7 @@ module Settingson::Base
47
44
  else
48
45
  @settingson += ".#{symbol.to_s}"
49
46
  end
50
-
47
+
51
48
  if record = self.class.find_by(key: @settingson)
52
49
  record.value
53
50
  else
@@ -71,19 +68,18 @@ module Settingson::Base
71
68
  if record = find_by(key: @settingson) and args.first.nil?
72
69
  record.destroy
73
70
  elsif record
74
- record.update(value: args.first.to_yaml)
71
+ record.update(value: args.first)
75
72
  else
76
- create(key: @settingson, value: args.first.to_yaml, settingson: @settingson)
73
+ create(key: @settingson, value: args.first, settingson: @settingson)
77
74
  end
78
-
79
- when /(.+)\?$/ #
75
+
76
+ when /(.+)\?$/ #
80
77
  find_by(key: $1).present?
81
78
  when /(.+)\!$/ # returns self or nil
82
79
  find_by(key: $1)
83
80
  else # getter
84
81
 
85
82
  if record = find_by(key: symbol.to_s)
86
- # YAML.load record.value
87
83
  record.value
88
84
  else
89
85
  new(settingson: symbol.to_s)
@@ -1,3 +1,3 @@
1
1
  module Settingson
2
- VERSION = "1.2.22"
2
+ VERSION = "1.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: settingson
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.22
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - dan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-19 00:00:00.000000000 Z
11
+ date: 2015-05-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -213,7 +213,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
213
213
  version: '0'
214
214
  requirements: []
215
215
  rubyforge_project:
216
- rubygems_version: 2.4.3
216
+ rubygems_version: 2.4.6
217
217
  signing_key:
218
218
  specification_version: 4
219
219
  summary: Settings management for Ruby on Rails 4 applications (ActiveRecord)