radmin 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +7 -0
- data/.rspec +2 -0
- data/Gemfile +4 -0
- data/MIT-LICENSE +20 -0
- data/README +30 -0
- data/Rakefile +9 -0
- data/app/controllers/admin/accounts_controller.rb +16 -0
- data/app/controllers/admin/passwords_controller.rb +4 -0
- data/app/controllers/admin/sessions_controller.rb +13 -0
- data/app/controllers/admin/settings_controller.rb +40 -0
- data/app/controllers/admin/users_controller.rb +43 -0
- data/app/controllers/admin_controller.rb +15 -0
- data/app/helpers/admin_helper.rb +45 -0
- data/app/models/radmin/assignment.rb +8 -0
- data/app/models/radmin/role.rb +8 -0
- data/app/models/radmin/setting.rb +38 -0
- data/app/models/radmin/user.rb +18 -0
- data/app/views/admin/accounts/edit.html.haml +11 -0
- data/app/views/admin/passwords/edit.html.haml +11 -0
- data/app/views/admin/passwords/new.html.haml +8 -0
- data/app/views/admin/sessions/new.html.haml +9 -0
- data/app/views/admin/settings/_form.html.haml +12 -0
- data/app/views/admin/settings/edit.html.haml +3 -0
- data/app/views/admin/settings/index.html.haml +18 -0
- data/app/views/admin/settings/new.html.haml +3 -0
- data/app/views/admin/users/_form.html.haml +21 -0
- data/app/views/admin/users/edit.html.haml +3 -0
- data/app/views/admin/users/index.html.haml +18 -0
- data/app/views/admin/users/new.html.haml +3 -0
- data/app/views/layouts/admin.html.haml +40 -0
- data/config/routes.rb +10 -0
- data/lib/generators/radmin/install_generator.rb +31 -0
- data/lib/generators/radmin/templates/assets/images/admin/topnav_active.gif +0 -0
- data/lib/generators/radmin/templates/assets/images/admin/topnav_stretch.gif +0 -0
- data/lib/generators/radmin/templates/assets/javascripts/admin/application.js +1 -0
- data/lib/generators/radmin/templates/assets/javascripts/admin/jquery.js +16 -0
- data/lib/generators/radmin/templates/assets/javascripts/admin/jquery.rails.js +226 -0
- data/lib/generators/radmin/templates/assets/stylesheets/admin/reset.css +48 -0
- data/lib/generators/radmin/templates/assets/stylesheets/admin/style.css +422 -0
- data/lib/generators/radmin/templates/authorization_rules.rb +17 -0
- data/lib/generators/radmin/templates/migrations/01_radmin_create_users.rb +17 -0
- data/lib/generators/radmin/templates/migrations/02_radmin_create_roles.rb +13 -0
- data/lib/generators/radmin/templates/migrations/03_radmin_create_assignments.rb +15 -0
- data/lib/generators/radmin/templates/migrations/04_radmin_create_settings.rb +15 -0
- data/lib/radmin.rb +5 -0
- data/lib/radmin/admin_ui.rb +136 -0
- data/lib/radmin/engine.rb +8 -0
- data/lib/radmin/i18n.rb +14 -0
- data/lib/radmin/version.rb +3 -0
- data/lib/tasks/radmin.rake +13 -0
- data/radmin.gemspec +32 -0
- data/spec/dummy/Rakefile +7 -0
- data/spec/dummy/app/controllers/application_controller.rb +3 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/application.rb +45 -0
- data/spec/dummy/config/authorization_rules.rb +17 -0
- data/spec/dummy/config/boot.rb +10 -0
- data/spec/dummy/config/database.yml +22 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +28 -0
- data/spec/dummy/config/environments/production.rb +49 -0
- data/spec/dummy/config/environments/test.rb +35 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/devise.rb +194 -0
- data/spec/dummy/config/initializers/inflections.rb +10 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/secret_token.rb +7 -0
- data/spec/dummy/config/initializers/session_store.rb +8 -0
- data/spec/dummy/config/locales/en.yml +5 -0
- data/spec/dummy/config/routes.rb +58 -0
- data/spec/dummy/db/migrate/20110524171909_radmin_create_users.rb +17 -0
- data/spec/dummy/db/migrate/20110524171910_radmin_create_roles.rb +13 -0
- data/spec/dummy/db/migrate/20110524171911_radmin_create_assignments.rb +15 -0
- data/spec/dummy/db/migrate/20110524171912_radmin_create_settings.rb +15 -0
- data/spec/dummy/db/schema.rb +59 -0
- data/spec/dummy/public/404.html +26 -0
- data/spec/dummy/public/422.html +26 -0
- data/spec/dummy/public/500.html +26 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/public/images/admin/topnav_active.gif +0 -0
- data/spec/dummy/public/images/admin/topnav_stretch.gif +0 -0
- data/spec/dummy/public/javascripts/admin/application.js +1 -0
- data/spec/dummy/public/javascripts/admin/jquery.js +16 -0
- data/spec/dummy/public/javascripts/admin/jquery.rails.js +226 -0
- data/spec/dummy/public/javascripts/application.js +2 -0
- data/spec/dummy/public/javascripts/controls.js +965 -0
- data/spec/dummy/public/javascripts/dragdrop.js +974 -0
- data/spec/dummy/public/javascripts/effects.js +1123 -0
- data/spec/dummy/public/javascripts/prototype.js +6001 -0
- data/spec/dummy/public/javascripts/rails.js +191 -0
- data/spec/dummy/public/stylesheets/.gitkeep +0 -0
- data/spec/dummy/public/stylesheets/admin/reset.css +48 -0
- data/spec/dummy/public/stylesheets/admin/style.css +422 -0
- data/spec/dummy/script/rails +6 -0
- data/spec/dummy/vendor/plugins/dynamic_form/MIT-LICENSE +20 -0
- data/spec/dummy/vendor/plugins/dynamic_form/README +13 -0
- data/spec/dummy/vendor/plugins/dynamic_form/Rakefile +10 -0
- data/spec/dummy/vendor/plugins/dynamic_form/dynamic_form.gemspec +12 -0
- data/spec/dummy/vendor/plugins/dynamic_form/init.rb +1 -0
- data/spec/dummy/vendor/plugins/dynamic_form/lib/action_view/helpers/dynamic_form.rb +300 -0
- data/spec/dummy/vendor/plugins/dynamic_form/lib/action_view/locale/en.yml +8 -0
- data/spec/dummy/vendor/plugins/dynamic_form/lib/dynamic_form.rb +5 -0
- data/spec/dummy/vendor/plugins/dynamic_form/test/dynamic_form_i18n_test.rb +42 -0
- data/spec/dummy/vendor/plugins/dynamic_form/test/dynamic_form_test.rb +370 -0
- data/spec/dummy/vendor/plugins/dynamic_form/test/test_helper.rb +9 -0
- data/spec/integration/navigation_spec.rb +9 -0
- data/spec/radmin_spec.rb +7 -0
- data/spec/spec_helper.rb +33 -0
- metadata +270 -0
data/.gitignore
ADDED
data/.rspec
ADDED
data/Gemfile
ADDED
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright 2011 Damian Caruso
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
Radmin
|
2
|
+
=======
|
3
|
+
|
4
|
+
A drop-in admin backend for existing rails applications.
|
5
|
+
|
6
|
+
Tested with rails 3.0.7.
|
7
|
+
|
8
|
+
QuickStart
|
9
|
+
==========
|
10
|
+
$> rails myapp
|
11
|
+
$> cd myapp
|
12
|
+
|
13
|
+
#add devise to Gemfile
|
14
|
+
gem 'devise'
|
15
|
+
|
16
|
+
$> bundle install
|
17
|
+
$> bundle exec rails g devise:install
|
18
|
+
|
19
|
+
#add radmin to Gemfile
|
20
|
+
gem 'radmin'
|
21
|
+
|
22
|
+
$> bundle install
|
23
|
+
$> bundle exec rails g radmin:install
|
24
|
+
$> bundle exec rake db:migrate
|
25
|
+
$> bundle exec rake radmin:setup
|
26
|
+
$> bundle exec rails s
|
27
|
+
|
28
|
+
Login to http://localhost:3000/admin as admin@example.net/password
|
29
|
+
|
30
|
+
Copyright (c) 2011 Damian Caruso, released under the MIT license
|
data/Rakefile
ADDED
@@ -0,0 +1,16 @@
|
|
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
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class Admin::SessionsController < Devise::SessionsController
|
2
|
+
helper :admin
|
3
|
+
layout "admin"
|
4
|
+
|
5
|
+
protected
|
6
|
+
def after_sign_in_path_for(resource_or_scope)
|
7
|
+
admin_url
|
8
|
+
end
|
9
|
+
|
10
|
+
def after_sign_out_path_for(resource_or_scope)
|
11
|
+
new_session_url(resource_or_scope)
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
class Admin::SettingsController < AdminController
|
2
|
+
before_filter :find_setting, :only => [:edit,:update,:destroy]
|
3
|
+
filter_access_to [:index,:new,:create,:edit,:update,:destroy]
|
4
|
+
|
5
|
+
def index
|
6
|
+
@settings = Radmin::Setting.all
|
7
|
+
end
|
8
|
+
|
9
|
+
def new
|
10
|
+
@setting = Radmin::Setting.new
|
11
|
+
end
|
12
|
+
|
13
|
+
def create
|
14
|
+
Radmin::Setting["#{params[:setting]['key']}"] = params[:setting]['value']
|
15
|
+
flash[:notice] = Radmin::I18n.t(:setting_sucessfully_created, :default => "Setting sucessfully created.")
|
16
|
+
redirect_to admin_settings_url
|
17
|
+
rescue ActiveRecord::RecordInvalid
|
18
|
+
render :action => :new
|
19
|
+
end
|
20
|
+
|
21
|
+
def update
|
22
|
+
@setting.value = params[:setting]['value']
|
23
|
+
@setting.save!
|
24
|
+
flash[:notice] = Radmin::I18n.t(:setting_sucessfully_updated, :default => "Setting sucessfully updated.")
|
25
|
+
redirect_to admin_settings_url
|
26
|
+
rescue ActiveRecord::RecordInvalid
|
27
|
+
render :action => :edit
|
28
|
+
end
|
29
|
+
|
30
|
+
def destroy
|
31
|
+
@setting.destroy
|
32
|
+
flash[:notice] = Radmin::I18n.t(:setting_sucessfully_deleted, :default => "Setting sucessfully deleted.")
|
33
|
+
redirect_to admin_settings_url
|
34
|
+
end
|
35
|
+
|
36
|
+
protected
|
37
|
+
def find_setting
|
38
|
+
@setting = Radmin::Setting.find(params[:id])
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,43 @@
|
|
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]) }
|
5
|
+
|
6
|
+
def index
|
7
|
+
@users = Radmin::User.all(:include => [:roles])
|
8
|
+
end
|
9
|
+
|
10
|
+
def new
|
11
|
+
@user = Radmin::User.new
|
12
|
+
end
|
13
|
+
|
14
|
+
def create
|
15
|
+
@user = Radmin::User.new(params[:user])
|
16
|
+
if @user.save
|
17
|
+
redirect_to(admin_users_url, :notice => Radmin::I18n.t(:account_created, :default => "Account created."))
|
18
|
+
else
|
19
|
+
flash.now[:alert] = Radmin::I18n.t(:account_could_not_be_created, :default => "Account could not be created.")
|
20
|
+
render :action => :new
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def update
|
25
|
+
if @user.update_attributes(params[:user])
|
26
|
+
flash[:notice] = Radmin::I18n.t(:user_updated, :default => "User updated.")
|
27
|
+
redirect_to admin_users_url
|
28
|
+
else
|
29
|
+
flash.now[:alert] = Radmin::I18n.t(:user_could_not_be_updated, :default => "User could not be updated.")
|
30
|
+
render :action => :edit
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def destroy
|
35
|
+
@user.destroy
|
36
|
+
redirect_to(admin_users_url, :notice => Radmin::I18n.t(:account_deleted, :default => "Account deleted."))
|
37
|
+
end
|
38
|
+
|
39
|
+
protected
|
40
|
+
def load_user
|
41
|
+
@user = Radmin::User.find(params[:id])
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,15 @@
|
|
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
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module AdminHelper
|
2
|
+
def current_url?(options)
|
3
|
+
url = case options
|
4
|
+
when Hash
|
5
|
+
url_for options
|
6
|
+
else
|
7
|
+
options.to_s
|
8
|
+
end
|
9
|
+
request.fullpath =~ Regexp.new('^' + Regexp.quote(clean(url)))
|
10
|
+
end
|
11
|
+
|
12
|
+
def clean(url)
|
13
|
+
uri = URI.parse(url)
|
14
|
+
uri.path.gsub(%r{/+}, '/').gsub(%r{/$}, '')
|
15
|
+
end
|
16
|
+
|
17
|
+
def admin
|
18
|
+
Radmin::AdminUI.instance
|
19
|
+
end
|
20
|
+
|
21
|
+
def nav_tabs
|
22
|
+
admin.nav
|
23
|
+
end
|
24
|
+
|
25
|
+
def current_tab?(tab)
|
26
|
+
@current_tab ||= tab if tab.any? {|item| current_url?(item.relative_url) }
|
27
|
+
@current_tab == tab
|
28
|
+
end
|
29
|
+
|
30
|
+
def nav_link_to(name, options)
|
31
|
+
klass = current_url?(options) ? "current" : ""
|
32
|
+
content_tag :li, :class => "#{klass}" do
|
33
|
+
link_to name, options
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def title(page_title, show_title = true)
|
38
|
+
content_for(:title) { page_title.to_s }
|
39
|
+
@show_title = show_title
|
40
|
+
end
|
41
|
+
|
42
|
+
def show_title?
|
43
|
+
@show_title
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
module Radmin
|
2
|
+
def self.table_name_prefix; "radmin_"; end
|
3
|
+
|
4
|
+
class Assignment < ActiveRecord::Base
|
5
|
+
belongs_to :user, :class_name => "Radmin::User", :foreign_key => "radmin_user_id"
|
6
|
+
belongs_to :role, :class_name => "Radmin::Role", :foreign_key => "radmin_role_id"
|
7
|
+
end
|
8
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module Radmin
|
2
|
+
def self.table_name_prefix; "radmin_"; end
|
3
|
+
|
4
|
+
class Setting < ActiveRecord::Base
|
5
|
+
after_save { Rails.cache.write('Radmin::Settings',Radmin::Setting.to_hash) }
|
6
|
+
|
7
|
+
class << self
|
8
|
+
def [](key)
|
9
|
+
settings = Rails.cache.fetch('Radmin::Settings') { Radmin::Setting.to_hash }
|
10
|
+
settings[key]
|
11
|
+
end
|
12
|
+
|
13
|
+
def []=(key, value)
|
14
|
+
pair = find_or_initialize_by_key(key)
|
15
|
+
pair.update_attributes(:value => value)
|
16
|
+
value
|
17
|
+
end
|
18
|
+
|
19
|
+
def to_hash
|
20
|
+
Hash[ *find(:all).map { |pair| [pair.key, pair.value] }.flatten ]
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def value=(param)
|
25
|
+
self[:value] = param.to_s
|
26
|
+
end
|
27
|
+
|
28
|
+
def value
|
29
|
+
unless new_record?
|
30
|
+
if key.ends_with? "?"
|
31
|
+
self[:value] == "true"
|
32
|
+
else
|
33
|
+
self[:value]
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Radmin
|
2
|
+
def self.table_name_prefix; "radmin_"; end
|
3
|
+
|
4
|
+
class User < ActiveRecord::Base
|
5
|
+
devise :database_authenticatable, :recoverable, :trackable, :validatable
|
6
|
+
|
7
|
+
attr_accessible :email, :password, :password_confirmation, :role_ids
|
8
|
+
|
9
|
+
has_many :assignments, :class_name => "Radmin::Assignment", :dependent => :destroy, :foreign_key => "radmin_user_id"
|
10
|
+
has_many :roles, :through => :assignments
|
11
|
+
|
12
|
+
def role_symbols
|
13
|
+
roles.map do |role|
|
14
|
+
role.name.underscore.to_sym
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,11 @@
|
|
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")
|
@@ -0,0 +1,11 @@
|
|
1
|
+
- title Radmin::I18n.t(:change_password, :default => "Change your password")
|
2
|
+
= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :put }) do |f|
|
3
|
+
= f.hidden_field :reset_password_token
|
4
|
+
= f.label :password, "New password"
|
5
|
+
= f.password_field :password
|
6
|
+
= f.error_message_on :password
|
7
|
+
= f.label :password_confirmation, "Confirm new password"
|
8
|
+
= f.password_field :password_confirmation
|
9
|
+
= f.error_message_on :password_confirmation
|
10
|
+
.buttons
|
11
|
+
= f.submit Radmin::I18n.t(:change_password, :default => "Change Password")
|
@@ -0,0 +1,8 @@
|
|
1
|
+
- title Radmin::I18n.t(:forgot_password, :default => "Forgot password?")
|
2
|
+
= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f|
|
3
|
+
= f.label :email
|
4
|
+
= f.text_field :email
|
5
|
+
= f.error_message_on :email
|
6
|
+
.buttons
|
7
|
+
= f.submit Radmin::I18n.t(:send_instructions, :default => "Send Instructions")
|
8
|
+
= link_to t(:login, :default => "Login"), new_session_path(resource_name)
|
@@ -0,0 +1,9 @@
|
|
1
|
+
- title Radmin::I18n.t(:login,:default => "Login")
|
2
|
+
= form_for resource, :as => resource_name, :url => session_path(resource_name) do |f|
|
3
|
+
= f.label :email, Radmin::User.human_attribute_name("email")
|
4
|
+
= f.text_field :email
|
5
|
+
= f.label :password, Radmin::User.human_attribute_name("password")
|
6
|
+
= f.password_field :password
|
7
|
+
.buttons
|
8
|
+
= f.submit Radmin::I18n.t(:login,:default=>"Login")
|
9
|
+
= link_to t(:forgot_password, :default => "Forgot password?"), new_password_path(resource_name)
|
@@ -0,0 +1,12 @@
|
|
1
|
+
.col
|
2
|
+
= label_tag Radmin::I18n.t(:setting_key, :default => "Setting Key")
|
3
|
+
- if @setting.new_record?
|
4
|
+
= text_field_tag "setting[key]"
|
5
|
+
- else
|
6
|
+
= text_field_tag "setting[key]", @setting.key, :disabled => true
|
7
|
+
= label_tag Radmin::I18n.t(:setting_value, :default => "Setting Value")
|
8
|
+
= text_field_tag "setting[value]", @setting.value
|
9
|
+
%p.buttons
|
10
|
+
= submit_tag Radmin::I18n.t(:save,:default=>"Save")
|
11
|
+
= Radmin::I18n.t(:or,:default=>"or")
|
12
|
+
= link_to Radmin::I18n.t(:cancel,:default=>"Cancel"), admin_settings_path
|
@@ -0,0 +1,18 @@
|
|
1
|
+
- title Radmin::I18n.t(:settings,:default => "Application Settings")
|
2
|
+
%span.toolbar
|
3
|
+
= link_to(Radmin::I18n.t(:new_setting,:default => "New"), new_admin_setting_path) if permitted_to? :create
|
4
|
+
%p.intro= Radmin::I18n.t(:settings_list_intro,:default => "Application Settings")
|
5
|
+
%table
|
6
|
+
%thead
|
7
|
+
%th= Radmin::I18n.t(:setting_key, :default => "Key")
|
8
|
+
%th= Radmin::I18n.t(:setting_value, :default => "Value")
|
9
|
+
%th.last
|
10
|
+
%tbody
|
11
|
+
- @settings.each do |setting|
|
12
|
+
%tr
|
13
|
+
%td= link_to setting.key, edit_admin_setting_path(setting)
|
14
|
+
%td= setting.value
|
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}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
.col
|
2
|
+
= form.label :email, Radmin::User.human_attribute_name("email")
|
3
|
+
= form.text_field :email
|
4
|
+
= form.label :password, form.object.new_record? ? Radmin::User.human_attribute_name("password") : Radmin::I18n.t(:change_password, :default => "Change Password")
|
5
|
+
= form.password_field :password
|
6
|
+
= form.label :password_confirmation, Radmin::User.human_attribute_name("password_confirmation")
|
7
|
+
= form.password_field :password_confirmation
|
8
|
+
- has_role?(:admin) do
|
9
|
+
%h2= Radmin::I18n.t(:roles,:default=>"Roles")
|
10
|
+
.col
|
11
|
+
- for role in Radmin::Role.all
|
12
|
+
%div
|
13
|
+
= check_box_tag "admin_user[role_ids][]", role.id, @user.roles.include?(role), :id => "admin_user_role_#{role.name.underscore.to_sym}"
|
14
|
+
= label_tag "admin_user_role_#{role.name.underscore.to_sym}", Radmin::I18n.t(role.name.underscore.to_sym,:default=>h(role.name.capitalize)), :class => "light inline"
|
15
|
+
%p.buttons
|
16
|
+
= form.submit Radmin::I18n.t(:save,:default=>"Save")
|
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
|