layout selected by controller name

This commit is contained in:
Cyril 2012-09-26 22:24:52 +02:00
parent 078a8f0e66
commit bdf317addc
7 changed files with 12 additions and 30 deletions

View file

@ -11,19 +11,17 @@ class ApplicationController < ActionController::Base
helper_method :abilities, :can?
rescue_from Gitlab::Gitolite::AccessDenied do |exception|
render "errors/gitolite", layout: "error", status: 500
render "errors/gitolite", layout: "errors", status: 500
end
rescue_from Encoding::CompatibilityError do |exception|
render "errors/encoding", layout: "error", status: 500
render "errors/encoding", layout: "errors", status: 500
end
rescue_from ActiveRecord::RecordNotFound do |exception|
render "errors/not_found", layout: "error", status: 404
render "errors/not_found", layout: "errors", status: 404
end
layout :layout_by_resource
protected
def check_token_auth
@ -51,14 +49,6 @@ class ApplicationController < ActionController::Base
end
end
def layout_by_resource
if devise_controller?
"devise_layout"
else
"application"
end
end
def set_current_user_for_mailer
MailerObserver.current_user = current_user
end
@ -93,15 +83,15 @@ class ApplicationController < ActionController::Base
end
def access_denied!
render "errors/access_denied", layout: "error", status: 404
render "errors/access_denied", layout: "errors", status: 404
end
def not_found!
render "errors/not_found", layout: "error", status: 404
render "errors/not_found", layout: "errors", status: 404
end
def git_not_found!
render "errors/git_not_found", layout: "error", status: 404
render "errors/git_not_found", layout: "errors", status: 404
end
def method_missing(method_sym, *arguments, &block)

View file

@ -1,6 +1,4 @@
class ErrorsController < ApplicationController
layout "error"
def githost
render "errors/gitolite"
end

View file

@ -1,5 +1,4 @@
class ProfileController < ApplicationController
layout "profile"
before_filter :user
def show

View file

@ -2,15 +2,4 @@ class ProjectController < ApplicationController
before_filter :project
# Authorize
before_filter :add_project_abilities
layout :determine_layout
protected
def determine_layout
if @project && !@project.new_record?
'project'
else
'application'
end
end
end

View file

@ -8,6 +8,8 @@ class ProjectsController < ProjectController
before_filter :authorize_admin_project!, only: [:edit, :update, :destroy]
before_filter :require_non_empty_project, only: [:blob, :tree, :graph]
layout 'application', only: [:new, :create]
def new
@project = Project.new
end

View file

@ -53,5 +53,9 @@ module Gitlab
# Add fonts
config.assets.paths << "#{Rails.root}/app/assets/fonts"
config.to_prepare do
Devise::SessionsController.layout 'devise_layout'
end
end
end