signinable 2.0.8 → 2.0.9
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dfd2f8cb93874c2f44d45af37cb5bd4290a6ee97
|
4
|
+
data.tar.gz: 2f351adfbffad55c6cb969da80e995876ebbf3e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76d30b26ad8ff5f4c48cfc5a62b83ab5d671ca466e577ede1eee46cb834e60370146cd7f86a5502aca92c00f67e4fb9ff4496d9a57b18536db5fac3a8638bd1e
|
7
|
+
data.tar.gz: ecc32963b5478ff9f610d0bbd8b8448787eeb070ac0d9232c39fb7f9f1d65ca3f44ecd8c859aa757685a2fe59ee6b4aef86cb11667aa4eac9707b05208e514c3
|
data/app/models/signin.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
migration_kls = Rails::VERSION::MAJOR > 4 ? ActiveRecord::Migration[5.0] : ActiveRecord::Migration
|
2
|
+
|
3
|
+
class AddCustomDataToSigins < migration_kls
|
4
|
+
def change
|
5
|
+
|
6
|
+
if ActiveRecord::Base.connection.instance_values["config"][:adapter] == "postgresql"
|
7
|
+
add_column :signins, :custom_data, :jsonb, null:false, default: {}
|
8
|
+
else
|
9
|
+
add_column :signins, :custom_data, :string, null:false, default: {}.to_json
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
@@ -59,12 +59,12 @@ module Signinable
|
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
62
|
-
def signin(ip, user_agent, referer, permanent = false)
|
62
|
+
def signin(ip, user_agent, referer, permanent = false, custom_data = {})
|
63
63
|
if self.class.signin_expiration.respond_to?(:call)
|
64
64
|
self.class.signin_expiration = self.class.signin_expiration.call(self)
|
65
65
|
end
|
66
66
|
expiration_time = (self.class.signin_expiration == 0 || permanent) ? nil : (Time.zone.now + self.class.signin_expiration)
|
67
|
-
Signin.create!(signinable: self, ip: ip, referer: referer, user_agent: user_agent, expiration_time: expiration_time).token
|
67
|
+
Signin.create!(custom_data: custom_data, signinable: self, ip: ip, referer: referer, user_agent: user_agent, expiration_time: expiration_time).token
|
68
68
|
end
|
69
69
|
|
70
70
|
def signout(token, ip, user_agent, skip_restrictions=[])
|
@@ -81,6 +81,7 @@ module Signinable
|
|
81
81
|
def last_signin
|
82
82
|
signins.last unless signins.empty?
|
83
83
|
end
|
84
|
+
|
84
85
|
end
|
85
86
|
end
|
86
87
|
|
data/lib/signinable/version.rb
CHANGED
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.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Novozhenets
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-06-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -93,6 +93,7 @@ files:
|
|
93
93
|
- app/models/signin.rb
|
94
94
|
- config/routes.rb
|
95
95
|
- db/migrate/20140103165607_create_signins.rb
|
96
|
+
- db/migrate/20180530131006_add_custom_data_to_sigins.rb
|
96
97
|
- lib/signinable.rb
|
97
98
|
- lib/signinable/engine.rb
|
98
99
|
- lib/signinable/model_additions.rb
|
@@ -153,7 +154,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
153
154
|
version: '0'
|
154
155
|
requirements: []
|
155
156
|
rubyforge_project:
|
156
|
-
rubygems_version: 2.
|
157
|
+
rubygems_version: 2.5.1
|
157
158
|
signing_key:
|
158
159
|
specification_version: 4
|
159
160
|
summary: Token based signin
|