From dfabadf4f7e00d5769f96eb2d6944c7ed7c6e410 2009-12-17 18:21:02 From: Jean-Philippe Lang Date: 2009-12-17 18:21:02 Subject: [PATCH] Adds an admin layout that displays the admin menu in the sidebar. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3176 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index 61d1ead..d0bfc41 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class AdminController < ApplicationController + layout 'admin' + before_filter :require_admin helper :sort diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index a794b3b..144ccdd 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -177,7 +177,7 @@ class ApplicationController < ActionController::Base def render_403 @project = nil - render :template => "common/403", :layout => !request.xhr?, :status => 403 + render :template => "common/403", :layout => (request.xhr? ? false : 'base'), :status => 403 return false end diff --git a/app/controllers/auth_sources_controller.rb b/app/controllers/auth_sources_controller.rb index 981f29f..0f5fba1 100644 --- a/app/controllers/auth_sources_controller.rb +++ b/app/controllers/auth_sources_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class AuthSourcesController < ApplicationController + layout 'admin' + before_filter :require_admin def index diff --git a/app/controllers/custom_fields_controller.rb b/app/controllers/custom_fields_controller.rb index ec101fe..ec16be5 100644 --- a/app/controllers/custom_fields_controller.rb +++ b/app/controllers/custom_fields_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class CustomFieldsController < ApplicationController + layout 'admin' + before_filter :require_admin def index diff --git a/app/controllers/enumerations_controller.rb b/app/controllers/enumerations_controller.rb index 8070df0..d39f5ed 100644 --- a/app/controllers/enumerations_controller.rb +++ b/app/controllers/enumerations_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class EnumerationsController < ApplicationController + layout 'admin' + before_filter :require_admin helper :custom_fields diff --git a/app/controllers/groups_controller.rb b/app/controllers/groups_controller.rb index 54b5d1b..96e59c2 100644 --- a/app/controllers/groups_controller.rb +++ b/app/controllers/groups_controller.rb @@ -16,7 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class GroupsController < ApplicationController - layout 'base' + layout 'admin' + before_filter :require_admin helper :custom_fields diff --git a/app/controllers/issue_statuses_controller.rb b/app/controllers/issue_statuses_controller.rb index 3be6abf..88f97ec 100644 --- a/app/controllers/issue_statuses_controller.rb +++ b/app/controllers/issue_statuses_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class IssueStatusesController < ApplicationController + layout 'admin' + before_filter :require_admin verify :method => :post, :only => [ :destroy, :create, :update, :move, :update_issue_done_ratio ], diff --git a/app/controllers/roles_controller.rb b/app/controllers/roles_controller.rb index 8074b18..c701cac 100644 --- a/app/controllers/roles_controller.rb +++ b/app/controllers/roles_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class RolesController < ApplicationController + layout 'admin' + before_filter :require_admin verify :method => :post, :only => [ :destroy, :move ], diff --git a/app/controllers/settings_controller.rb b/app/controllers/settings_controller.rb index c1d9485..77e1da5 100644 --- a/app/controllers/settings_controller.rb +++ b/app/controllers/settings_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class SettingsController < ApplicationController + layout 'admin' + before_filter :require_admin def index diff --git a/app/controllers/trackers_controller.rb b/app/controllers/trackers_controller.rb index cf797d8..1b7eddc 100644 --- a/app/controllers/trackers_controller.rb +++ b/app/controllers/trackers_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class TrackersController < ApplicationController + layout 'admin' + before_filter :require_admin def index diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 05dc5bc..991afbf 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class UsersController < ApplicationController + layout 'admin' + before_filter :require_admin, :except => :show helper :sort @@ -62,7 +64,8 @@ class UsersController < ApplicationController if @user != User.current && !User.current.admin? && @memberships.empty? && events.empty? render_404 and return end - + render :layout => 'base' + rescue ActiveRecord::RecordNotFound render_404 end diff --git a/app/controllers/workflows_controller.rb b/app/controllers/workflows_controller.rb index f11aa47..6e7c58e 100644 --- a/app/controllers/workflows_controller.rb +++ b/app/controllers/workflows_controller.rb @@ -16,6 +16,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class WorkflowsController < ApplicationController + layout 'admin' + before_filter :require_admin def index diff --git a/app/views/admin/_menu.rhtml b/app/views/admin/_menu.rhtml index ef2abbc..87fa5c7 100644 --- a/app/views/admin/_menu.rhtml +++ b/app/views/admin/_menu.rhtml @@ -1,25 +1,19 @@ - - - -