Skip to content

pablomarti/simple_user

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimpleUser

Manage users and admins with Devise and Omniauth-Facebook.

Make avaiable to your users for loggin with Devise or Facebook, and manage them and your admins. Each admin is related to roles with Rolify, and manages authorization with CanCan.

Installation

  1. Add to your gemfile: gem 'simple_user'

  2. Run bundle

  3. Execute: rails generate simple_user:install

  4. Run migrations: rake db:migrate

  5. Run seeds: rake db:seed

  6. Add to your routes.rb: mount SimpleUser::Engine => "/simple_user", :as => "simple_user"

  7. Add to your application.js: //= require simple_user/application

  8. Add before filters banned? and set_user_return_to (check /lib/simple_user/concerns/controllers/application_controller.rb if you want to override these methods)

  9. Watch the test/dummy for an example of the links

  10. Remember add config.action_mailer.default_url_options = { :host => 'localhost:3000' } to your config/application.rb, and change the host in production

Link your views

Example for users:

<% unless user_signed_in? %>
	<%=link_to "Login", simple_user.new_user_session_path %>
	<%= link_to "Login with Facebook", "/simple_user/auth/facebook", id: "sign_in" %>
<% else %>
	<%= link_to "Welcome, #{current_user.username}", simple_user.edit_user_registration_path %>
	<%= link_to "Log out", simple_user.destroy_user_session_path, method: :delete, id: "sign_out" %>
<% end %>

Example for admins:

<% unless admin_user_signed_in? %>
	<%=link_to "Login", simple_user.new_admin_user_session_path %>
<% else %>
	<%= link_to "Welcome, Admin: #{current_admin_user.username}", simple_user.edit_admin_user_registration_path %>
	<% if can? :manage, SimpleUser::AdminUser %>
		<%= link_to "Manage Admins", simple_user.admin_users_path %>
	<% end %>
	<% if can? :manage, SimpleUser::User %>
		<%= link_to "Manage Users", simple_user.users_path %>
	<% end %>
	<%= link_to "Log out", simple_user.destroy_admin_user_session_path, method: :delete, id: "sign_out" %>
<% end %>

TODO

  1. Integrate Twitter

  2. Ingrate Google

  3. Remove unnecessary files and codes (rake task, omniauth, …)

About

Manage users and admins with Devise and Omniauth-Facebook.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published