sso_clyent 0.0.7.38 → 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.
@@ -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: