OSDN Git Service

layout selected by controller name
authorCyril <jv.cyril@gmail.com>
Wed, 26 Sep 2012 20:24:52 +0000 (22:24 +0200)
committerCyril <jv.cyril@gmail.com>
Wed, 26 Sep 2012 20:27:44 +0000 (22:27 +0200)
app/controllers/application_controller.rb
app/controllers/errors_controller.rb
app/controllers/profile_controller.rb
app/controllers/project_controller.rb
app/controllers/projects_controller.rb
app/views/layouts/errors.html.haml [moved from app/views/layouts/error.html.haml with 100% similarity]
config/application.rb

index 9ea11da..a299a83 100644 (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)
index 9f60c64..e998d72 100644 (file)
@@ -1,6 +1,4 @@
 class ErrorsController < ApplicationController
-  layout "error"
-
   def githost
     render "errors/gitolite"
   end
index 7ddbfe1..2b8e18f 100644 (file)
@@ -1,5 +1,4 @@
 class ProfileController < ApplicationController
-  layout "profile"
   before_filter :user
 
   def show
index 84c81ce..de4f317 100644 (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
index 2a11611..81c267a 100644 (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
index 27de3fa..fd0dd01 100644 (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