uzuuzu-core 0.1.7 → 0.1.8

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.7
1
+ 0.1.8
@@ -253,6 +253,7 @@ module UzuUzu
253
253
  end
254
254
  end
255
255
  request_paths.each_with_index do |request_path, index|
256
+ break if _c.nil?
256
257
  next if request_path.blank?
257
258
  c_str = request_path.camel_case
258
259
  route = "#{request_paths[0...index].join('/')}"
@@ -273,8 +274,13 @@ module UzuUzu
273
274
  if map && map[:controller].kind_of?(::Class)
274
275
  classies << map
275
276
  end
276
- _c = map[:controller] if map
277
+ if map
278
+ _c = map[:controller]
279
+ else
280
+ _c = nil
281
+ end
277
282
  unless _c.kind_of?(::Class) || _c.kind_of?(::Module)
283
+ _c = nil
278
284
  break
279
285
  end
280
286
  end
@@ -0,0 +1,90 @@
1
+ # coding: utf-8
2
+ require 'oauth'
3
+
4
+ module UzuUzu
5
+ module Controller
6
+ module Login
7
+ #
8
+ #
9
+ #
10
+ class Oauth
11
+
12
+ #
13
+ #
14
+ #
15
+ def index(name)
16
+ get_config(name)
17
+ if session[:login_user_id]
18
+ response.redirect request.referrer || '/'
19
+ end
20
+ session[:referer] = request.referrer || '/'
21
+ twitter_consumer = ::OAuth::Consumer.new(
22
+ @config['consumer_key'],
23
+ @config['consumer_secret'],
24
+ @config
25
+ )
26
+ request_token = twitter_consumer.get_request_token(:oauth_callback => "#{helper.root_uri}#{helper.r(:callback)}/#{name}")
27
+ session[:twitter_request_token] = request_token.token
28
+ session[:twitter_request_token_secret] = request_token.secret
29
+
30
+ response.redirect request_token.authorize_url
31
+ rescue => e
32
+ logger.debug "oauth_request_error #{e}"
33
+ response.server_error
34
+ end # index
35
+
36
+ #
37
+ #
38
+ #
39
+ def callback(name)
40
+ get_config(name)
41
+ if session[:login_user_id]
42
+ response.redirect request.referrer || '/'
43
+ end
44
+ twitter_consumer = ::OAuth::Consumer.new(
45
+ @config['consumer_key'],
46
+ @config['consumer_secret'],
47
+ @config
48
+ )
49
+ request_token = ::OAuth::RequestToken.new(
50
+ twitter_consumer,
51
+ session[:twitter_request_token],
52
+ session[:twitter_request_token_secret]
53
+ )
54
+ access_token = request_token.get_access_token(
55
+ {},
56
+ :oauth_token => request.params[:oauth_token],
57
+ :oauth_verifier => request.params[:oauth_verifier]
58
+ )
59
+ session[:twitter_access_token] = access_token.token
60
+ session[:twitter_access_token_secret] = access_token.secret
61
+ session.delete(:twitter_request_token)
62
+ session.delete(:twitter_request_token_secret)
63
+
64
+ session[:twitter_user_id] = access_token.params[:user_id]
65
+ session[:login_user_id] = access_token.params[:screen_name]
66
+ session[:login_name] = access_token.params[:screen_name]
67
+ session[:login_domain] = name
68
+ referrer = session[:referer] || '/'
69
+ session.delete(:referer)
70
+ response.redirect referrer || '/'
71
+ rescue => e
72
+ logger.debug "oauth_callback_error #{e}"
73
+ response.server_error
74
+ end # callback
75
+
76
+ private
77
+ #
78
+ #
79
+ #
80
+ def get_config(name)
81
+ @oauth_config = Environments.current.config['oauth']
82
+ response.server_error if @oauth_config.blank?
83
+ @config = @oauth_config[name]
84
+ response.server_error if @config.blank?
85
+ end # get_config
86
+
87
+ end # Oauth
88
+ end # Login
89
+ end # Controller
90
+ end # UzuUzu
@@ -5,7 +5,7 @@ module UzuUzu
5
5
  include ::UzuUzu::Helper::Controller
6
6
  require 'uzuuzu-core/controller/index'
7
7
  module Login
8
- require 'uzuuzu-core/controller/login/twitter'
8
+ require 'uzuuzu-core/controller/login/oauth'
9
9
  end
10
10
 
11
11
  def self.current
data/uzuuzu-core.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{uzuuzu-core}
8
- s.version = "0.1.7"
8
+ s.version = "0.1.8"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Takuya Kondo"]
12
- s.date = %q{2011-12-25}
12
+ s.date = %q{2012-01-01}
13
13
  s.description = %q{uzuuzu core library}
14
14
  s.email = %q{takuya_v_v@uzuuzu.jp}
15
15
  s.extra_rdoc_files = [
@@ -29,7 +29,7 @@ Gem::Specification.new do |s|
29
29
  "lib/uzuuzu-core/application.rb",
30
30
  "lib/uzuuzu-core/controller.rb",
31
31
  "lib/uzuuzu-core/controller/index.rb",
32
- "lib/uzuuzu-core/controller/login/twitter.rb",
32
+ "lib/uzuuzu-core/controller/login/oauth.rb",
33
33
  "lib/uzuuzu-core/controller/view/error/404.rhtml",
34
34
  "lib/uzuuzu-core/controller/view/error/500.rhtml",
35
35
  "lib/uzuuzu-core/environments.rb",
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: uzuuzu-core
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.7
5
+ version: 0.1.8
6
6
  platform: ruby
7
7
  authors:
8
8
  - Takuya Kondo
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-12-25 00:00:00 +09:00
13
+ date: 2012-01-01 00:00:00 +09:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -145,7 +145,7 @@ files:
145
145
  - lib/uzuuzu-core/application.rb
146
146
  - lib/uzuuzu-core/controller.rb
147
147
  - lib/uzuuzu-core/controller/index.rb
148
- - lib/uzuuzu-core/controller/login/twitter.rb
148
+ - lib/uzuuzu-core/controller/login/oauth.rb
149
149
  - lib/uzuuzu-core/controller/view/error/404.rhtml
150
150
  - lib/uzuuzu-core/controller/view/error/500.rhtml
151
151
  - lib/uzuuzu-core/environments.rb
@@ -196,7 +196,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
196
196
  requirements:
197
197
  - - ">="
198
198
  - !ruby/object:Gem::Version
199
- hash: 4358867638685412053
199
+ hash: -4458084607244374049
200
200
  segments:
201
201
  - 0
202
202
  version: "0"
@@ -1,78 +0,0 @@
1
- # coding: utf-8
2
- require 'oauth'
3
-
4
- module UzuUzu
5
- module Controller
6
- module Login
7
- #
8
- #
9
- #
10
- class Twitter
11
-
12
- def index
13
- @config = Environments.current.config['twitter']
14
- response.server_error if @config.blank?
15
- if session[:login_user_id]
16
- response.redirect request.referrer || '/'
17
- end
18
- if session[:twitter_request_token].blank?
19
- request_token
20
- end
21
- access_token
22
- response.redirect session[:referer] || '/'
23
- end # index
24
-
25
- private
26
- def request_token
27
- session[:referer] = request.referrer || '/'
28
- twitter_consumer = OAuth::Consumer.new(
29
- @config['consumer_key'],
30
- @config['consumer_secret'],
31
- :site => "http://twitter.com",
32
- :request_token_url => 'https://api.twitter.com/oauth/request_token',
33
- :autorize_url => 'https://api.twitter.com/oauth/authorize',
34
- :access_token_url => 'https://api.twitter.com/oauth/access_token',
35
- :oauth_callback => "#{helper.root_uri}#{helper.r}"
36
- )
37
- request_token = twitter_consumer.get_request_token()
38
- session[:twitter_request_token] = request_token.token
39
-
40
- response.redirect request_token.authorize_url(:oauth_callback => "#{helper.root_uri}#{helper.r}")
41
- rescue
42
- response.server_error
43
- end # request_token
44
-
45
- def access_token
46
- twitter_consumer = OAuth::Consumer.new(
47
- @config['consumer_key'],
48
- @config['consumer_secret'],
49
- :site => "http://twitter.com",
50
- :request_token_url => 'https://api.twitter.com/oauth/request_token',
51
- :autorize_url => 'https://api.twitter.com/oauth/authorize',
52
- :access_token_url => 'https://api.twitter.com/oauth/access_token',
53
- )
54
- request_token = OAuth::RequestToken.new(
55
- twitter_consumer,
56
- session[:twitter_request_token]
57
- )
58
- access_token = request_token.get_access_token(
59
- {},
60
- :oauth_token => request.params[:oauth_token],
61
- :oauth_verifier => request.params[:oauth_verifier]
62
- )
63
- session[:twitter_access_token] = access_token.token
64
- session[:twitter_access_token_secret] = access_token.secret
65
- session.delete(:twitter_request_token)
66
-
67
- session[:twitter_user_id] = access_token.params[:user_id]
68
- session[:login_user_id] = access_token.params[:screen_name]
69
- session[:login_name] = access_token.params[:screen_name]
70
- session[:login_domain] = 'twitter'
71
- rescue => e
72
- response.server_error
73
- end # access_token
74
-
75
- end # Twitter
76
- end # Login
77
- end # Controller
78
- end # UzuUzu