sso_clyent 0.0.7.38 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,7 @@ module SsoClyent
22
22
  @@signup_url = config[:signup_url] || "#{@@provyder[:url]}/users/sign_up"
23
23
  @@login_url = config[:login_url] || "#{@@provyder[:url]}/users/sign_in"
24
24
  @@edit_account_url = config[:edit_account_url] || "#{@@provyder[:url]}/users/edit"
25
+ @@login_timeout = config[:login_timeout] || 9.minutes
25
26
  end
26
27
 
27
28
  def self.user_class
@@ -2,12 +2,17 @@ module SsoClyent
2
2
  module CurrentUserHelpers
3
3
 
4
4
  def self.included base
5
- unless base.is_a?(Module)
6
- base.send :before_filter, :sso_clyent_check_if_from_sign_up
7
- base.send :before_filter, :sso_clyent_store_return_to_url
5
+ if base.is_a?(Class)
6
+ base.send :prepend_before_filter, :sso_clyent_check_if_from_sign_up
7
+ base.send :prepend_before_filter, :sso_clyent_store_return_to_url
8
8
  end
9
9
  end
10
10
 
11
+ def fresh_login_required
12
+ current_user_logout
13
+ login_required
14
+ end
15
+
11
16
  def login_required
12
17
  if !current_user
13
18
  return respond_to do |format|
@@ -18,13 +23,18 @@ module SsoClyent
18
23
  end
19
24
 
20
25
  def current_user
21
- return nil unless session[:user_id]
26
+ return nil unless sso_clyent_session_active?
22
27
  users = sso_clyent_user_klass
23
28
  uid = sso_clyent_userid
24
29
  if users.respond_to?(:"find_by_#{uid}")
25
30
  @current_user ||= users.send(:"find_by_#{uid}", session[:user_id]['uid'])
26
31
  end
27
32
  end
33
+
34
+ def sso_clyent_session_active?
35
+ session[:user_id] = nil if Time.now - session[:sso_clyent_last_login] > SsoClyent.login_timeout
36
+ session[:user_id]
37
+ end
28
38
 
29
39
  def user_signed_in?
30
40
  !!current_user
@@ -59,6 +69,7 @@ module SsoClyent
59
69
  end
60
70
 
61
71
  def sso_clyent_store_return_to_url
72
+ puts "sso_clyent_store_return_to_url"
62
73
  (session['for_sign_up'] ||= {})['send_back_to'] = session['return-to-url'] = request.url
63
74
  end
64
75
  end
@@ -1,3 +1,3 @@
1
1
  module SsoClyent
2
- VERSION = "0.0.7.38"
2
+ VERSION = "0.1.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sso_clyent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7.38
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-04-06 00:00:00.000000000 Z
12
+ date: 2014-04-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: &70336545198980 !ruby/object:Gem::Requirement
16
+ requirement: &70195582569900 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 3.2.8
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70336545198980
24
+ version_requirements: *70195582569900
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: omniauth-oauth2
27
- requirement: &70336545197660 !ruby/object:Gem::Requirement
27
+ requirement: &70195582569040 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - =
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.1.1
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70336545197660
35
+ version_requirements: *70195582569040
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: mysql2
38
- requirement: &70336545197040 !ruby/object:Gem::Requirement
38
+ requirement: &70195582567240 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70336545197040
46
+ version_requirements: *70195582567240
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec-rails
49
- requirement: &70336545196300 !ruby/object:Gem::Requirement
49
+ requirement: &70195582566460 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70336545196300
57
+ version_requirements: *70195582566460
58
58
  description: See sso_provyder for the provider part. Based on Devise, Authentifyd
59
59
  and joshsoftware/sso-devise-omniauth-client. Parts directly taken from https://github.com/joshsoftware/sso-devise-omniauth-client
60
60
  email: