omniauth-frontrush 1.0.7 → 1.0.9

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.
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
-