devise_facebook_connectable 0.1.0 → 0.1.1
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.
- data/Rakefile +2 -2
- data/generators/devise_facebook_connectable/devise_facebook_connectable_generator.rb +13 -0
- data/generators/devise_facebook_connectable/templates/devise.facebook_connectable.js +31 -0
- data/generators/devise_facebook_connectable/templates/facebooker.yml +28 -0
- data/lib/devise_facebook_connectable.rb +22 -3
- metadata +9 -3
data/Rakefile
CHANGED
@@ -23,11 +23,11 @@ begin
|
|
23
23
|
|
24
24
|
gemspec.require_paths = %w{lib}
|
25
25
|
gemspec.files = SUPPORT_FILES << %w(Rakefile) <<
|
26
|
-
Dir.glob(File.join(*%w[{
|
26
|
+
Dir.glob(File.join(*%w[{generators,lib} ** *]).to_s)
|
27
27
|
gemspec.extra_rdoc_files = SUPPORT_FILES
|
28
28
|
|
29
29
|
gemspec.add_dependency 'activesupport', '>= 2.3.0'
|
30
|
-
gemspec.add_dependency 'devise', '>= 0.7.
|
30
|
+
gemspec.add_dependency 'devise', '>= 0.7.1'
|
31
31
|
gemspec.add_dependency 'facebooker', '>= 1.0.55'
|
32
32
|
end
|
33
33
|
Jeweler::GemcutterTasks.new
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
class DeviseFacebookConnectableGenerator < Rails::Generator::Base
|
4
|
+
|
5
|
+
def manifest
|
6
|
+
record do |m|
|
7
|
+
m.dependency 'xd_receiver', [], options.merge(:collision => :skip)
|
8
|
+
m.template 'facebooker.yml', File.join(*%w[config facebooker.yml])
|
9
|
+
m.template 'devise.facebook_connectable.js', File.join(*%w[public javascripts devise.facebook_connectable.js])
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/**
|
2
|
+
* Helpers for devise_facebook_connectable, to make connect/login/logout with Devise seamless.
|
3
|
+
*/
|
4
|
+
|
5
|
+
if (typeof devise === 'undefined' || devise === null) {
|
6
|
+
devise = {};
|
7
|
+
}
|
8
|
+
|
9
|
+
if (typeof devise.facebook_connectable === 'undefined' || devise.facebook_connectable === null) {
|
10
|
+
devise.facebook_connectable = {};
|
11
|
+
}
|
12
|
+
|
13
|
+
devise.facebook_connectable.login = function fb_connect_login() {
|
14
|
+
document.getElementById('fb_connect_login_form').submit();
|
15
|
+
return false;
|
16
|
+
};
|
17
|
+
|
18
|
+
devise.facebook_connectable.custom_login = function fb_connect_custom_login() {
|
19
|
+
FB.Connect.requireSession(fb_connect_login);
|
20
|
+
return false;
|
21
|
+
};
|
22
|
+
|
23
|
+
devise.facebook_connectable.logout = function fb_connect_logout() {
|
24
|
+
document.getElementById('fb_connect_logout_form').submit();
|
25
|
+
return false;
|
26
|
+
};
|
27
|
+
|
28
|
+
devise.facebook_connectable.custom_logout = function fb_connect_custom_logout() {
|
29
|
+
FB.Connect.logout(fb_connect_logout);
|
30
|
+
return false;
|
31
|
+
};
|
@@ -0,0 +1,28 @@
|
|
1
|
+
defaults: &defaults
|
2
|
+
api_key: YOUR_APP_API_KEY
|
3
|
+
secret_key: YOUR_APP_SECRET_KEY
|
4
|
+
canvas_page_name: YOUR_APP_CANVAS_NAME
|
5
|
+
callback_url: http://localhost:3000 # for testing - depends on your Facebook App settings though.
|
6
|
+
pretty_errors: true
|
7
|
+
set_asset_host_to_callback_url: false
|
8
|
+
tunnel:
|
9
|
+
public_host_username:
|
10
|
+
public_host:
|
11
|
+
public_port: 4007
|
12
|
+
local_port: 3000
|
13
|
+
|
14
|
+
development:
|
15
|
+
<<: *defaults
|
16
|
+
|
17
|
+
test: &test
|
18
|
+
<<: *defaults
|
19
|
+
|
20
|
+
cucumber:
|
21
|
+
<<: *test
|
22
|
+
|
23
|
+
production: &production
|
24
|
+
<<: *defaults
|
25
|
+
|
26
|
+
staging:
|
27
|
+
<<: *production
|
28
|
+
|
@@ -40,7 +40,26 @@ module Devise
|
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
43
|
-
#
|
43
|
+
# Load core I18n locales: en
|
44
44
|
#
|
45
|
-
|
46
|
-
|
45
|
+
I18n.load_path.unshift File.expand_path(File.join(File.dirname(__FILE__), *%w[devise_facebook_connectable locales en.yml]))
|
46
|
+
|
47
|
+
# Add +:facebook_connectable+ serializers and strategies to defaults.
|
48
|
+
#
|
49
|
+
Devise.setup do |config|
|
50
|
+
config.warden do |manager|
|
51
|
+
manager.default_strategies.unshift :facebook_connectable
|
52
|
+
manager.default_serializers.unshift :facebook_connectable
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
# Override to get Devise to get that SessionsController should be used for both
|
57
|
+
# :facebook_connectable and :authenticatable. Controller-logic is the same.
|
58
|
+
#
|
59
|
+
Devise::Mapping.class_eval do
|
60
|
+
|
61
|
+
def allows?(controller)
|
62
|
+
(self.for & [Devise::CONTROLLERS[controller.to_sym], :facebook_connectable].flatten).present?
|
63
|
+
end
|
64
|
+
|
65
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_facebook_connectable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonas Grimfelt
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-12-
|
12
|
+
date: 2009-12-09 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.7.
|
33
|
+
version: 0.7.1
|
34
34
|
version:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: facebooker
|
@@ -50,6 +50,9 @@ extensions: []
|
|
50
50
|
|
51
51
|
extra_rdoc_files:
|
52
52
|
- Rakefile
|
53
|
+
- generators/devise_facebook_connectable/devise_facebook_connectable_generator.rb
|
54
|
+
- generators/devise_facebook_connectable/templates/devise.facebook_connectable.js
|
55
|
+
- generators/devise_facebook_connectable/templates/facebooker.yml
|
53
56
|
- lib/devise_facebook_connectable.rb
|
54
57
|
- lib/devise_facebook_connectable/controller_filters.rb
|
55
58
|
- lib/devise_facebook_connectable/locales/en.yml
|
@@ -61,6 +64,9 @@ extra_rdoc_files:
|
|
61
64
|
- lib/devise_facebook_connectable/view_helpers.rb
|
62
65
|
files:
|
63
66
|
- Rakefile
|
67
|
+
- generators/devise_facebook_connectable/devise_facebook_connectable_generator.rb
|
68
|
+
- generators/devise_facebook_connectable/templates/devise.facebook_connectable.js
|
69
|
+
- generators/devise_facebook_connectable/templates/facebooker.yml
|
64
70
|
- lib/devise_facebook_connectable.rb
|
65
71
|
- lib/devise_facebook_connectable/controller_filters.rb
|
66
72
|
- lib/devise_facebook_connectable/locales/en.yml
|