diff options
author | Marin Jankovski <maxlazio@gmail.com> | 2015-03-31 19:03:54 -0700 |
---|---|---|
committer | Marin Jankovski <maxlazio@gmail.com> | 2015-03-31 19:03:54 -0700 |
commit | d77f333f9c7968337241904918d97f67dd5bae82 (patch) | |
tree | e8c75a351267111d7528115f2217caaaff138f7d /app/controllers/namespaces_controller.rb | |
parent | 96d093e59aa9c952c4c85908a664a62a1f2057d4 (diff) | |
parent | c14c03a88f6c9a1054cf0e7dc2067d47cae6710a (diff) | |
download | gitlab-ce-d77f333f9c7968337241904918d97f67dd5bae82.tar.gz |
Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce
Conflicts:
lib/gitlab/markdown.rb
Diffstat (limited to 'app/controllers/namespaces_controller.rb')
-rw-r--r-- | app/controllers/namespaces_controller.rb | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/app/controllers/namespaces_controller.rb b/app/controllers/namespaces_controller.rb index b7a9d8c1291..386d103ee5a 100644 --- a/app/controllers/namespaces_controller.rb +++ b/app/controllers/namespaces_controller.rb @@ -4,14 +4,22 @@ class NamespacesController < ApplicationController def show namespace = Namespace.find_by(path: params[:id]) - unless namespace - return render_404 + if namespace + if namespace.is_a?(Group) + group = namespace + else + user = namespace.owner + end end - if namespace.type == "Group" - redirect_to group_path(namespace) + if user + redirect_to user_path(user) + elsif group && can?(current_user, :read_group, group) + redirect_to group_path(group) + elsif current_user.nil? + authenticate_user! else - redirect_to user_path(namespace.owner) + render_404 end end end |