radmin 0.2.0 → 0.3.1

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.
Files changed (39) hide show
  1. data/.rvmrc +1 -0
  2. data/app/controllers/radmin/dashboards_controller.rb +2 -0
  3. data/app/controllers/radmin/passwords_controller.rb +4 -0
  4. data/app/controllers/{admin → radmin}/sessions_controller.rb +3 -3
  5. data/app/controllers/{admin → radmin}/settings_controller.rb +2 -16
  6. data/app/controllers/{admin → radmin}/users_controller.rb +4 -16
  7. data/app/controllers/radmin_controller.rb +13 -0
  8. data/app/helpers/{admin_helper.rb → radmin_helper.rb} +5 -1
  9. data/app/views/layouts/{admin.html.haml → radmin.html.haml} +1 -1
  10. data/app/views/radmin/dashboards/_dashboard.html.haml +2 -0
  11. data/app/views/radmin/dashboards/show.html.haml +2 -0
  12. data/app/views/{admin → radmin}/passwords/edit.html.haml +0 -2
  13. data/app/views/{admin → radmin}/passwords/new.html.haml +0 -1
  14. data/app/views/{admin → radmin}/sessions/new.html.haml +0 -0
  15. data/app/views/{admin → radmin}/settings/_form.html.haml +0 -0
  16. data/app/views/{admin → radmin}/settings/edit.html.haml +0 -0
  17. data/app/views/{admin → radmin}/settings/index.html.haml +5 -4
  18. data/app/views/{admin → radmin}/settings/new.html.haml +0 -0
  19. data/app/views/{admin → radmin}/users/_form.html.haml +1 -4
  20. data/app/views/{admin → radmin}/users/edit.html.haml +0 -0
  21. data/app/views/{admin → radmin}/users/index.html.haml +5 -4
  22. data/app/views/{admin → radmin}/users/new.html.haml +0 -0
  23. data/config/authorization.rb +10 -0
  24. data/config/routes.rb +4 -4
  25. data/lib/generators/radmin/install_generator.rb +0 -4
  26. data/lib/radmin.rb +6 -3
  27. data/lib/radmin/admin_ui.rb +13 -13
  28. data/lib/radmin/authorization.rb +47 -0
  29. data/lib/radmin/engine.rb +10 -2
  30. data/lib/radmin/version.rb +1 -1
  31. data/radmin.gemspec +3 -3
  32. data/spec/dummy/config/locales/devise.en.yml +50 -0
  33. metadata +100 -107
  34. data/app/controllers/admin/accounts_controller.rb +0 -16
  35. data/app/controllers/admin/passwords_controller.rb +0 -4
  36. data/app/controllers/admin_controller.rb +0 -15
  37. data/app/views/admin/accounts/edit.html.haml +0 -11
  38. data/lib/generators/radmin/templates/authorization_rules.rb +0 -17
  39. data/spec/dummy/config/authorization_rules.rb +0 -17
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use 1.9.2-p290@radmin --create
@@ -0,0 +1,2 @@
1
+ class Radmin::DashboardsController < RadminController
2
+ end
@@ -0,0 +1,4 @@
1
+ class Radmin::PasswordsController < Devise::PasswordsController
2
+ helper :radmin
3
+ layout "radmin"
4
+ end
@@ -1,6 +1,6 @@
1
- class Admin::SessionsController < Devise::SessionsController
2
- helper :admin
3
- layout "admin"
1
+ class Radmin::SessionsController < Devise::SessionsController
2
+ helper :radmin
3
+ layout "radmin"
4
4
 
5
5
  protected
6
6
  def after_sign_in_path_for(resource_or_scope)
@@ -1,15 +1,6 @@
1
- class Admin::SettingsController < AdminController
2
- before_filter :find_setting, :only => [:edit,:update,:destroy]
3
- filter_access_to [:index,:new,:create,:edit,:update,:destroy]
1
+ class Radmin::SettingsController < RadminController
2
+ load_and_authorize_resource :class => "Radmin::Setting"
4
3
 
5
- def index
6
- @settings = Radmin::Setting.all
7
- end
8
-
9
- def new
10
- @setting = Radmin::Setting.new
11
- end
12
-
13
4
  def create
14
5
  Radmin::Setting["#{params[:setting]['key']}"] = params[:setting]['value']
15
6
  flash[:notice] = Radmin::I18n.t(:setting_sucessfully_created, :default => "Setting sucessfully created.")
@@ -32,9 +23,4 @@ class Admin::SettingsController < AdminController
32
23
  flash[:notice] = Radmin::I18n.t(:setting_sucessfully_deleted, :default => "Setting sucessfully deleted.")
33
24
  redirect_to admin_settings_url
34
25
  end
35
-
36
- protected
37
- def find_setting
38
- @setting = Radmin::Setting.find(params[:id])
39
- end
40
26
  end
@@ -1,18 +1,11 @@
1
- class Admin::UsersController < AdminController
2
- before_filter :load_user, :only => [:edit,:update,:destroy]
3
- filter_access_to [:index,:new,:create]
4
- filter_access_to [:edit,:update,:destroy], :attribute_check => true, :load_method => lambda { |c| @user = Radmin::User.find(params[:id]) }
1
+ class Radmin::UsersController < RadminController
2
+ load_and_authorize_resource :class => "Radmin::User"
5
3
 
6
- def index
7
- @users = Radmin::User.all(:include => [:roles])
8
- end
9
-
10
- def new
11
- @user = Radmin::User.new
4
+ def index
5
+ @users = @users.includes(:roles)
12
6
  end
13
7
 
14
8
  def create
15
- @user = Radmin::User.new(params[:user])
16
9
  if @user.save
17
10
  redirect_to(admin_users_url, :notice => Radmin::I18n.t(:account_created, :default => "Account created."))
18
11
  else
@@ -35,9 +28,4 @@ class Admin::UsersController < AdminController
35
28
  @user.destroy
36
29
  redirect_to(admin_users_url, :notice => Radmin::I18n.t(:account_deleted, :default => "Account deleted."))
37
30
  end
38
-
39
- protected
40
- def load_user
41
- @user = Radmin::User.find(params[:id])
42
- end
43
31
  end
@@ -0,0 +1,13 @@
1
+ class RadminController < ApplicationController
2
+ helper :radmin
3
+ before_filter :authenticate_admin!
4
+ layout "radmin"
5
+
6
+ rescue_from CanCan::AccessDenied do |exception|
7
+ redirect_to admin_dashboard_url, :alert => exception.message
8
+ end
9
+
10
+ def current_ability
11
+ @current_ability ||= Radmin::Authorization.new(current_admin)
12
+ end
13
+ end
@@ -1,4 +1,4 @@
1
- module AdminHelper
1
+ module RadminHelper
2
2
  def current_url?(options)
3
3
  url = case options
4
4
  when Hash
@@ -42,4 +42,8 @@ module AdminHelper
42
42
  def show_title?
43
43
  @show_title
44
44
  end
45
+
46
+ def has_role?(role)
47
+ current_admin.role_symbols.include?(role.to_sym)
48
+ end
45
49
  end
@@ -24,7 +24,7 @@
24
24
  %span.nodisp
25
25
  #usernav
26
26
  = Radmin::I18n.t(:logged_in_as, :default => "Logged in as")
27
- = link_to current_admin.email, edit_admin_account_path
27
+ = link_to current_admin.email, edit_admin_user_path(current_admin)
28
28
  (#{link_to Radmin::I18n.t(:logout, :default => "Logout"), destroy_admin_session_path})
29
29
  - else
30
30
  .spacer40
@@ -0,0 +1,2 @@
1
+ %p.intro
2
+ Edit me! (app/views/radmin/dashboards/_dashboard.html.haml)
@@ -0,0 +1,2 @@
1
+ - title Radmin::I18n.t(:dashboard,:default => "Dashboard")
2
+ = render :partial => 'dashboard'
@@ -3,9 +3,7 @@
3
3
  = f.hidden_field :reset_password_token
4
4
  = f.label :password, "New password"
5
5
  = f.password_field :password
6
- = f.error_message_on :password
7
6
  = f.label :password_confirmation, "Confirm new password"
8
7
  = f.password_field :password_confirmation
9
- = f.error_message_on :password_confirmation
10
8
  .buttons
11
9
  = f.submit Radmin::I18n.t(:change_password, :default => "Change Password")
@@ -2,7 +2,6 @@
2
2
  = form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f|
3
3
  = f.label :email
4
4
  = f.text_field :email
5
- = f.error_message_on :email
6
5
  .buttons
7
6
  = f.submit Radmin::I18n.t(:send_instructions, :default => "Send Instructions")
8
7
  = link_to t(:login, :default => "Login"), new_session_path(resource_name)
File without changes
File without changes
@@ -1,6 +1,6 @@
1
1
  - title Radmin::I18n.t(:settings,:default => "Application Settings")
2
2
  %span.toolbar
3
- = link_to(Radmin::I18n.t(:new_setting,:default => "New"), new_admin_setting_path) if permitted_to? :create
3
+ = link_to(Radmin::I18n.t(:new_setting,:default => "New"), new_admin_setting_path) if can? :create, Radmin::Setting
4
4
  %p.intro= Radmin::I18n.t(:settings_list_intro,:default => "Application Settings")
5
5
  %table
6
6
  %thead
@@ -13,6 +13,7 @@
13
13
  %td= link_to setting.key, edit_admin_setting_path(setting)
14
14
  %td= setting.value
15
15
  %td.last
16
- = link_to(Radmin::I18n.t(:edit,:default => "Edit"), edit_admin_setting_path(setting), :class => "edit") if permitted_to? :update
17
- |
18
- \#{link_to(Radmin::I18n.t(:delete,:default => "Delete"), admin_setting_path(setting), :confirm => Radmin::I18n.t(:are_you_sure,:default => "Are you sure?"), :method => :delete, :class => "delete") if permitted_to? :destroy}
16
+ = link_to(Radmin::I18n.t(:edit,:default => "Edit"), edit_admin_setting_path(setting), :class => "edit") if can? :update, Radmin::Setting
17
+ - if can? :destroy, Radmin::Setting
18
+ |
19
+ \#{link_to(Radmin::I18n.t(:delete,:default => "Delete"), admin_setting_path(setting), :confirm => Radmin::I18n.t(:are_you_sure,:default => "Are you sure?"), :method => :delete, :class => "delete")}
File without changes
@@ -15,7 +15,4 @@
15
15
  %p.buttons
16
16
  = form.submit Radmin::I18n.t(:save,:default=>"Save")
17
17
  = Radmin::I18n.t(:or,:default=>"or")
18
- - if permitted_to? :index
19
- = link_to Radmin::I18n.t(:cancel,:default=>"Cancel"), admin_users_path
20
- - else
21
- = link_to Radmin::I18n.t(:cancel,:default=>"Cancel"), admin_overview_path
18
+ = link_to Radmin::I18n.t(:cancel,:default=>"Cancel"), admin_users_path
File without changes
@@ -1,6 +1,6 @@
1
1
  - title Radmin::I18n.t(:users,:default => "Users")
2
2
  %span.toolbar
3
- = link_to Radmin::I18n.t(:new_user,:default => "New"), new_admin_user_path if permitted_to? :create
3
+ = link_to Radmin::I18n.t(:new_user,:default => "New"), new_admin_user_path if can? :create, Radmin::User
4
4
  %p.intro= Radmin::I18n.t(:users_list_intro,:default => "Users with access to admin panel.")
5
5
  %table
6
6
  %thead
@@ -13,6 +13,7 @@
13
13
  %td= link_to h(user.email), edit_admin_user_path(user)
14
14
  %td= user.roles.collect {|r| Radmin::I18n.t(r.name.underscore.to_sym,:default=>h(r.name.capitalize))}.join(",")
15
15
  %td.last
16
- = link_to Radmin::I18n.t(:edit,:default => "Edit"), edit_admin_user_path(user), :class => "edit" if permitted_to? :update
17
- |
18
- \#{link_to Radmin::I18n.t(:delete,:default => "Delete"), admin_user_path(user), :confirm => Radmin::I18n.t(:are_you_sure,:default => "Are you sure?"), :method => :delete, :class => "delete" if permitted_to? :destroy}
16
+ = link_to Radmin::I18n.t(:edit,:default => "Edit"), edit_admin_user_path(user), :class => "edit" if can? :update, Radmin::User, :id => user.id
17
+ - if can? :destroy, Radmin::User, :id => user.id
18
+ |
19
+ \#{link_to Radmin::I18n.t(:delete,:default => "Delete"), admin_user_path(user), :confirm => Radmin::I18n.t(:are_you_sure,:default => "Are you sure?"), :method => :delete, :class => "delete"}
File without changes
@@ -0,0 +1,10 @@
1
+ role :guest do
2
+ can :read, Radmin::User, :id => user.id
3
+ can :update, Radmin::User, :id => user.id
4
+ can :read, Radmin::Setting
5
+ end
6
+
7
+ role :admin do
8
+ can :manage, Radmin::User
9
+ can :manage, Radmin::Setting
10
+ end
data/config/routes.rb CHANGED
@@ -1,9 +1,9 @@
1
1
  Rails.application.routes.draw do
2
- devise_for :admins, :class_name => 'Radmin::User', :path => 'admin', :path_names => { :sign_in => 'login', :sign_out => 'logout' }, :controllers => { :sessions => 'admin/sessions', :passwords => 'admin/passwords' }
2
+ devise_for :admins, :class_name => 'Radmin::User', :path => 'admin', :path_names => { :sign_in => 'login', :sign_out => 'logout' }, :controllers => { :sessions => 'radmin/sessions', :passwords => 'radmin/passwords' }
3
3
 
4
- match '/admin', :to => redirect('/admin/account/edit'), :as => :admin
5
- namespace :admin do
6
- resource :account, :only => [:edit,:update]
4
+ match '/admin', :to => redirect('/admin/dashboard'), :as => :admin
5
+ namespace :admin, :module => 'radmin' do
6
+ resource :dashboard, :only => [:show]
7
7
  resources :settings, :except => [:show]
8
8
  resources :users, :except => [:show]
9
9
  end
@@ -22,10 +22,6 @@ module Radmin
22
22
  def copy_assets
23
23
  directory 'assets', 'public', :recursive => true
24
24
  end
25
-
26
- def copy_authorization_file
27
- template "authorization_rules.rb", "config/authorization_rules.rb"
28
- end
29
25
  end
30
26
  end
31
27
  end
data/lib/radmin.rb CHANGED
@@ -1,5 +1,8 @@
1
1
  require 'radmin/engine'
2
-
3
2
  require 'radmin/version'
4
- require 'radmin/admin_ui'
5
- require 'radmin/i18n'
3
+
4
+ module Radmin
5
+ autoload :AdminUI, 'radmin/admin_ui'
6
+ autoload :Authorization, 'radmin/authorization'
7
+ autoload :I18n, 'radmin/i18n'
8
+ end
@@ -75,23 +75,20 @@ module Radmin
75
75
  end
76
76
 
77
77
  def visible?(user)
78
- visible_by_controller?(user)
78
+ params = Rails.application.routes.recognize_path(url, :method => :get)
79
+ if params && params[:controller]
80
+ resource = params[:controller].demodulize.sub("Controller", "").underscore.split('/').last.singularize
81
+ Radmin::Authorization.authorized?(user, params[:action], "Radmin::#{resource.capitalize}".constantize) rescue true
82
+ #ctx = params[:controller].sub('/','_').to_sym
83
+ #Authorization::Engine.instance.permit?(params[:action], :context => ctx, :user => user)
84
+ else
85
+ false
86
+ end
79
87
  end
80
88
 
81
89
  def relative_url
82
90
  File.join('/', url)
83
91
  end
84
-
85
- private
86
- def visible_by_controller?(user)
87
- params = Rails.application.routes.recognize_path(url, :method => :get)
88
- if params && params[:controller]
89
- ctx = params[:controller].sub('/','_').to_sym
90
- Authorization::Engine.instance.permit?(params[:action], :context => ctx, :user => user)
91
- else
92
- false
93
- end
94
- end
95
92
  end
96
93
 
97
94
  class << self
@@ -126,8 +123,11 @@ module Radmin
126
123
 
127
124
  protected
128
125
  def load_default_nav
126
+ general = nav_tab("General")
127
+ general << nav_item("Dashboard", "/admin/dashboard")
128
+ nav << general
129
+
129
130
  settings = nav_tab("Settings")
130
- settings << nav_item("Account", "/admin/account/edit")
131
131
  settings << nav_item("Users", "/admin/users")
132
132
  settings << nav_item("Application", "/admin/settings")
133
133
  nav << settings
@@ -0,0 +1,47 @@
1
+ module Radmin
2
+ class Authorization
3
+ class DSLMethods
4
+ def role(role_name, &block)
5
+ #::Authorization.define_method method_name, &block
6
+ #role_name = role_name.to_sym
7
+ Radmin::Authorization.roles[role_name] ||= []
8
+ Radmin::Authorization.roles[role_name] << block
9
+ end
10
+ end
11
+
12
+ include CanCan::Ability
13
+ attr_accessor :user
14
+ cattr_accessor :roles
15
+ self.roles = {}
16
+
17
+ def initialize(user)
18
+ self.user = user
19
+ run_role(:guest) unless self.user.role_symbols.any?
20
+ self.user.role_symbols.each do |r|
21
+ run_role(r)
22
+ end
23
+ end
24
+
25
+ def includes(*role_names)
26
+ role_names.each do |role_name|
27
+ run_role(role_name.to_sym)
28
+ end
29
+ end
30
+
31
+ def self.authorized?(user, action, subject)
32
+ new(user).authorize!(action.to_sym, subject)
33
+ true
34
+ rescue CanCan::AccessDenied
35
+ false
36
+ end
37
+
38
+ def self.define_rules(file)
39
+ DSLMethods.new.instance_eval(File.read(file)) if File.exist?(file)
40
+ end
41
+
42
+ protected
43
+ def run_role(role_name)
44
+ self.class.roles[role_name].each { |block| instance_eval(&block) } if self.class.roles.include?(role_name)
45
+ end
46
+ end
47
+ end
data/lib/radmin/engine.rb CHANGED
@@ -1,8 +1,16 @@
1
- require 'declarative_authorization'
1
+ require 'cancan'
2
2
  require 'devise'
3
3
  require 'haml-rails'
4
4
 
5
5
  module Radmin
6
- class Engine < Rails::Engine
6
+ class Engine < Rails::Engine
7
+ initializer "radmin.add_authorization_rules" do |app|
8
+ Radmin::Authorization.define_rules(dsl_file)
9
+ end
10
+
11
+ protected
12
+ def dsl_file
13
+ File.expand_path("config/authorization.rb", File.dirname(File.dirname(File.dirname(__FILE__))))
14
+ end
7
15
  end
8
16
  end
@@ -1,3 +1,3 @@
1
1
  module Radmin
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.1"
3
3
  end
data/radmin.gemspec CHANGED
@@ -19,12 +19,12 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
21
21
 
22
- s.add_dependency "declarative_authorization", "~> 0.5.2"
22
+ s.add_dependency "cancan", "~> 1.6.5"
23
23
  s.add_dependency "devise", "~> 1.3.4"
24
24
  s.add_dependency "haml-rails", "~> 0.3.4"
25
25
 
26
- s.add_development_dependency "rails", "3.0.7"
27
- s.add_development_dependency "rake", "0.8.7"
26
+ s.add_development_dependency "rails", "~> 3.0.7"
27
+ s.add_development_dependency "rake", "~> 0.8.7"
28
28
  s.add_development_dependency "capybara", "~> 0.4.0"
29
29
  s.add_development_dependency "rspec-rails", "~> 2.0.0.beta"
30
30
  s.add_development_dependency "launchy", "~> 0.4.0"
@@ -0,0 +1,50 @@
1
+ # Additional translations at http://github.com/plataformatec/devise/wiki/I18n
2
+
3
+ en:
4
+ errors:
5
+ messages:
6
+ expired: "has expired, please request a new one"
7
+ not_found: "not found"
8
+ already_confirmed: "was already confirmed, please try signing in"
9
+ not_locked: "was not locked"
10
+ not_saved:
11
+ one: "1 error prohibited this %{resource} from being saved:"
12
+ other: "%{count} errors prohibited this %{resource} from being saved:"
13
+
14
+ devise:
15
+ failure:
16
+ already_authenticated: 'You are already signed in.'
17
+ unauthenticated: 'You need to sign in or sign up before continuing.'
18
+ unconfirmed: 'You have to confirm your account before continuing.'
19
+ locked: 'Your account is locked.'
20
+ invalid: 'Invalid email or password.'
21
+ invalid_token: 'Invalid authentication token.'
22
+ timeout: 'Your session expired, please sign in again to continue.'
23
+ inactive: 'Your account was not activated yet.'
24
+ sessions:
25
+ signed_in: 'Signed in successfully.'
26
+ signed_out: 'Signed out successfully.'
27
+ passwords:
28
+ send_instructions: 'You will receive an email with instructions about how to reset your password in a few minutes.'
29
+ updated: 'Your password was changed successfully. You are now signed in.'
30
+ confirmations:
31
+ send_instructions: 'You will receive an email with instructions about how to confirm your account in a few minutes.'
32
+ confirmed: 'Your account was successfully confirmed. You are now signed in.'
33
+ registrations:
34
+ signed_up: 'Welcome! You have signed up successfully.'
35
+ inactive_signed_up: 'You have signed up successfully. However, we could not sign you in because your account is %{reason}.'
36
+ updated: 'You updated your account successfully.'
37
+ destroyed: 'Bye! Your account was successfully cancelled. We hope to see you again soon.'
38
+ unlocks:
39
+ send_instructions: 'You will receive an email with instructions about how to unlock your account in a few minutes.'
40
+ unlocked: 'Your account was successfully unlocked. You are now signed in.'
41
+ omniauth_callbacks:
42
+ success: 'Successfully authorized from %{kind} account.'
43
+ failure: 'Could not authorize you from %{kind} because "%{reason}".'
44
+ mailer:
45
+ confirmation_instructions:
46
+ subject: 'Confirmation instructions'
47
+ reset_password_instructions:
48
+ subject: 'Reset password instructions'
49
+ unlock_instructions:
50
+ subject: 'Unlock Instructions'
metadata CHANGED
@@ -1,157 +1,155 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: radmin
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.1
4
5
  prerelease:
5
- version: 0.2.0
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Damian Caruso
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-05-24 00:00:00 -03:00
14
- default_executable:
15
- dependencies:
16
- - !ruby/object:Gem::Dependency
17
- name: declarative_authorization
18
- requirement: &id001 !ruby/object:Gem::Requirement
12
+ date: 2011-07-30 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: cancan
16
+ requirement: &17660220 !ruby/object:Gem::Requirement
19
17
  none: false
20
- requirements:
18
+ requirements:
21
19
  - - ~>
22
- - !ruby/object:Gem::Version
23
- version: 0.5.2
20
+ - !ruby/object:Gem::Version
21
+ version: 1.6.5
24
22
  type: :runtime
25
23
  prerelease: false
26
- version_requirements: *id001
27
- - !ruby/object:Gem::Dependency
24
+ version_requirements: *17660220
25
+ - !ruby/object:Gem::Dependency
28
26
  name: devise
29
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ requirement: &17659260 !ruby/object:Gem::Requirement
30
28
  none: false
31
- requirements:
29
+ requirements:
32
30
  - - ~>
33
- - !ruby/object:Gem::Version
31
+ - !ruby/object:Gem::Version
34
32
  version: 1.3.4
35
33
  type: :runtime
36
34
  prerelease: false
37
- version_requirements: *id002
38
- - !ruby/object:Gem::Dependency
35
+ version_requirements: *17659260
36
+ - !ruby/object:Gem::Dependency
39
37
  name: haml-rails
40
- requirement: &id003 !ruby/object:Gem::Requirement
38
+ requirement: &17658180 !ruby/object:Gem::Requirement
41
39
  none: false
42
- requirements:
40
+ requirements:
43
41
  - - ~>
44
- - !ruby/object:Gem::Version
42
+ - !ruby/object:Gem::Version
45
43
  version: 0.3.4
46
44
  type: :runtime
47
45
  prerelease: false
48
- version_requirements: *id003
49
- - !ruby/object:Gem::Dependency
46
+ version_requirements: *17658180
47
+ - !ruby/object:Gem::Dependency
50
48
  name: rails
51
- requirement: &id004 !ruby/object:Gem::Requirement
49
+ requirement: &17657440 !ruby/object:Gem::Requirement
52
50
  none: false
53
- requirements:
54
- - - "="
55
- - !ruby/object:Gem::Version
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
56
54
  version: 3.0.7
57
55
  type: :development
58
56
  prerelease: false
59
- version_requirements: *id004
60
- - !ruby/object:Gem::Dependency
57
+ version_requirements: *17657440
58
+ - !ruby/object:Gem::Dependency
61
59
  name: rake
62
- requirement: &id005 !ruby/object:Gem::Requirement
60
+ requirement: &17656460 !ruby/object:Gem::Requirement
63
61
  none: false
64
- requirements:
65
- - - "="
66
- - !ruby/object:Gem::Version
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
67
65
  version: 0.8.7
68
66
  type: :development
69
67
  prerelease: false
70
- version_requirements: *id005
71
- - !ruby/object:Gem::Dependency
68
+ version_requirements: *17656460
69
+ - !ruby/object:Gem::Dependency
72
70
  name: capybara
73
- requirement: &id006 !ruby/object:Gem::Requirement
71
+ requirement: &17655560 !ruby/object:Gem::Requirement
74
72
  none: false
75
- requirements:
73
+ requirements:
76
74
  - - ~>
77
- - !ruby/object:Gem::Version
75
+ - !ruby/object:Gem::Version
78
76
  version: 0.4.0
79
77
  type: :development
80
78
  prerelease: false
81
- version_requirements: *id006
82
- - !ruby/object:Gem::Dependency
79
+ version_requirements: *17655560
80
+ - !ruby/object:Gem::Dependency
83
81
  name: rspec-rails
84
- requirement: &id007 !ruby/object:Gem::Requirement
82
+ requirement: &17654760 !ruby/object:Gem::Requirement
85
83
  none: false
86
- requirements:
84
+ requirements:
87
85
  - - ~>
88
- - !ruby/object:Gem::Version
86
+ - !ruby/object:Gem::Version
89
87
  version: 2.0.0.beta
90
88
  type: :development
91
89
  prerelease: false
92
- version_requirements: *id007
93
- - !ruby/object:Gem::Dependency
90
+ version_requirements: *17654760
91
+ - !ruby/object:Gem::Dependency
94
92
  name: launchy
95
- requirement: &id008 !ruby/object:Gem::Requirement
93
+ requirement: &17651240 !ruby/object:Gem::Requirement
96
94
  none: false
97
- requirements:
95
+ requirements:
98
96
  - - ~>
99
- - !ruby/object:Gem::Version
97
+ - !ruby/object:Gem::Version
100
98
  version: 0.4.0
101
99
  type: :development
102
100
  prerelease: false
103
- version_requirements: *id008
104
- - !ruby/object:Gem::Dependency
101
+ version_requirements: *17651240
102
+ - !ruby/object:Gem::Dependency
105
103
  name: sqlite3
106
- requirement: &id009 !ruby/object:Gem::Requirement
104
+ requirement: &17650480 !ruby/object:Gem::Requirement
107
105
  none: false
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: "0"
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
112
110
  type: :development
113
111
  prerelease: false
114
- version_requirements: *id009
112
+ version_requirements: *17650480
115
113
  description: A drop in admin panel for existing rails applications
116
- email:
114
+ email:
117
115
  - damian.caruso@gmail.com
118
116
  executables: []
119
-
120
117
  extensions: []
121
-
122
118
  extra_rdoc_files: []
123
-
124
- files:
119
+ files:
125
120
  - .gitignore
126
121
  - .rspec
122
+ - .rvmrc
127
123
  - Gemfile
128
124
  - MIT-LICENSE
129
125
  - README
130
126
  - Rakefile
131
- - app/controllers/admin/accounts_controller.rb
132
- - app/controllers/admin/passwords_controller.rb
133
- - app/controllers/admin/sessions_controller.rb
134
- - app/controllers/admin/settings_controller.rb
135
- - app/controllers/admin/users_controller.rb
136
- - app/controllers/admin_controller.rb
137
- - app/helpers/admin_helper.rb
127
+ - app/controllers/radmin/dashboards_controller.rb
128
+ - app/controllers/radmin/passwords_controller.rb
129
+ - app/controllers/radmin/sessions_controller.rb
130
+ - app/controllers/radmin/settings_controller.rb
131
+ - app/controllers/radmin/users_controller.rb
132
+ - app/controllers/radmin_controller.rb
133
+ - app/helpers/radmin_helper.rb
138
134
  - app/models/radmin/assignment.rb
139
135
  - app/models/radmin/role.rb
140
136
  - app/models/radmin/setting.rb
141
137
  - app/models/radmin/user.rb
142
- - app/views/admin/accounts/edit.html.haml
143
- - app/views/admin/passwords/edit.html.haml
144
- - app/views/admin/passwords/new.html.haml
145
- - app/views/admin/sessions/new.html.haml
146
- - app/views/admin/settings/_form.html.haml
147
- - app/views/admin/settings/edit.html.haml
148
- - app/views/admin/settings/index.html.haml
149
- - app/views/admin/settings/new.html.haml
150
- - app/views/admin/users/_form.html.haml
151
- - app/views/admin/users/edit.html.haml
152
- - app/views/admin/users/index.html.haml
153
- - app/views/admin/users/new.html.haml
154
- - app/views/layouts/admin.html.haml
138
+ - app/views/layouts/radmin.html.haml
139
+ - app/views/radmin/dashboards/_dashboard.html.haml
140
+ - app/views/radmin/dashboards/show.html.haml
141
+ - app/views/radmin/passwords/edit.html.haml
142
+ - app/views/radmin/passwords/new.html.haml
143
+ - app/views/radmin/sessions/new.html.haml
144
+ - app/views/radmin/settings/_form.html.haml
145
+ - app/views/radmin/settings/edit.html.haml
146
+ - app/views/radmin/settings/index.html.haml
147
+ - app/views/radmin/settings/new.html.haml
148
+ - app/views/radmin/users/_form.html.haml
149
+ - app/views/radmin/users/edit.html.haml
150
+ - app/views/radmin/users/index.html.haml
151
+ - app/views/radmin/users/new.html.haml
152
+ - config/authorization.rb
155
153
  - config/routes.rb
156
154
  - lib/generators/radmin/install_generator.rb
157
155
  - lib/generators/radmin/templates/assets/images/admin/topnav_active.gif
@@ -161,13 +159,13 @@ files:
161
159
  - lib/generators/radmin/templates/assets/javascripts/admin/jquery.rails.js
162
160
  - lib/generators/radmin/templates/assets/stylesheets/admin/reset.css
163
161
  - lib/generators/radmin/templates/assets/stylesheets/admin/style.css
164
- - lib/generators/radmin/templates/authorization_rules.rb
165
162
  - lib/generators/radmin/templates/migrations/01_radmin_create_users.rb
166
163
  - lib/generators/radmin/templates/migrations/02_radmin_create_roles.rb
167
164
  - lib/generators/radmin/templates/migrations/03_radmin_create_assignments.rb
168
165
  - lib/generators/radmin/templates/migrations/04_radmin_create_settings.rb
169
166
  - lib/radmin.rb
170
167
  - lib/radmin/admin_ui.rb
168
+ - lib/radmin/authorization.rb
171
169
  - lib/radmin/engine.rb
172
170
  - lib/radmin/i18n.rb
173
171
  - lib/radmin/version.rb
@@ -179,7 +177,6 @@ files:
179
177
  - spec/dummy/app/views/layouts/application.html.erb
180
178
  - spec/dummy/config.ru
181
179
  - spec/dummy/config/application.rb
182
- - spec/dummy/config/authorization_rules.rb
183
180
  - spec/dummy/config/boot.rb
184
181
  - spec/dummy/config/database.yml
185
182
  - spec/dummy/config/environment.rb
@@ -192,6 +189,7 @@ files:
192
189
  - spec/dummy/config/initializers/mime_types.rb
193
190
  - spec/dummy/config/initializers/secret_token.rb
194
191
  - spec/dummy/config/initializers/session_store.rb
192
+ - spec/dummy/config/locales/devise.en.yml
195
193
  - spec/dummy/config/locales/en.yml
196
194
  - spec/dummy/config/routes.rb
197
195
  - spec/dummy/db/migrate/20110524171909_radmin_create_users.rb
@@ -232,39 +230,34 @@ files:
232
230
  - spec/integration/navigation_spec.rb
233
231
  - spec/radmin_spec.rb
234
232
  - spec/spec_helper.rb
235
- has_rdoc: true
236
233
  homepage: http://github.com/cdamian/radmin
237
234
  licenses: []
238
-
239
235
  post_install_message:
240
236
  rdoc_options: []
241
-
242
- require_paths:
237
+ require_paths:
243
238
  - lib
244
- required_ruby_version: !ruby/object:Gem::Requirement
239
+ required_ruby_version: !ruby/object:Gem::Requirement
245
240
  none: false
246
- requirements:
247
- - - ">="
248
- - !ruby/object:Gem::Version
249
- hash: -2558046121998113996
250
- segments:
241
+ requirements:
242
+ - - ! '>='
243
+ - !ruby/object:Gem::Version
244
+ version: '0'
245
+ segments:
251
246
  - 0
252
- version: "0"
253
- required_rubygems_version: !ruby/object:Gem::Requirement
247
+ hash: 1266151900004332354
248
+ required_rubygems_version: !ruby/object:Gem::Requirement
254
249
  none: false
255
- requirements:
256
- - - ">="
257
- - !ruby/object:Gem::Version
258
- hash: -2558046121998113996
259
- segments:
250
+ requirements:
251
+ - - ! '>='
252
+ - !ruby/object:Gem::Version
253
+ version: '0'
254
+ segments:
260
255
  - 0
261
- version: "0"
256
+ hash: 1266151900004332354
262
257
  requirements: []
263
-
264
258
  rubyforge_project: radmin
265
- rubygems_version: 1.6.2
259
+ rubygems_version: 1.8.6
266
260
  signing_key:
267
261
  specification_version: 3
268
262
  summary: A drop in admin panel for existing rails applications
269
263
  test_files: []
270
-
@@ -1,16 +0,0 @@
1
- class Admin::AccountsController < AdminController
2
- def edit
3
- @user = current_admin
4
- end
5
-
6
- def update
7
- @user = current_admin
8
- if @user.update_attributes(params[:user])
9
- flash[:notice] = Radmin::I18n.t(:account_updated, :default => "Account updated.")
10
- redirect_to edit_admin_account_url
11
- else
12
- flash.now[:alert] = Radmin::I18n.t(:account_could_not_be_updated, :default => "Account could not be updated.")
13
- render :action => :edit
14
- end
15
- end
16
- end
@@ -1,4 +0,0 @@
1
- class Admin::PasswordsController < Devise::PasswordsController
2
- helper :admin
3
- layout "admin"
4
- end
@@ -1,15 +0,0 @@
1
- class AdminController < ApplicationController
2
- helper :admin
3
- before_filter :authenticate_admin!
4
- layout "admin"
5
-
6
- protected
7
- def current_user
8
- current_admin
9
- end
10
-
11
- def permission_denied
12
- flash[:alert] = Radmin::I18n.t(:permission_denied,:default => "Sorry, you are not allowed to access that page.")
13
- redirect_to admin_url
14
- end
15
- end
@@ -1,11 +0,0 @@
1
- - title Radmin::I18n.t(:edit_user,:default => "Edit Account")
2
- = form_for @user, :as => :user, :url => admin_account_path do |f|
3
- .col
4
- = f.label :email, Radmin::User.human_attribute_name("email")
5
- = f.text_field :email
6
- = f.label :password, Radmin::I18n.t(:new_password, :default => "New Password")
7
- = f.password_field :password
8
- = f.label :password_confirmation, Radmin::User.human_attribute_name("password_confirmation")
9
- = f.password_field :password_confirmation
10
- %p.buttons
11
- = f.submit Radmin::I18n.t(:save,:default=>"Save")
@@ -1,17 +0,0 @@
1
- authorization do
2
- role :guest do
3
- has_permission_on :admin_accounts, :to => [:show,:edit,:update]
4
- end
5
-
6
- role :admin do
7
- includes :guest
8
- has_permission_on :admin_users, :to => :manage
9
- has_permission_on :admin_settings, :to => :manage
10
- end
11
- end
12
-
13
- privileges do
14
- privilege :manage do
15
- includes :index,:new,:create,:edit,:update,:show,:destroy
16
- end
17
- end
@@ -1,17 +0,0 @@
1
- authorization do
2
- role :guest do
3
- has_permission_on :admin_accounts, :to => [:show,:edit,:update]
4
- end
5
-
6
- role :admin do
7
- includes :guest
8
- has_permission_on :admin_users, :to => :manage
9
- has_permission_on :admin_settings, :to => :manage
10
- end
11
- end
12
-
13
- privileges do
14
- privilege :manage do
15
- includes :index,:new,:create,:edit,:update,:show,:destroy
16
- end
17
- end