devise_facebook_connectable 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -21,7 +21,7 @@ begin
21
21
  spec.files = FileList['[A-Z]*', File.join(*%w[{generators,lib,rails} ** *]).to_s]
22
22
 
23
23
  spec.add_dependency 'activesupport', '>= 2.3.0'
24
- spec.add_dependency 'devise', '1.0.0'
24
+ spec.add_dependency 'devise', '>= 1.0.0'
25
25
  spec.add_dependency 'facebooker', '>= 1.0.55'
26
26
  end
27
27
  Jeweler::GemcutterTasks.new
@@ -1,17 +1,6 @@
1
1
  # encoding: utf-8
2
- begin
3
- require 'devise'
4
- rescue
5
- gem 'devise'
6
- require 'devise'
7
- end
8
-
9
- begin
10
- require 'facebooker'
11
- rescue
12
- gem 'facebooker'
13
- require 'facebooker'
14
- end
2
+ require 'devise'
3
+ require 'facebooker'
15
4
 
16
5
  require 'devise_facebook_connectable/model' # QUESTION: should this really be here? Autoloaded below...
17
6
  require 'devise_facebook_connectable/strategy'
@@ -1,5 +1,6 @@
1
1
  # encoding: utf-8
2
2
  require 'facebooker/session'
3
+ require 'action_controller'
3
4
 
4
5
  module Devise #:nodoc:
5
6
  module FacebookConnectable #:nodoc:
@@ -15,7 +16,6 @@ module Devise #:nodoc:
15
16
  #
16
17
  # * http://github.com/mmangino/facebooker/blob/master/lib/facebooker/rails/controller.rb
17
18
  #
18
-
19
19
  def self.included(base) #:nodoc:
20
20
  base.class_eval do
21
21
  before_filter :expired_session_hack
@@ -30,6 +30,7 @@ module Devise #:nodoc:
30
30
  #
31
31
  def expired_session_hack
32
32
  clear_facebook_session_information
33
+ Facebooker::Session.current = nil
33
34
  rescue
34
35
  if RUBY_VERSION >= '1.9' && RAILS_GEM_VERSION == '2.3.4'
35
36
  # Rails 2.3.4 on Ruby 1.9 issue. Should not happen in Rails 2.3.5+
@@ -1,7 +1,6 @@
1
1
  # encoding: utf-8
2
2
  require 'devise/models'
3
3
  require 'facebooker/session'
4
- require 'devise_facebook_connectable/strategy'
5
4
 
6
5
  module Devise #:nodoc:
7
6
  # module FacebookConnectable #:nodoc:
@@ -181,7 +180,7 @@ module Devise #:nodoc:
181
180
 
182
181
  # Authenticate a user based on Facebook UID.
183
182
  #
184
- def facebook_connect(attributes = {})
183
+ def authenticate_with_facebook_connect(attributes = {})
185
184
  if attributes[:uid].present?
186
185
  self.find_for_facebook_connect(attributes[:uid])
187
186
  end
@@ -1,6 +1,5 @@
1
1
  # encoding: utf-8
2
2
  require 'devise/schema'
3
- require 'devise_facebook_connectable/model'
4
3
 
5
4
  module Devise #:nodoc:
6
5
  module FacebookConnectable #:nodoc:
@@ -14,7 +14,7 @@ module Devise #:nodoc:
14
14
  # Without a Facebook session authentication cannot proceed.
15
15
  #
16
16
  def valid?
17
- super && ::Facebooker::Session.current.present?
17
+ mapping.to.respond_to?('authenticate_with_facebook_connect') && ::Facebooker::Session.current.present?
18
18
  end
19
19
 
20
20
  # Authenticate user with Facebook Connect.
@@ -25,7 +25,7 @@ module Devise #:nodoc:
25
25
  facebook_session = ::Facebooker::Session.current # session[:facebook_session]
26
26
  facebook_user = facebook_session.user
27
27
 
28
- user = klass.facebook_connect(:uid => facebook_user.uid)
28
+ user = klass.authenticate_with_facebook_connect(:uid => facebook_user.uid)
29
29
 
30
30
  if user.present?
31
31
  success!(user)
@@ -1,5 +1,5 @@
1
1
  module Devise
2
2
  module FacebookConnectable
3
- VERSION = "0.2.0".freeze
3
+ VERSION = "0.2.1".freeze
4
4
  end
5
5
  end
@@ -121,7 +121,7 @@ module Devise #:nodoc:
121
121
 
122
122
  protected
123
123
 
124
- # Auto-detect Devise scope using +Warden::Manager.default_scope+.
124
+ # Auto-detect Devise scope using +Devise.default_scope+.
125
125
  # Used to make the link-helpers smart if - like in most cases -
126
126
  # only one devise scope will be used, e.g. "user" or "account".
127
127
  #
@@ -135,8 +135,7 @@ module Devise #:nodoc:
135
135
  "Use: facebook_*_link(:some_scope), or facebook_*_link(:scope => :some_scope)")
136
136
  end
137
137
 
138
- scope = args.detect { |arg| arg.is_a?(Symbol) } || options[:scope]
139
- scope ||= ::Warden::Manager.default_scope
138
+ scope = args.detect { |arg| arg.is_a?(Symbol) } || options[:scope] || ::Devise.default_scope
140
139
  mapping = ::Devise.mappings[scope]
141
140
 
142
141
  if mapping.for.include?(:facebook_connectable)
@@ -165,7 +164,7 @@ module Devise #:nodoc:
165
164
  :id => (sign_out_form ? 'fb_connect_sign_out_form' : 'fb_connect_sign_in_form'),
166
165
  :style => 'display:none;'
167
166
  )
168
- scope = ::Devise::Mapping.find_by_path(request.path).to rescue scope
167
+ scope = ::Devise::Mapping.find_by_path(request.path).name rescue scope
169
168
  url = sign_out_form ? destroy_session_path(scope) : session_path(scope)
170
169
 
171
170
  form_for(scope, :url => url, :html => options) { |f| }
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 0
9
- version: 0.2.0
8
+ - 1
9
+ version: 0.2.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Jonas Grimfelt
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-04-15 00:00:00 +02:00
17
+ date: 2010-04-19 00:00:00 +02:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -36,7 +36,7 @@ dependencies:
36
36
  prerelease: false
37
37
  requirement: &id002 !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - "="
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  segments:
42
42
  - 1