Commit e376f3150736e7936082529a3f6c92395f4c9720
1 parent
2a1c5cdf
Exists in
master
and in
4 other branches
Admin can move project to ANY namespace. Updated permissions page
Showing
4 changed files
with
64 additions
and
57 deletions
Show diff stats
app/contexts/project_update_context.rb
| ... | ... | @@ -2,7 +2,9 @@ class ProjectUpdateContext < BaseContext |
| 2 | 2 | def execute(role = :default) |
| 3 | 3 | namespace_id = params[:project].delete(:namespace_id) |
| 4 | 4 | |
| 5 | - if can?(current_user, :change_namespace, project) && namespace_id.present? | |
| 5 | + allowed_transfer = can?(current_user, :change_namespace, project) || role == :admin | |
| 6 | + | |
| 7 | + if allowed_transfer && namespace_id.present? | |
| 6 | 8 | if namespace_id == Namespace.global_id |
| 7 | 9 | if project.namespace.present? |
| 8 | 10 | # Transfer to global namespace from anyone | ... | ... |
app/models/ability.rb
app/views/admin/projects/_form.html.haml
| ... | ... | @@ -23,7 +23,7 @@ |
| 23 | 23 | .clearfix |
| 24 | 24 | = f.label :namespace_id |
| 25 | 25 | .input |
| 26 | - = f.select :namespace_id, namespaces_options(@project.namespace_id), {}, {class: 'chosen'} | |
| 26 | + = f.select :namespace_id, namespaces_options(@project.namespace_id, :all), {}, {class: 'chosen'} | |
| 27 | 27 | |
| 28 | 28 | %span.cred Be careful. Changing project namespace can have unintended side effects |
| 29 | 29 | ... | ... |
app/views/help/permissions.html.haml
| ... | ... | @@ -4,61 +4,65 @@ |
| 4 | 4 | ← to index |
| 5 | 5 | %hr |
| 6 | 6 | |
| 7 | -.row | |
| 8 | - .ui-box.span2 | |
| 9 | - %h5 Guest | |
| 10 | - %ul.unstyled | |
| 11 | - %li Create new issue | |
| 12 | - %li Leave comments | |
| 13 | - %li Write on project wall | |
| 7 | +%fieldset | |
| 8 | + %legend Guest | |
| 9 | + %ul | |
| 10 | + %li Create new issue | |
| 11 | + %li Leave comments | |
| 12 | + %li Write on project wall | |
| 14 | 13 | |
| 15 | - .ui-box.span3 | |
| 16 | - %h5 Reporter | |
| 17 | - %ul.unstyled | |
| 18 | - %li Create new issue | |
| 19 | - %li Leave comments | |
| 20 | - %li Write on project wall | |
| 21 | - %li Pull project code | |
| 22 | - %li Download project | |
| 23 | - %li Create new merge request | |
| 24 | - %li Create a code snippets | |
| 14 | +%fieldset | |
| 15 | + %legend Reporter | |
| 16 | + %ul | |
| 17 | + %li Create new issue | |
| 18 | + %li Leave comments | |
| 19 | + %li Write on project wall | |
| 20 | + %li Pull project code | |
| 21 | + %li Download project | |
| 22 | + %li Create new merge request | |
| 23 | + %li Create a code snippets | |
| 25 | 24 | |
| 26 | 25 | |
| 27 | - .ui-box.span3 | |
| 28 | - %h5 Developer | |
| 29 | - %ul.unstyled | |
| 30 | - %li Create new issue | |
| 31 | - %li Leave comments | |
| 32 | - %li Write on project wall | |
| 33 | - %li Pull project code | |
| 34 | - %li Download project | |
| 35 | - %li Create new merge request | |
| 36 | - %li Create a code snippets | |
| 37 | - %li Create new branches | |
| 38 | - %li Push to non-protected branches | |
| 39 | - %li Remove non-protected branches | |
| 40 | - %li Add tags | |
| 41 | - %li Write a wiki | |
| 26 | +%fieldset | |
| 27 | + %legend Developer | |
| 28 | + %ul | |
| 29 | + %li Create new issue | |
| 30 | + %li Leave comments | |
| 31 | + %li Write on project wall | |
| 32 | + %li Pull project code | |
| 33 | + %li Download project | |
| 34 | + %li Create new merge request | |
| 35 | + %li Create a code snippets | |
| 36 | + %li Create new branches | |
| 37 | + %li Push to non-protected branches | |
| 38 | + %li Remove non-protected branches | |
| 39 | + %li Add tags | |
| 40 | + %li Write a wiki | |
| 42 | 41 | |
| 43 | - .ui-box.span3 | |
| 44 | - %h5 Master | |
| 45 | - %ul.unstyled | |
| 46 | - %li Create new issue | |
| 47 | - %li Leave comments | |
| 48 | - %li Write on project wall | |
| 49 | - %li Pull project code | |
| 50 | - %li Download project | |
| 51 | - %li Create new merge request | |
| 52 | - %li Create a code snippets | |
| 53 | - %li Create new branches | |
| 54 | - %li Push to non-protected branches | |
| 55 | - %li Remove non-protected branches | |
| 56 | - %li Add tags | |
| 57 | - %li Write a wiki | |
| 58 | - %li Add new team members | |
| 59 | - %li Push to protected branches | |
| 60 | - %li Remove protected branches | |
| 61 | - %li Push with force option | |
| 62 | - %li Edit project | |
| 63 | - %li Add Deploy Keys to project | |
| 64 | - %li Configure Project Hooks | |
| 42 | +%fieldset | |
| 43 | + %legend Master | |
| 44 | + %ul | |
| 45 | + %li Create new issue | |
| 46 | + %li Leave comments | |
| 47 | + %li Write on project wall | |
| 48 | + %li Pull project code | |
| 49 | + %li Download project | |
| 50 | + %li Create new merge request | |
| 51 | + %li Create a code snippets | |
| 52 | + %li Create new branches | |
| 53 | + %li Push to non-protected branches | |
| 54 | + %li Remove non-protected branches | |
| 55 | + %li Add tags | |
| 56 | + %li Write a wiki | |
| 57 | + %li Add new team members | |
| 58 | + %li Push to protected branches | |
| 59 | + %li Remove protected branches | |
| 60 | + %li Push with force option | |
| 61 | + %li Edit project | |
| 62 | + %li Add Deploy Keys to project | |
| 63 | + %li Configure Project Hooks | |
| 64 | + | |
| 65 | +%fieldset | |
| 66 | + %legend Owner | |
| 67 | + %ul | |
| 68 | + %li Transfer project to another namespace | ... | ... |