activerecord-be_readonly 0.0.3 → 0.1.0

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0f07236a1f88846395e09422c09c4076fe32d483
4
+ data.tar.gz: 4d253bf6885c7c79163de783ea4ec6ac2f195fe7
5
+ SHA512:
6
+ metadata.gz: bb3ab5c8382a45aa5980b287df2fed99ebcffeaa89e3dca32207a1323989ed0799ea0fc0081277773c1e37b199a4e234bd227c047bd1612c97cdd53556512f64
7
+ data.tar.gz: 3cc9fac3386e8ea6c68b9f8db808234e00c437575886bd4bd90b428f165ab5180db24f86228302c130aba6e8d3e5ad504c0bc702a61c4ddf1881adf02b648922
data/README.md CHANGED
@@ -39,9 +39,19 @@ Or if you are off-rails, but use ActiveRecord, just do this in the model class:
39
39
 
40
40
  include BeReadonly::Now
41
41
 
42
+ ### Configuration
43
+
44
+ Useful if you'd like to turn off read-only only for tests, etc.
45
+
46
+ # application-wide setting. true by default.
47
+ BeReadonly.enabled = false
48
+
42
49
  ### Contributors
43
50
 
44
- Thanks to Gabriel Naiman for his patch!
51
+ Thanks to:
52
+ * [vkhater](https://github.com/vkhater)
53
+ * [Gabriel Naiman](https://github.com/gabynaiman)
54
+ * [Gary Weaver](https://github.com/garysweaver)
45
55
 
46
56
  ### License
47
57
 
@@ -1,4 +1,5 @@
1
1
  require 'activerecord-be_readonly/version'
2
+ require 'activerecord-be_readonly/config'
2
3
  require 'activerecord-be_readonly/model'
3
4
  require 'activerecord-be_readonly/now'
4
5
  require 'activerecord-be_readonly/railtie' if defined?(Rails)
@@ -0,0 +1,7 @@
1
+ module BeReadonly
2
+ class << self
3
+ attr_accessor :enabled
4
+ end
5
+ end
6
+
7
+ BeReadonly.enabled = true
@@ -8,32 +8,37 @@ module BeReadonly
8
8
  include BeReadonlyInstanceMethods # intentionally not just InstanceMethods as those would be automatically included via ActiveSupport::Concern
9
9
 
10
10
  before_destroy do
11
- raise ActiveRecord::ReadOnlyRecord
11
+ raise ActiveRecord::ReadOnlyRecord if BeReadonly.enabled
12
12
  end
13
13
  end
14
14
  end
15
15
 
16
16
  module BeReadonlyClassMethods
17
17
  def delete(id_or_array)
18
- raise ActiveRecord::ReadOnlyRecord
18
+ raise ActiveRecord::ReadOnlyRecord if BeReadonly.enabled
19
+ super
19
20
  end
20
21
 
21
22
  def delete_all(conditions = nil)
22
- raise ActiveRecord::ReadOnlyRecord
23
+ raise ActiveRecord::ReadOnlyRecord if BeReadonly.enabled
24
+ super
23
25
  end
24
26
 
25
27
  def update_all(conditions = nil)
26
- raise ActiveRecord::ReadOnlyRecord
28
+ raise ActiveRecord::ReadOnlyRecord if BeReadonly.enabled
29
+ super
27
30
  end
28
31
  end
29
32
 
30
33
  module BeReadonlyInstanceMethods
31
34
  def readonly?
32
- return true
35
+ return true if BeReadonly.enabled
36
+ super
33
37
  end
34
38
 
35
39
  def delete
36
- raise ActiveRecord::ReadOnlyRecord
40
+ raise ActiveRecord::ReadOnlyRecord if BeReadonly.enabled
41
+ super
37
42
  end
38
43
  end
39
44
  end
@@ -1,3 +1,3 @@
1
1
  module BeReadonly
2
- VERSION = '0.0.3'
2
+ VERSION = '0.1.0'
3
3
  end
metadata CHANGED
@@ -1,30 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-be_readonly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
5
- prerelease:
4
+ version: 0.1.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Gary S. Weaver
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-29 00:00:00.000000000 Z
11
+ date: 2015-08-17 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activerecord
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  description: Makes read-only models easier to implement in ActiveRecord 3.x/4.x.
@@ -34,36 +31,36 @@ executables: []
34
31
  extensions: []
35
32
  extra_rdoc_files: []
36
33
  files:
34
+ - README.md
35
+ - Rakefile
36
+ - lib/activerecord-be_readonly.rb
37
+ - lib/activerecord-be_readonly/config.rb
37
38
  - lib/activerecord-be_readonly/model.rb
38
39
  - lib/activerecord-be_readonly/now.rb
39
40
  - lib/activerecord-be_readonly/railtie.rb
40
41
  - lib/activerecord-be_readonly/version.rb
41
- - lib/activerecord-be_readonly.rb
42
- - Rakefile
43
- - README.md
44
42
  homepage: https://github.com/garysweaver/activerecord-be_readonly
45
43
  licenses:
46
44
  - MIT
45
+ metadata: {}
47
46
  post_install_message:
48
47
  rdoc_options: []
49
48
  require_paths:
50
49
  - lib
51
50
  required_ruby_version: !ruby/object:Gem::Requirement
52
- none: false
53
51
  requirements:
54
- - - ! '>='
52
+ - - ">="
55
53
  - !ruby/object:Gem::Version
56
54
  version: '0'
57
55
  required_rubygems_version: !ruby/object:Gem::Requirement
58
- none: false
59
56
  requirements:
60
- - - ! '>='
57
+ - - ">="
61
58
  - !ruby/object:Gem::Version
62
59
  version: '0'
63
60
  requirements: []
64
61
  rubyforge_project:
65
- rubygems_version: 1.8.24
62
+ rubygems_version: 2.4.6
66
63
  signing_key:
67
- specification_version: 3
64
+ specification_version: 4
68
65
  summary: Easy read-only models for ActiveRecord 3.x/4.x.
69
66
  test_files: []