omniauth-frontrush 1.0.7 → 1.0.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MTFkMDJlN2E5ZTQzMjcxZmQ5OWE2ZjViN2E0N2VlMDhlNzM4MTcwYQ==
5
- data.tar.gz: !binary |-
6
- N2UyMTI3YmMyYWQ0ZWE1ZGJhYWQxZTk2Njk1MzRiNDgwMjBiOGNiOQ==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- NDFmMDUxZTI5ZWIwODg0YTVlYWRjMjhlNjUwMmI5OTE3MjUyNDcxOTg3NmZh
10
- NzBlMzg1YTAzZWRhNWQ5YTAxMzU4MTExYjJmNTc0NTMzNmYwMzQ5NzQwY2E4
11
- ZGMxOTRlZjM4YWNlY2E3MmJjM2MwMWZkNTQ5ZDJmMWNkNDhjYzA=
12
- data.tar.gz: !binary |-
13
- ZjAyYzMxZWU4ODZkZDU2ODlmNWExYTM4N2FkOWI2NWRiZmVlYjIyZTEwNmQ0
14
- NjA1YjNkOTlhNjVlZGI0OTJiZTk2ZjRhYzA4M2Q0Yzk3ZTNmYzhiYTFhYWQ5
15
- MDYxMTc2YmE1ZDhmM2EwYjc0ZTBhMTFkNzQyMGM3NDc4ODQwZTc=
2
+ SHA1:
3
+ metadata.gz: 33fb3d7fec7ab946caeab704c5de1a83d232d9af
4
+ data.tar.gz: 314c6aec1bad83ff518a862fa5fa51a5319bef28
5
+ SHA512:
6
+ metadata.gz: c2c2ae88f8b4e5bf25ccc0c3316d2344aaf77568c871df4c6bdcc1b166d56c99dfc3053b40529a2ed6e3ad3fd6b441c8b36778aebd3c094c8c1cfd7bd6ae8142
7
+ data.tar.gz: 2b05578ba4b086c552891a7b1b53ae316315c762ec0a54426bd97474f11e01bb17c5d2f2d02ffbe543d516e7f80896739b44ae46d3ed94c81419116ebf4d2f8b
@@ -1,2 +1,2 @@
1
- #the main file of this gem
1
+ # the main file of this gem
2
2
  require 'omniauth/frontrush'
@@ -1 +1 @@
1
- require 'omniauth/strategies/frontrush'
1
+ require 'omniauth/strategies/frontrush'
@@ -1,5 +1,5 @@
1
1
  module OmniAuth
2
2
  module frontrushontrush
3
- VERSION = "1.0.7"
3
+ VERSION = "1.0.6"
4
4
  end
5
5
  end
@@ -1,6 +1,5 @@
1
1
  require 'oauth2'
2
2
  require 'omniauth'
3
- require 'oauthrequest'
4
3
  module OmniAuth
5
4
  module Strategies
6
5
  class Frontrush
@@ -9,66 +8,61 @@ module OmniAuth
9
8
  @raw_json['data']['Email']
10
9
  end
11
10
  credentials do
12
- {:oauth_token => @raw_json['data']['Token'],:oauth_token_secret => @raw_json['data']['TokenSecret']}
11
+ { oauth_token: @raw_json['data']['Token'], oauth_token_secret: @raw_json['data']['TokenSecret'] }
13
12
  end
14
13
  extra do
15
14
  @raw_json['data']
16
15
  end
17
- info do
18
- {:raw => @raw_json_string}
19
- end
20
16
  def request_phase
21
- response = get_request_token(options)
22
- if !(response.code.start_with?("4"))
23
- request_token = set_request_token(response)
24
- redirect get_redirect_url(callback_url,request_token)
25
- end
17
+ redirect get_redirect_url(callback_url + '?device=web', options)
26
18
  end
27
19
 
28
20
  def callback_phase
29
- optionshash = {:consumer_key => options[:consumer_key],:consumer_secret => options[:consumer_secret],:token => nil,:token_secret=>nil}
30
- url = set_request_url(request,options)
31
- response = OAuthRequest.new.request(url,"GET",optionshash,nil)
32
- @raw_json= get_json_from_response(response)
33
- super
21
+ optionshash = { consumer_key: options[:consumer_key], consumer_secret: options[:consumer_secret], token: nil, token_secret: nil }
22
+ response = get_access_token(request, options, optionshash)
23
+ super if get_json_from_response(response)
34
24
  end
25
+
35
26
  private
36
- def get_request_token(options)
37
- request_path = "/token/request_token"
38
- optionshash = {:consumer_key => options[:consumer_key],:consumer_secret => options[:consumer_secret],:token => nil,:token_secret=>nil}
39
- url = options[:frontrush_url] +request_path
40
- OAuthRequest.new.request(url,"GET",optionshash,nil)
27
+
28
+ def get_access_token(request, options, optionshash)
29
+ url = set_request_url(request, options)
30
+ uri = URI.parse(url)
31
+ request = Net::HTTP::Get.new(URI.parse(url))
32
+ response = Net::HTTP.start(uri.host, uri.port) do|http|
33
+ http.request(request)
34
+ end
41
35
  end
42
- def get_redirect_url(callback_url,request_token)
43
- options[:frontrush_url]+"/login.aspx?&consumer_key=key&callback="+callback_url+"&request_code="+request_token
36
+
37
+ def get_redirect_url(callback_url, options)
38
+ options[:frontrush_url] + '/login.aspx?&consumer_key=' + options[:consumer_key] + '&callback=' + callback_url
44
39
  end
40
+
45
41
  def set_request_token(response)
46
- request_token = URI.encode(response.body)
47
- request_token = request_token.gsub("\"","")
42
+ request_token = URI.escape(response.body)
43
+ request_token = request_token.gsub("\"", '')
48
44
  env['rack.session'][:oauth_request_token] = request_token
49
- return request_token
45
+ request_token
50
46
  end
47
+
51
48
  def get_json_from_response(response)
52
- @raw_json_string = response.body.slice(1,response.body.length-2)
53
- @raw_json_string = @raw_json_string.gsub("\\\"",'"')
54
- raw_json= JSON.parse(@raw_json_string)
49
+ @raw_json_string = response.body.slice(1, response.body.length - 2)
50
+ @raw_json_string = @raw_json_string.gsub("\\\"", '"')
51
+ begin
52
+ @raw_json = JSON.parse(@raw_json_string)
53
+ rescue Exception => e
54
+ @raw_json = e.to_json
55
+ return false
56
+ end
57
+ true
55
58
  end
56
- def set_request_url(request,options)
59
+
60
+ def set_request_url(request, options)
61
+ oauth_consumer_key = options[:consumer_key]
57
62
  oauth_verifier = URI.escape(request.params['oauth_verifier'])
58
- request_token = process_request_token(request)
59
- request_path = "/token/access_token?oauth_verifier="+oauth_verifier.to_s+"&oauth_request_token="+request_token
60
- url = options[:frontrush_url] +request_path
61
- end
62
- def process_request_token(request)
63
- if request.params['oauth_request_token'].nil?
64
- request_token = env['rack.session'][:oauth_request_token]
65
- else
66
- request_token = request.params['oauth_request_token']
67
- end
68
- env['rack.session'][:oauth_request_token] = nil
69
- request_token = request_token.gsub("\"","")
70
- request_token = URI.encode(request_token)
63
+ request_path = '/oauth/access_token?oauth_verifier=' + oauth_verifier.to_s + '&oauth_consumer_key=' + oauth_consumer_key
64
+ options[:frontrush_url] + request_path
71
65
  end
72
66
  end
73
67
  end
74
- end
68
+ end
@@ -1,14 +1,6 @@
1
- #test
1
+ # test
2
2
  require 'test/unit'
3
3
  require 'omniauth-frontrush'
4
4
  class OmniauthfrontrushTest < Test::Unit::TestCase
5
- def test_english_hello
6
- assert_equal "hello world",OmniauthYelp.hi("english")
7
- end
8
- def test_any_hello
9
- assert_equal "hello world",OmniauthYelp.hi("ruby")
10
- end
11
- def test_spanish_hello
12
- assert_equal "hola mundo",OmniauthYelp.hi("spanish")
13
- end
14
- end
5
+
6
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniauth-frontrush
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dhanesh Neela Mana
@@ -14,98 +14,98 @@ dependencies:
14
14
  name: omniauth
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: omniauth-oauth2
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: oauth2
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: 0.8.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 0.8.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '2.7'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '2.7'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rack-test
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ! '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ! '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: webmock
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ! '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ! '>='
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: simplecov
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ! '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ! '>='
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  description: A simple omniauth gem for frontrush
@@ -114,11 +114,10 @@ executables: []
114
114
  extensions: []
115
115
  extra_rdoc_files: []
116
116
  files:
117
- - lib/oauthrequest.rb
118
117
  - lib/omniauth-frontrush.rb
119
118
  - lib/omniauth/frontrush.rb
120
- - lib/omniauth/strategies/frontrush.rb
121
119
  - lib/omniauth/frontrush/version.rb
120
+ - lib/omniauth/strategies/frontrush.rb
122
121
  - test/test_omniauth-fr.rb
123
122
  homepage: https://github.com/FrontRush/omniauth-frontrush
124
123
  licenses:
@@ -130,17 +129,17 @@ require_paths:
130
129
  - lib
131
130
  required_ruby_version: !ruby/object:Gem::Requirement
132
131
  requirements:
133
- - - ! '>='
132
+ - - ">="
134
133
  - !ruby/object:Gem::Version
135
134
  version: '0'
136
135
  required_rubygems_version: !ruby/object:Gem::Requirement
137
136
  requirements:
138
- - - ! '>='
137
+ - - ">="
139
138
  - !ruby/object:Gem::Version
140
139
  version: '0'
141
140
  requirements: []
142
141
  rubyforge_project:
143
- rubygems_version: 2.0.7
142
+ rubygems_version: 2.2.2
144
143
  signing_key:
145
144
  specification_version: 4
146
145
  summary: omniauth-frontrush!
@@ -1,89 +0,0 @@
1
- require 'cgi'
2
- require 'uri'
3
- require 'timeout'
4
- require 'openssl'
5
- require 'base64'
6
- require 'net/http'
7
-
8
- module OmniAuth
9
- module Strategies
10
- class OAuthRequest
11
- @options = nil
12
- def request url,httpmethod,optionshash,data
13
- @options = optionshash
14
- return_data = nil
15
- parsed_url = URI.parse( url )
16
- Net::HTTP.start( parsed_url.host,parsed_url.port) { | http |
17
- params = sign(parsed_url,httpmethod)
18
- signed_req = get_query_string(params)
19
- request =""
20
- if(httpmethod.downcase == "post")
21
- request = Net::HTTP::Post.new("#{ parsed_url.path }?#{ signed_req }")
22
- request.set_form_data(data)
23
- else
24
- request = Net::HTTP::Get.new "#{ parsed_url.path }?#{ signed_req }"
25
- end
26
- response = http.request(request)
27
- return_data = response
28
- }
29
- return_data
30
- end
31
- def percent_encode( string )
32
- if string.nil?
33
- return ""
34
- else
35
- return URI.escape( string, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]") ).gsub('*', '%2A')
36
- end
37
- end
38
- def signature base_str
39
- key_string = percent_encode(@options[:consumer_secret])
40
- if( @options[:token_secret] )
41
- key_string += '&'+percent_encode(@options[:token_secret])
42
- end
43
- # key_sha = Digest::SHA1.digest(key_string)
44
- # digest = OpenSSL::Digest::Digest.new("sha1")
45
- hmac = OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new('sha1'), key_string.encode("ASCII"), base_str.encode("ASCII"))
46
- # hmac = OpenSSL::HMAC.digest( digest, key_sha, base_str )
47
- puts Base64.strict_encode64( hmac.to_s )
48
- Base64.strict_encode64( hmac.to_s ).chomp.gsub( /\n/, '' )
49
- end
50
- def get_query_string params
51
- pairs = []
52
- params.sort.each { | key, val |
53
- if(val.class != [].class)
54
- pairs.push( "#{ percent_encode( key ) }=#{ percent_encode( val.to_s ) }" )
55
- else
56
- pairs.push( "#{ percent_encode( key ) }=#{ percent_encode( val[0].to_s ) }" )
57
- end
58
- }
59
- pairs.join '&'
60
- end
61
- def sign( parsed_url ,req_method)
62
- params = {
63
- 'oauth_consumer_key' => @options[:consumer_key],
64
- 'oauth_nonce' => Array.new( 5 ) { rand(256) }.pack('C*').unpack('H*').first,
65
- 'oauth_signature_method' => 'HMAC-SHA1',
66
- 'oauth_timestamp' => Time.now.to_i.to_s,
67
- 'oauth_version' =>'1.0'
68
- }
69
- if @options[:token]
70
- params['oauth_token'] = @options[:token]
71
- end
72
- req_url = parsed_url.to_s.split("?")[0]
73
- base_str = [
74
- req_method,
75
- percent_encode( req_url ),
76
- percent_encode( get_query_string(params) )
77
-
78
- ].join( '&' )
79
- params[ 'oauth_signature' ] = signature(base_str)
80
- if parsed_url.query
81
- params.merge! CGI.parse( parsed_url.query )
82
- end
83
- return params
84
- end
85
- end
86
- end
87
- end
88
-
89
-