signinable 2.0.4 → 2.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/signin.rb +3 -1
- data/lib/signinable/model_additions.rb +11 -2
- data/lib/signinable/version.rb +1 -1
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/log/test.log +5 -0
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55794149ad1cc0c4a7be9a08d2cefbb0e1d10d61
|
4
|
+
data.tar.gz: e59d8ae956f9d4833c58ffb674358b1e4d4cba79
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8331f8045d7b3bbfeac9bc0c52239b0db9ee21e23a3616308dbc70a21bc6179e13b7894575c69fa55c8c119c302b37fec739d93badf0c74be57748d79404d0a6
|
7
|
+
data.tar.gz: 598d52c18fe092f3e59f6e781d9c34e9aeff4f5a81ac0825d25f616bf74c2fc929239f21f6bb9c4ab36841c69fec8d8dc3185b93c420b11ccaca0d076388c2c8
|
data/app/models/signin.rb
CHANGED
@@ -1,10 +1,12 @@
|
|
1
|
+
require 'resolv'
|
2
|
+
|
1
3
|
class Signin < ActiveRecord::Base
|
2
4
|
belongs_to :signinable, polymorphic: true
|
3
5
|
|
4
6
|
validates :token, presence: true
|
5
7
|
validates :ip,
|
6
8
|
presence: true,
|
7
|
-
format: { with:
|
9
|
+
format: { with: Regexp.union(Resolv::IPv4::Regex, Resolv::IPv6::Regex) }
|
8
10
|
|
9
11
|
before_validation on: :create do
|
10
12
|
self.token = SecureRandom.urlsafe_base64(rand(50..100))
|
@@ -9,7 +9,7 @@ module Signinable
|
|
9
9
|
cattr_accessor :signin_restrictions
|
10
10
|
self.signin_expiration = options.fetch(:expiration, 2.hours)
|
11
11
|
self.signin_simultaneous = options.fetch(:simultaneous, true)
|
12
|
-
self.signin_restrictions = options
|
12
|
+
self.signin_restrictions = options[:restrictions]
|
13
13
|
|
14
14
|
has_many :signins, as: :signinable, dependent: :destroy
|
15
15
|
end
|
@@ -40,7 +40,16 @@ module Signinable
|
|
40
40
|
|
41
41
|
private
|
42
42
|
def signin_permitted?(signin, ip, user_agent)
|
43
|
-
|
43
|
+
restriction_fields = case
|
44
|
+
when self.signin_restrictions.respond_to?(:call)
|
45
|
+
self.signin_restrictions.call(signin.signinable)
|
46
|
+
when self.signin_restrictions.is_a?(Array)
|
47
|
+
self.signin_restrictions
|
48
|
+
else
|
49
|
+
[]
|
50
|
+
end
|
51
|
+
|
52
|
+
restriction_fields.each do |field|
|
44
53
|
if(local_variables.include?(field.to_sym) && signin.respond_to?("#{field}"))
|
45
54
|
return false unless signin.send("#{field}") == eval("#{field}")
|
46
55
|
end
|
data/lib/signinable/version.rb
CHANGED
Binary file
|
@@ -0,0 +1,5 @@
|
|
1
|
+
[1m[35m (5.9ms)[0m [1m[34mSELECT sqlite_version(*)[0m
|
2
|
+
[1m[35m (2.2ms)[0m [1m[35mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL PRIMARY KEY)[0m
|
3
|
+
[1m[35m (0.9ms)[0m [1m[35mCREATE TABLE "ar_internal_metadata" ("key" varchar NOT NULL PRIMARY KEY, "value" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)[0m
|
4
|
+
[1m[35m (0.2ms)[0m [1m[34mSELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC[0m
|
5
|
+
Migrating to CreateUsers (20140103165606)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: signinable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Novozhenets
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -122,6 +122,8 @@ files:
|
|
122
122
|
- spec/dummy/config/routes.rb
|
123
123
|
- spec/dummy/db/migrate/20140103165606_create_users.rb
|
124
124
|
- spec/dummy/db/schema.rb
|
125
|
+
- spec/dummy/db/test.sqlite3
|
126
|
+
- spec/dummy/log/test.log
|
125
127
|
- spec/dummy/public/404.html
|
126
128
|
- spec/dummy/public/422.html
|
127
129
|
- spec/dummy/public/500.html
|
@@ -179,6 +181,8 @@ test_files:
|
|
179
181
|
- spec/dummy/config.ru
|
180
182
|
- spec/dummy/db/migrate/20140103165606_create_users.rb
|
181
183
|
- spec/dummy/db/schema.rb
|
184
|
+
- spec/dummy/db/test.sqlite3
|
185
|
+
- spec/dummy/log/test.log
|
182
186
|
- spec/dummy/public/404.html
|
183
187
|
- spec/dummy/public/422.html
|
184
188
|
- spec/dummy/public/500.html
|