diff options
-rw-r--r-- | app/controllers/namespaces_controller.rb | 18 | ||||
-rw-r--r-- | config/routes.rb | 2 |
2 files changed, 19 insertions, 1 deletions
diff --git a/app/controllers/namespaces_controller.rb b/app/controllers/namespaces_controller.rb new file mode 100644 index 00000000000..c59a2401cef --- /dev/null +++ b/app/controllers/namespaces_controller.rb @@ -0,0 +1,18 @@ +class NamespacesController < ApplicationController + skip_before_filter :authenticate_user! + + def show + namespace = Namespace.find_by(path: params[:id]) + + unless namespace + return render_404 + end + + if namespace.type == "Group" + redirect_to group_path(namespace) + else + redirect_to user_path(namespace.owner) + end + end +end + diff --git a/config/routes.rb b/config/routes.rb index 7c2ab6bd1dd..67ff66757e6 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -315,7 +315,7 @@ Gitlab::Application.routes.draw do end end - get ':id' => "groups#show", constraints: {id: /(?:[^.]|\.(?!atom$))+/, format: /atom/} + get ':id' => "namespaces#show", constraints: {id: /(?:[^.]|\.(?!atom$))+/, format: /atom/} root to: "dashboard#show" end |