sinatra_auth_gmail 0.0.1 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/README.md +29 -12
  2. data/Rakefile +1 -1
  3. data/lib/sinatra/auth/gmail.rb +28 -8
  4. metadata +47 -25
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
- sinatra_gmail_auth
1
+ sinatra_auth_gmail
2
2
  ==================
3
3
 
4
- A sinatra app the provides a gem that...
4
+ A sinatra app that lets you authenticate users via gmail.
5
5
 
6
6
  Developing
7
7
  ==========
@@ -14,15 +14,32 @@ Gemfile
14
14
  gem "sinatra_auth_gmail"
15
15
  # vim:ft=ruby
16
16
 
17
- Example
18
- -------
19
- module Fooby
20
- class App < Sinatra::Base
21
- register Sinatra::Auth::Gmail
22
- get '/' do
23
- authorize!
24
- haml "%h2= 'Hello There, #{gmail_user.full_name}!'"
25
- end
26
- end
17
+ Example config.ru
18
+ -----------------
19
+ require 'rubygems'
20
+ require 'bundler'
21
+
22
+ Bundler.setup
23
+ Bundler.require
24
+
25
+ class MyFirstGmailApp < Sinatra::Base
26
+ use Rack::Session::Cookie
27
+ register Sinatra::Auth::Gmail
28
+
29
+ get '/' do
30
+ authorize!
31
+ haml "%h2= 'Hello There, #{gmail_user.full_name}!'"
27
32
  end
28
33
  end
34
+
35
+ run MyFirstGmailApp
36
+
37
+ Executing
38
+ ---------
39
+ % bundle install
40
+ % bundle exec rackup
41
+
42
+ Visiting
43
+ --------
44
+ % open http://localhost:9292
45
+
data/Rakefile CHANGED
@@ -19,7 +19,7 @@ Spec::Rake::SpecTask.new do |t|
19
19
  end
20
20
 
21
21
  GEM = "sinatra_auth_gmail"
22
- GEM_VERSION = "0.0.1"
22
+ GEM_VERSION = "0.1.1"
23
23
  AUTHOR = "Corey Donohoe"
24
24
  EMAIL = "atmos@atmos.org"
25
25
  HOMEPAGE = "http://github.com/atmos/sinatra_auth_gmail"
@@ -1,7 +1,7 @@
1
1
  module Sinatra
2
2
  module Auth
3
3
  module Gmail
4
- class BadAuthentication < Sinatra::Default
4
+ class BadAuthentication < Sinatra::Base
5
5
  get '/unauthenticated' do
6
6
  status 403
7
7
  haml "%h3= 'Unable to authenticate, sorry bud.'"
@@ -9,20 +9,39 @@ module Sinatra
9
9
  end
10
10
 
11
11
  module Helpers
12
+ def warden
13
+ env['warden']
14
+ end
15
+
12
16
  def authorized?
13
- env['warden'].authenticate!
17
+ puts "authorized? depricated. Use authenticate! instead"
18
+ authenticate!
19
+ end
20
+
21
+ def authenticate!(*args)
22
+ warden.authenticate!(*args)
23
+ end
24
+
25
+ def authenticated?(*args)
26
+ warden.authenticated?(*args)
14
27
  end
15
28
 
16
29
  def authorize!
17
- throw(:warden) unless authorized?
30
+ puts "authorize! is depricated. Use authenticate! instead"
31
+ warden.authenticate!
18
32
  end
19
33
 
20
34
  def logout!
21
- env['warden'].logout
35
+ warden.logout
22
36
  end
23
37
 
24
38
  def gmail_user
25
- env['warden'].user
39
+ puts "gmail_user is depricated. Use google_user instead"
40
+ google_user
41
+ end
42
+
43
+ def google_user
44
+ warden.user
26
45
  end
27
46
  end
28
47
 
@@ -33,6 +52,7 @@ module Sinatra
33
52
 
34
53
  manager[:google_apps_endpoint] = 'http://www.google.com/accounts/o8/id'
35
54
  end
55
+
36
56
  app.helpers Helpers
37
57
 
38
58
  app.get '/logout' do
@@ -45,15 +65,15 @@ module Sinatra
45
65
  register Sinatra::Auth::Gmail
46
66
 
47
67
  before do
48
- authorize!
68
+ authenticate!
49
69
  end
50
70
 
51
71
  get '/' do
52
- haml "%h2= 'Hello There, #{gmail_user.full_name}!'"
72
+ haml "%h2= 'Hello There, #{google_user.full_name}!'"
53
73
  end
54
74
 
55
75
  get '/another_route' do
56
- haml "%h2= 'Hello There, #{gmail_user.full_name}!'"
76
+ haml "%h2= 'Hello There, #{google_user.full_name}!'"
57
77
  end
58
78
  end
59
79
  end
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sinatra_auth_gmail
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 1
8
+ - 1
9
+ version: 0.1.1
5
10
  platform: ruby
6
11
  authors:
7
12
  - Corey Donohoe
@@ -9,49 +14,64 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-02-09 00:00:00 -08:00
17
+ date: 2010-04-09 00:00:00 -04:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: haml
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ~>
22
26
  - !ruby/object:Gem::Version
27
+ segments:
28
+ - 2
29
+ - 2
30
+ - 0
23
31
  version: 2.2.0
24
- version:
32
+ type: :runtime
33
+ version_requirements: *id001
25
34
  - !ruby/object:Gem::Dependency
26
35
  name: sinatra
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
30
38
  requirements:
31
39
  - - ~>
32
40
  - !ruby/object:Gem::Version
33
- version: 0.9.4
34
- version:
41
+ segments:
42
+ - 1
43
+ - 0
44
+ version: "1.0"
45
+ type: :runtime
46
+ version_requirements: *id002
35
47
  - !ruby/object:Gem::Dependency
36
48
  name: rack
37
- type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
49
+ prerelease: false
50
+ requirement: &id003 !ruby/object:Gem::Requirement
40
51
  requirements:
41
- - - ~>
52
+ - - ">="
42
53
  - !ruby/object:Gem::Version
43
- version: 1.0.1
44
- version:
54
+ segments:
55
+ - 1
56
+ - 0
57
+ - 0
58
+ version: 1.0.0
59
+ type: :runtime
60
+ version_requirements: *id003
45
61
  - !ruby/object:Gem::Dependency
46
62
  name: warden-googleapps
47
- type: :runtime
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
63
+ prerelease: false
64
+ requirement: &id004 !ruby/object:Gem::Requirement
50
65
  requirements:
51
66
  - - ~>
52
67
  - !ruby/object:Gem::Version
53
- version: 0.0.3
54
- version:
68
+ segments:
69
+ - 0
70
+ - 0
71
+ - 5
72
+ version: 0.0.5
73
+ type: :runtime
74
+ version_requirements: *id004
55
75
  description: A sinatra extension that provides authentication for GMail authentication
56
76
  email: atmos@atmos.org
57
77
  executables: []
@@ -79,18 +99,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
79
99
  requirements:
80
100
  - - ">="
81
101
  - !ruby/object:Gem::Version
102
+ segments:
103
+ - 0
82
104
  version: "0"
83
- version:
84
105
  required_rubygems_version: !ruby/object:Gem::Requirement
85
106
  requirements:
86
107
  - - ">="
87
108
  - !ruby/object:Gem::Version
109
+ segments:
110
+ - 0
88
111
  version: "0"
89
- version:
90
112
  requirements: []
91
113
 
92
114
  rubyforge_project:
93
- rubygems_version: 1.3.5
115
+ rubygems_version: 1.3.6
94
116
  signing_key:
95
117
  specification_version: 3
96
118
  summary: A sinatra extension that provides authentication for GMail authentication