dailycred 0.1.2 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +4 -0
- data/Gemfile +14 -2
- data/Guardfile +15 -0
- data/README.md +159 -33
- data/Rakefile +30 -0
- data/app/controllers/sessions_controller.rb +31 -0
- data/app/views/sessions/info.html.erb +13 -0
- data/config/routes.rb +7 -0
- data/dailycred.gemspec +4 -3
- data/docs/lib/dailycred/acts_as_dailycred.html +42 -0
- data/docs/lib/dailycred/client.html +214 -0
- data/docs/lib/dailycred/engine.html +112 -0
- data/docs/lib/dailycred/helper.html +125 -0
- data/docs/lib/dailycred/middleware.html +42 -0
- data/docs/lib/dailycred/tests_helper.html +42 -0
- data/docs/lib/dailycred/user.html +133 -0
- data/docs/lib/dailycred.html +42 -0
- data/docs/lib/generators/dailycred_generator.html +42 -0
- data/docs/lib/generators/templates/migration_create_user.html +39 -0
- data/docs/lib/generators/templates/omniauth.html +71 -0
- data/docs/lib/generators/templates/sessions_controller.html +96 -0
- data/docs/lib/generators/templates/user.html +42 -0
- data/docs/lib/middleware/middleware.html +38 -0
- data/docs/lib/omniauth/strategies/dailycred.html +199 -0
- data/docs/lib/omniauth-dailycred/version.html +38 -0
- data/docs/lib/user/user.html +129 -0
- data/dummy/.gitignore +15 -0
- data/dummy/Gemfile +55 -0
- data/dummy/Guardfile +31 -0
- data/dummy/README.rdoc +261 -0
- data/dummy/Rakefile +7 -0
- data/dummy/app/assets/images/rails.png +0 -0
- data/dummy/app/assets/javascripts/application.js +15 -0
- data/dummy/app/assets/javascripts/posts.js.coffee +3 -0
- data/dummy/app/assets/stylesheets/application.css +13 -0
- data/dummy/app/assets/stylesheets/posts.css.scss +3 -0
- data/dummy/app/assets/stylesheets/scaffolds.css.scss +69 -0
- data/dummy/app/controllers/application_controller.rb +16 -0
- data/dummy/app/controllers/posts_controller.rb +85 -0
- data/dummy/app/helpers/application_helper.rb +2 -0
- data/dummy/app/helpers/posts_helper.rb +2 -0
- data/dummy/app/mailers/.gitkeep +0 -0
- data/dummy/app/models/.gitkeep +0 -0
- data/dummy/app/models/post.rb +3 -0
- data/dummy/app/models/user.rb +3 -0
- data/dummy/app/views/layouts/application.html.erb +14 -0
- data/dummy/app/views/posts/_form.html.erb +21 -0
- data/dummy/app/views/posts/edit.html.erb +6 -0
- data/dummy/app/views/posts/index.html.erb +23 -0
- data/dummy/app/views/posts/new.html.erb +5 -0
- data/dummy/app/views/posts/show.html.erb +10 -0
- data/dummy/config/application.rb +62 -0
- data/dummy/config/boot.rb +6 -0
- data/dummy/config/database.yml +25 -0
- data/dummy/config/environment.rb +5 -0
- data/dummy/config/environments/development.rb +37 -0
- data/dummy/config/environments/production.rb +67 -0
- data/dummy/config/environments/test.rb +37 -0
- data/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/dummy/config/initializers/inflections.rb +15 -0
- data/dummy/config/initializers/mime_types.rb +5 -0
- data/dummy/config/initializers/omniauth.rb +13 -0
- data/dummy/config/initializers/secret_token.rb +7 -0
- data/dummy/config/initializers/session_store.rb +8 -0
- data/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/dummy/config/locales/en.yml +5 -0
- data/dummy/config/routes.rb +61 -0
- data/dummy/config.ru +4 -0
- data/dummy/db/migrate/20120925172903_create_users.rb +68 -0
- data/dummy/db/migrate/20120926012555_create_posts.rb +9 -0
- data/dummy/db/migrate/20121002192037_update_users_2.rb +70 -0
- data/dummy/db/schema.rb +45 -0
- data/dummy/db/seeds.rb +7 -0
- data/dummy/lib/assets/.gitkeep +0 -0
- data/dummy/lib/tasks/.gitkeep +0 -0
- data/dummy/log/.gitkeep +0 -0
- data/dummy/public/404.html +26 -0
- data/dummy/public/422.html +26 -0
- data/dummy/public/500.html +25 -0
- data/dummy/public/favicon.ico +0 -0
- data/dummy/public/index.html +241 -0
- data/dummy/public/robots.txt +5 -0
- data/dummy/script/rails +6 -0
- data/dummy/test/fixtures/.gitkeep +0 -0
- data/dummy/test/fixtures/posts.yml +7 -0
- data/dummy/test/fixtures/users.yml +3 -0
- data/dummy/test/functional/.gitkeep +0 -0
- data/dummy/test/functional/posts_controller_test.rb +51 -0
- data/dummy/test/integration/.gitkeep +0 -0
- data/dummy/test/performance/browsing_test.rb +12 -0
- data/dummy/test/test_helper.rb +62 -0
- data/dummy/test/unit/.gitkeep +0 -0
- data/dummy/test/unit/helpers/posts_helper_test.rb +4 -0
- data/dummy/test/unit/post_test.rb +7 -0
- data/dummy/test/unit/user_test.rb +77 -0
- data/dummy/vendor/assets/javascripts/.gitkeep +0 -0
- data/dummy/vendor/assets/stylesheets/.gitkeep +0 -0
- data/dummy/vendor/plugins/.gitkeep +0 -0
- data/lib/dailycred/acts_as_dailycred.rb +87 -0
- data/lib/dailycred/client.rb +105 -0
- data/lib/dailycred/engine.rb +52 -0
- data/lib/dailycred/helper.rb +60 -0
- data/lib/{middleware → dailycred}/middleware.rb +25 -15
- data/lib/dailycred/tests_helper.rb +5 -0
- data/lib/dailycred/user.rb +63 -0
- data/lib/dailycred.rb +1 -79
- data/lib/generators/dailycred_generator.rb +94 -44
- data/lib/generators/templates/info.html.erb +1 -1
- data/lib/generators/templates/login.html.erb +13 -0
- data/lib/generators/templates/migration_create_user.rb +60 -10
- data/lib/generators/templates/omniauth.rb +6 -17
- data/lib/generators/templates/sessions_controller.rb +8 -2
- data/lib/generators/templates/user.rb +1 -23
- data/lib/omniauth/strategies/dailycred.rb +37 -20
- data/script/download_info.rb +11 -0
- data/spec/{spec_helper.rb → helper_spec.rb} +4 -2
- data/spec/omniauth/strategies/dailycred_spec.rb +52 -10
- data/spec/support/dailycred_spec.rb +72 -0
- data/spec/support/shared_examples.rb +40 -0
- data/test/generator_test.rb +85 -0
- data/test/test_helper.rb +6 -0
- metadata +116 -8
- data/lib/omniauth-dailycred/version.rb +0 -5
data/.gitignore
CHANGED
data/Gemfile
CHANGED
@@ -1,6 +1,18 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
# Specify your gem's dependencies in omniauth-dailycred.gemspec
|
4
3
|
gemspec
|
5
4
|
|
6
|
-
gem '
|
5
|
+
gem 'rspec'
|
6
|
+
gem 'rails'
|
7
|
+
gem 'simplecov'
|
8
|
+
gem 'ruby_gntp'
|
9
|
+
gem 'growl'
|
10
|
+
gem 'spork'
|
11
|
+
gem 'guard'
|
12
|
+
gem 'guard-test'
|
13
|
+
gem 'guard-rspec'
|
14
|
+
gem 'mocha'
|
15
|
+
gem 'fl-rocco'
|
16
|
+
gem 'redcarpet', '~> 1.17'
|
17
|
+
gem 'markdown'
|
18
|
+
gem 'maruku'
|
data/Guardfile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
# A sample Guardfile
|
2
|
+
# More info at https://github.com/guard/guard#readme
|
3
|
+
|
4
|
+
guard :test do
|
5
|
+
watch(%r{^lib/generators/(.+)\.rb$}) { "test/generator_test.rb" }
|
6
|
+
watch(%r{^test/.+_test\.rb$}) { "test/generator_test.rb" }
|
7
|
+
watch('test/test_helper.rb') { "test/generator_test.rb" }
|
8
|
+
end
|
9
|
+
|
10
|
+
guard 'rspec', :version => 2 do
|
11
|
+
watch(%r{^spec/.+_spec\.rb$})
|
12
|
+
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/support/#{m[1]}_spec.rb" }
|
13
|
+
watch('spec/spec_helper.rb') { "spec" }
|
14
|
+
end
|
15
|
+
|
data/README.md
CHANGED
@@ -1,67 +1,194 @@
|
|
1
1
|
# Dailycred
|
2
2
|
|
3
|
-
##
|
3
|
+
## Introduction
|
4
4
|
|
5
|
-
|
5
|
+
The Dailycred ruby gem is everything you need to get off the ground running with robust authentication. It includes an [omniauth](https://github.com/intridea/omniauth) provider and a generator to create necessary models and controllers. The generated authentication structure is inspired by [nifty-generators](https://github.com/ryanb/nifty-generators). To get started using Dailycred with Ruby on Rails, the first thing you need to do is add the dailycred gem to your gemfile:
|
6
6
|
|
7
|
-
|
7
|
+
gem 'dailycred'
|
8
8
|
|
9
|
-
|
9
|
+
Make sure you've signed up for Dailycred, and head over to your [settings](https://www.dailycred.com/admin/settings) page to get your API keys. Once you've done that, head back to the command line and run:
|
10
10
|
|
11
|
-
|
11
|
+
bundle
|
12
|
+
rails g dailycred
|
13
|
+
rake db:migrate
|
14
|
+
|
15
|
+
Thats it! You've successfully added authentication to your app, and you can start signing up users. Run `rails s` to start your
|
16
|
+
server, and point your browser to [http://localhost:3000/auth](http://localhost:3000/auth) and you'll see a pre-built page with links to sign up.
|
17
|
+
|
18
|
+
Here's what the dailycred gem generates for you:
|
19
|
+
|
20
|
+
* A few helper methods to `/app/controllers/application_controller.rb`.
|
21
|
+
* An initializer file at `/config/initializers/omniauth.rb` which configures your dailycred API keys.
|
22
|
+
* `/app/models/user.rb`, the User model.
|
23
|
+
* A migration file to create the user table in your database.
|
24
|
+
|
25
|
+
|
26
|
+
While this is enough to get off the ground running with user authentication, this setup is meant to be lightweight and flexible, so feel free to tinker with
|
27
|
+
any of the generated code to better match your needs.
|
28
|
+
|
29
|
+
## Authenticating
|
30
|
+
|
31
|
+
#### login_path
|
32
|
+
|
33
|
+
A helper for linking to the authentication url.
|
34
|
+
|
35
|
+
<%= link_to 'sign up', login_path %>
|
36
|
+
# => <a href="/auth/dailycred">sign up</a>
|
12
37
|
|
13
|
-
|
38
|
+
#### logout_path
|
14
39
|
|
15
|
-
|
40
|
+
To logout a user, simply send them to `/auth/logout`.
|
16
41
|
|
17
|
-
|
42
|
+
<%= link_to 'logout', logout_path %>
|
43
|
+
# => <a href="/auth/logout">logout</a>
|
18
44
|
|
19
|
-
|
20
|
-
|
45
|
+
#### authenticate
|
46
|
+
|
47
|
+
To protect a controller method from unauthorized users, use the 'authorize' helper method as a `before_filter`.
|
48
|
+
|
49
|
+
#before_filter :authenticate, :except => [:index] #don't authenticate some
|
50
|
+
#before_filter :authenticate, :only => [:create, :new] #only authenticate some
|
51
|
+
before_filter :authenticate #all methods
|
52
|
+
|
53
|
+
## Social Connect
|
54
|
+
|
55
|
+
To use a social sign-in service instead of email, and password, use `connect_path.`
|
21
56
|
|
22
|
-
|
57
|
+
<%= link_to 'sign in with facebook', connect_path(:identity_provider => :facebook) %>
|
23
58
|
|
24
|
-
|
59
|
+
The `identity_provider` can be one of `facebook`, `google`, or `twitter.`
|
25
60
|
|
26
|
-
|
61
|
+
After a user has social connected, their social data is serialized into individual fields in the user model. The serialized object is the exact same as what the social provider's graph response returns. For example:
|
27
62
|
|
28
|
-
|
63
|
+
p current_user.facebook
|
64
|
+
# =>
|
65
|
+
{
|
66
|
+
"video_upload_limits" => {
|
67
|
+
"length" => 1200.0,
|
68
|
+
"size" => 1073741824.0
|
69
|
+
},
|
70
|
+
"locale" => "en_US",
|
71
|
+
"link" => "http://www.facebook.com/joe.smith",
|
72
|
+
"updated_time" => "2012-09-27T19:04:38+0000",
|
73
|
+
"currency" => {
|
74
|
+
"user_currency" => "USD",
|
75
|
+
"currency_exchange" => 10.0,
|
76
|
+
"currency_exchange_inverse" => 0.1,
|
77
|
+
"currency_offset" => 100.0
|
78
|
+
},
|
79
|
+
"picture" => {
|
80
|
+
"data" => {
|
81
|
+
"url" => "http://profile.ak.fbcdn.net/hprofile-ak-ash4/370570_1039690812_2022945351_q.jpg",
|
82
|
+
"is_silhouette" => false
|
83
|
+
}
|
84
|
+
},
|
85
|
+
"id" => "1092609812",
|
86
|
+
"third_party_id" => "cBLDKnqlfYlReV7Jo4yRAFB1a4I",
|
87
|
+
"first_name" => "Joe",
|
88
|
+
"username" => "jsmitty",
|
89
|
+
"bio" => "shred the gnar.",
|
90
|
+
"email" => "jsmitty@dailycred.com",
|
91
|
+
"verified" => true,
|
92
|
+
"name" => "Joe Smith",
|
93
|
+
"last_name" => "Stoever",
|
94
|
+
"gender" => "male",
|
95
|
+
"access_token" =>"AAAFHsZAi9ddUBAKPMOKPDrmJlclwCoVHCfwflF5ZCyLZC70SOo0MPvj62lhHZAnV6jk8DEfBSjLtfcyC7Bx25a9CLphzoayv3EtvbE2tAQZDZD"
|
96
|
+
}
|
29
97
|
|
30
|
-
|
98
|
+
You can also connect additional social accounts to an existing user:
|
31
99
|
|
32
|
-
|
100
|
+
<%= link_to 'connect with facebook', connect_user(:facebook) %>
|
33
101
|
|
34
|
-
|
102
|
+
`connect_user` defaults to connecting the `current_user`, but you can explicitly connect any user:
|
35
103
|
|
36
|
-
|
104
|
+
<%= link_to 'connect with google', connect_user(:google, @user) %>
|
37
105
|
|
38
|
-
|
106
|
+
---
|
39
107
|
|
40
|
-
|
108
|
+
##Helpers
|
109
|
+
|
110
|
+
There are a few other helper methods available:
|
111
|
+
|
112
|
+
#### current_user
|
113
|
+
|
114
|
+
Returns the current logged in user or nil. Example usage:
|
115
|
+
|
116
|
+
if !current_user.nil?
|
117
|
+
redirect_to :controller => 'welcome', :action => 'thanks'
|
118
|
+
end
|
41
119
|
|
42
|
-
|
120
|
+
#### dailycred
|
43
121
|
|
44
|
-
|
122
|
+
A helper for instantiating a dailycred client instance. Use as a `before_filter` to load a @dailycred instance variable, or just use it as a helper method. Example usage:
|
45
123
|
|
46
|
-
|
124
|
+
As a before filter:
|
47
125
|
|
48
126
|
before_filter :dailycred
|
49
127
|
|
50
|
-
def
|
51
|
-
|
128
|
+
def index
|
129
|
+
@dailycred.event(current_user.uid, "New Task", @task.name)
|
130
|
+
end
|
52
131
|
|
53
|
-
|
54
|
-
@dailycred.event(current_user.uid, 'Created Post', @post.name)
|
132
|
+
or just as a helper
|
55
133
|
|
134
|
+
def index
|
135
|
+
dailycred.event(current_user.uid, "New Task", @task.name)
|
56
136
|
end
|
57
137
|
|
58
|
-
|
138
|
+
#### Tagging a User
|
139
|
+
|
140
|
+
Dailycred provides the ability to 'tag' users, whether for reference in analytics or any other reason. Note that this is a very simple 'tagging' system, and not something you should use for dynamic tagging situations in your application.
|
141
|
+
|
142
|
+
@user.tag 'awesome'
|
143
|
+
@user.untag 'awesome'
|
144
|
+
|
145
|
+
#### Firing Events
|
146
|
+
|
147
|
+
You can also fire events tied to a specific user - this is helpful for goal tracking and tying actions to a specific user in analytics. We already fire many events for when a user signs up, resets a password, and much more, but you can also use the event system for something more specific for your application.
|
148
|
+
|
149
|
+
# user#fire_event(key, value)
|
150
|
+
@user.fire_event 'task added', @task.name
|
151
|
+
|
152
|
+
#### Building Referral URLs
|
153
|
+
|
154
|
+
To easily build referral URLs to track sharing amongst your users, use `referral_link(my_site)`, where *my_site* is the url that you wish referred users to be sent to.
|
155
|
+
|
156
|
+
current_user.referral_link("http://www.mysite.com")
|
157
|
+
|
158
|
+
#### Testing Controllers
|
159
|
+
|
160
|
+
Testing controllers that have the `authenticate` before filter is easy:
|
161
|
+
|
162
|
+
# with mocha
|
163
|
+
@controller.expects(:current_user).returns(@user)
|
164
|
+
|
165
|
+
See `dummy/test/functional/post_controller_test.rb` for an example.
|
166
|
+
|
167
|
+
#### Dailycred API
|
168
|
+
|
169
|
+
For reference, have a look at the [annotated source code.](https://www.dailycred.com/public/docs/ruby/lib/dailycred.html)
|
170
|
+
|
171
|
+
For all API calls, you must first initalize a Dailycred client:
|
172
|
+
|
173
|
+
@dailycred = Dailycred.new "YOUR_CLIENT_ID", "your_secret_key", opts
|
174
|
+
|
175
|
+
Where opts is an optional hash for passing options. After initializing your client, you can create events as well as tag and untag users:
|
176
|
+
|
177
|
+
@dailycred.event(current_user.uid, "New Task", @task.name) # user_id, key, value
|
178
|
+
@dailycred.tag(current_user.uid, "Failed Checkout") # user_id, key
|
179
|
+
@dailycred.untag(current_user.uid, "Failed Checkout") # user_id, key
|
180
|
+
|
59
181
|
|
60
|
-
|
182
|
+
#### Configuration
|
61
183
|
|
62
|
-
|
184
|
+
To specify where users should be redirected after authentication actions, setup configure an `after_auth` property on a `Rails.configuration.DAILYCRED_OPTIONS` variable. Example:
|
63
185
|
|
64
|
-
|
186
|
+
# configure where users should be redirected after authentication
|
187
|
+
#
|
188
|
+
# Rails.configuration.DAILYCRED_OPTIONS = {
|
189
|
+
# :after_auth => '/hello', #after login
|
190
|
+
# :after_unauth => '/goodbye' #after logout
|
191
|
+
# }
|
65
192
|
|
66
193
|
## Contributing
|
67
194
|
|
@@ -71,6 +198,5 @@ If that is the case, consider following fixes explained [here](https://github.co
|
|
71
198
|
4. Push to the branch (`git push origin my-new-feature`)
|
72
199
|
5. Create new Pull Request
|
73
200
|
|
74
|
-
|
201
|
+
![](https://www.dailycred.com/dc.gif?client_id=dailycred&title=rails_repo "dailycred")
|
75
202
|
|
76
|
-
OmniAuth adapter for dailycred using their OAuth2 Strategy
|
data/Rakefile
CHANGED
@@ -1,2 +1,32 @@
|
|
1
1
|
#!/usr/bin/env rake
|
2
2
|
require "bundler/gem_tasks"
|
3
|
+
require 'rspec/core/rake_task'
|
4
|
+
|
5
|
+
desc 'Default: run specs.'
|
6
|
+
task :default => :spec
|
7
|
+
|
8
|
+
desc "Run specs"
|
9
|
+
RSpec::Core::RakeTask.new do |t|
|
10
|
+
# t.pattern = "./spec/**/*_spec.rb" # don't need this, it's default.
|
11
|
+
# Put spec opts in a file named .rspec in root
|
12
|
+
end
|
13
|
+
|
14
|
+
begin
|
15
|
+
require 'rocco'
|
16
|
+
require 'rocco/tasks'
|
17
|
+
require 'fileutils'
|
18
|
+
require 'maruku'
|
19
|
+
Rocco::make 'docs/'
|
20
|
+
FileUtils.cp_r "docs/lib/", "/Users/hank/rails/dailycred/public/docs/ruby/", :verbose => true
|
21
|
+
md = ""
|
22
|
+
File.open("README.md", "r") do |infile|
|
23
|
+
while (line = infile.gets)
|
24
|
+
md += line
|
25
|
+
end
|
26
|
+
end
|
27
|
+
doc = Maruku.new(md)
|
28
|
+
File.open("/Users/hank/rails/dailycred/app/views/tags/ruby.html", 'w') {|f| f.write doc.to_html}
|
29
|
+
rescue LoadError
|
30
|
+
warn "#$! -- rocco tasks not loaded."
|
31
|
+
task :rocco
|
32
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
class SessionsController < ApplicationController
|
2
|
+
before_filter :authenticate, :only => [:destroy]
|
3
|
+
before_filter :current_user
|
4
|
+
include Dailycred::Helpers
|
5
|
+
|
6
|
+
# Callback Route for OAuth flow
|
7
|
+
def create
|
8
|
+
@user = User.find_or_create_with_omniauth auth_hash
|
9
|
+
session[:user_id] = @user.id
|
10
|
+
redirect_to_auth
|
11
|
+
end
|
12
|
+
|
13
|
+
#GET /logout
|
14
|
+
def destroy
|
15
|
+
session[:user_id] = nil
|
16
|
+
redirect_to_unauth
|
17
|
+
end
|
18
|
+
|
19
|
+
def failure
|
20
|
+
redirect_to_unauth notice: params[:message]
|
21
|
+
end
|
22
|
+
|
23
|
+
def info
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def auth_hash
|
29
|
+
request.env['omniauth.auth']
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<% if current_user %>
|
2
|
+
<p>Hello <%= current_user.email %> <br>
|
3
|
+
<%= link_to 'Logout', dailycred_engine.logout_path %>
|
4
|
+
<br><%= link_to 'connect with facebook', connect_user(:facebook) %>
|
5
|
+
<br><%= link_to 'connect with google', connect_user(:google) %>
|
6
|
+
<br><%= link_to 'connect with twitter', connect_user(:twitter) %>
|
7
|
+
</p>
|
8
|
+
<% else %>
|
9
|
+
<%= link_to 'Log In', login_path() %>
|
10
|
+
<br><%= link_to 'connect with facebook', connect_path(:identity_provider => :facebook) %>
|
11
|
+
<br><%= link_to 'connect with google', connect_path(:identity_provider => :google) %>
|
12
|
+
<br><%= link_to 'connect with twitter', current_user.connect_path(:twitter) %>
|
13
|
+
<% end %>
|
data/config/routes.rb
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
Dailycred::Engine.routes.draw do
|
2
|
+
match "/:provider/callback" => "sessions#create"
|
3
|
+
match "/logout" => "sessions#destroy", :as => :logout
|
4
|
+
match "/" => "sessions#info", :as => :auth_info
|
5
|
+
# get "/dailycred", :as => :login
|
6
|
+
match "/failure" => "sessions#failure"
|
7
|
+
end
|
data/dailycred.gemspec
CHANGED
@@ -3,16 +3,17 @@
|
|
3
3
|
Gem::Specification.new do |gem|
|
4
4
|
gem.authors = ["Hank Stoever"]
|
5
5
|
gem.email = ["hstove@gmail.com"]
|
6
|
-
gem.description = %q{
|
7
|
-
gem.summary = %q{
|
6
|
+
gem.description = %q{A Ruby on Rails engine for authentication with Dailycred.}
|
7
|
+
gem.summary = %q{}
|
8
8
|
gem.homepage = "https://www.dailycred.com"
|
9
9
|
gem.add_dependency("omniauth")
|
10
10
|
gem.add_dependency("omniauth-oauth2")
|
11
11
|
|
12
|
+
|
12
13
|
gem.files = `git ls-files`.split("\n")
|
13
14
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
14
15
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
15
16
|
gem.name = "dailycred"
|
16
17
|
gem.require_paths = ["lib"]
|
17
|
-
gem.version = "0.1.
|
18
|
+
gem.version = "0.1.4"
|
18
19
|
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="content-type" content="text/html;charset=utf-8">
|
5
|
+
<title>acts_as_dailycred.rb</title>
|
6
|
+
<link rel="stylesheet" href="http://jashkenas.github.com/docco/resources/docco.css">
|
7
|
+
</head>
|
8
|
+
<body>
|
9
|
+
<div id='container'>
|
10
|
+
<div id="background"></div>
|
11
|
+
<div id="jump_to">
|
12
|
+
Jump To …
|
13
|
+
<div id="jump_wrapper">
|
14
|
+
<div id="jump_page">
|
15
|
+
<a class="source" href="../dailycred.html">dailycred.rb</a>
|
16
|
+
<a class="source" href="acts_as_dailycred.html">acts_as_dailycred.rb</a>
|
17
|
+
<a class="source" href="client.html">client.rb</a>
|
18
|
+
<a class="source" href="engine.html">engine.rb</a>
|
19
|
+
<a class="source" href="helper.html">helper.rb</a>
|
20
|
+
<a class="source" href="middleware.html">middleware.rb</a>
|
21
|
+
<a class="source" href="tests_helper.html">tests_helper.rb</a>
|
22
|
+
<a class="source" href="user.html">user.rb</a>
|
23
|
+
<a class="source" href="../generators/dailycred_generator.html">dailycred_generator.rb</a>
|
24
|
+
<a class="source" href="../generators/templates/migration_create_user.html">migration_create_user.rb</a>
|
25
|
+
<a class="source" href="../generators/templates/omniauth.html">omniauth.rb</a>
|
26
|
+
<a class="source" href="../generators/templates/sessions_controller.html">sessions_controller.rb</a>
|
27
|
+
<a class="source" href="../generators/templates/user.html">user.rb</a>
|
28
|
+
<a class="source" href="../omniauth/strategies/dailycred.html">dailycred.rb</a>
|
29
|
+
</div>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
<table cellspacing=0 cellpadding=0>
|
33
|
+
<thead>
|
34
|
+
<tr>
|
35
|
+
<th class=docs><h1>acts_as_dailycred.rb</h1></th>
|
36
|
+
<th class=code></th>
|
37
|
+
</tr>
|
38
|
+
</thead>
|
39
|
+
<tbody>
|
40
|
+
</table>
|
41
|
+
</div>
|
42
|
+
</body>
|