Commit ba74fa14 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Remove some bugs. Add warnings for renaming group. Add ability to cahnge group owner.

parent 7f6bbf06
...@@ -100,17 +100,3 @@ input[type='search'].search-text-input { ...@@ -100,17 +100,3 @@ input[type='search'].search-text-input {
} }
fieldset legend { font-size: 17px; } fieldset legend { font-size: 17px; }
ul.nav.nav-projects-tabs {
@extend .nav-tabs;
padding-left: 8px;
li {
a {
padding: 4px 20px;
margin-top: 2px;
border-color: #DDD;
}
}
}
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
} }
.side { .side {
@extend .span4;
@extend .right; @extend .right;
.groups_box, .groups_box,
...@@ -117,3 +116,25 @@ ...@@ -117,3 +116,25 @@
} }
} }
ul.nav.nav-projects-tabs {
@extend .nav-tabs;
padding-left: 8px;
li {
a {
padding: 4px 20px;
margin-top: 2px;
border-color: #DDD;
background-color: #EEE;
text-shadow: 0 1px 1px white;
color: #555;
}
&.active {
a {
font-weight: bold;
}
}
}
}
...@@ -11,6 +11,7 @@ class Admin::GroupsController < AdminController ...@@ -11,6 +11,7 @@ class Admin::GroupsController < AdminController
@projects = Project.scoped @projects = Project.scoped
@projects = @projects.not_in_group(@group) if @group.projects.present? @projects = @projects.not_in_group(@group) if @group.projects.present?
@projects = @projects.all @projects = @projects.all
@projects.reject!(&:empty_repo?)
end end
def new def new
......
...@@ -4,6 +4,7 @@ class Admin::ProjectsController < AdminController ...@@ -4,6 +4,7 @@ class Admin::ProjectsController < AdminController
def index def index
@projects = Project.scoped @projects = Project.scoped
@projects = @projects.where(namespace_id: params[:namespace_id]) if params[:namespace_id].present? @projects = @projects.where(namespace_id: params[:namespace_id]) if params[:namespace_id].present?
@projects = @projects.where(namespace_id: nil) if params[:namespace_id] == Namespace.global_id
@projects = @projects.search(params[:name]) if params[:name].present? @projects = @projects.search(params[:name]) if params[:name].present?
@projects = @projects.includes(:namespace).order("namespaces.path, projects.name ASC").page(params[:page]).per(20) @projects = @projects.includes(:namespace).order("namespaces.path, projects.name ASC").page(params[:page]).per(20)
end end
......
= form_for [:admin, @group] do |f|
- if @group.errors.any?
.alert-message.block-message.error
%span= @group.errors.full_messages.first
.clearfix.group_name_holder
= f.label :name do
Group name is
.input
= f.text_field :name, placeholder: "Example Group", class: "xxlarge"
.form-actions
= f.submit 'Save group', class: "btn save-btn"
%h3.page_title Edit Group %h3.page_title Rename Group
%br %hr
= render 'form' .alert
Renaming group can have unintended side effects.
%br
Renaming group will rename directory for all related projects
= form_for [:admin, @group] do |f|
- if @group.errors.any?
.alert-message.block-message.error
%span= @group.errors.full_messages.first
.clearfix.group_name_holder
= f.label :name do
Group name is
.input
= f.text_field :name, placeholder: "Example Group", class: "xxlarge"
.form-actions
= f.submit 'Rename group', class: "btn save-btn"
= link_to 'Cancel', admin_groups_path, class: "btn cancel-btn"
...@@ -15,7 +15,6 @@ ...@@ -15,7 +15,6 @@
%th Name %th Name
%th Path %th Path
%th Projects %th Projects
%th Edit
%th.cred Danger Zone! %th.cred Danger Zone!
- @groups.each do |group| - @groups.each do |group|
...@@ -23,6 +22,7 @@ ...@@ -23,6 +22,7 @@
%td= link_to group.name, [:admin, group] %td= link_to group.name, [:admin, group]
%td= group.path %td= group.path
%td= group.projects.count %td= group.projects.count
%td= link_to 'Edit', edit_admin_group_path(group), id: "edit_#{dom_id(group)}", class: "btn small" %td.bgred
%td.bgred= link_to 'Destroy', [:admin, group], confirm: "REMOVE #{group.name}? Are you sure?", method: :delete, class: "btn small danger" = link_to 'Rename', edit_admin_group_path(group), id: "edit_#{dom_id(group)}", class: "btn small"
= link_to 'Destroy', [:admin, group], confirm: "REMOVE #{group.name}? Are you sure?", method: :delete, class: "btn small danger"
= paginate @groups, theme: "admin" = paginate @groups, theme: "admin"
%h3.page_title %h3.page_title
Group: #{@group.name} Group: #{@group.name}
= link_to edit_admin_group_path(@group), class: "btn right" do
%i.icon-edit
Edit
%br %br
%table.zebra-striped %table.zebra-striped
...@@ -16,6 +13,10 @@ ...@@ -16,6 +13,10 @@
Name: Name:
%td %td
= @group.name = @group.name
&nbsp;
= link_to edit_admin_group_path(@group), class: "btn btn-small right" do
%i.icon-edit
Rename
%tr %tr
%td %td
%b %b
...@@ -28,24 +29,43 @@ ...@@ -28,24 +29,43 @@
Owner: Owner:
%td %td
= @group.owner_name = @group.owner_name
.ui-box
%h5
Projects
%small
(#{@group.projects.count})
%ul.unstyled
- @group.projects.each do |project|
%li.wll
%strong
= link_to project.name, [:admin, project]
.right .right
= link_to 'Remove from group', remove_project_admin_group_path(@group, project_id: project.id), confirm: 'Are you sure?', method: :delete, class: "btn danger small" = link_to "#", class: "btn btn-small change-owner-link" do
.clearfix %i.icon-edit
Change owner
.change-owner-holder.hide
= form_for [:admin, @group] do |f|
= f.select :owner_id, User.all.map { |user| [user.name, user.id] }, {}, {class: 'chosen'}
= f.submit 'Save', class: "btn btn-small save-btn"
= link_to "Cancel", "#", class: "btn btn-small change-owner-cancel-link"
%fieldset
%legend Projects (#{@group.projects.count})
%table
%thead
%tr
%th Project name
%th Path
%th Users
%th.cred Danger Zone!
- @group.projects.each do |project|
%tr
%td
= link_to project.name_with_namespace, [:admin, project]
%td
%span.monospace= project.path_with_namespace + ".git"
%td= project.users.count
%td.bgred
= link_to 'Transfer project to global namespace', remove_project_admin_group_path(@group, project_id: project.id), confirm: 'Remove project from group and move to global namespace. Are you sure?', method: :delete, class: "btn danger small"
= form_tag project_update_admin_group_path(@group), class: "bulk_import", method: :put do = form_tag project_update_admin_group_path(@group), class: "bulk_import", method: :put do
%fieldset %fieldset
%legend Move projects to group %legend Move projects to group
.alert
You can move only projects with existing repos
%br
Group projects will be moved in group directory and will not be accessible by old path
.clearfix .clearfix
= label_tag :project_ids do = label_tag :project_ids do
Projects Projects
...@@ -53,3 +73,17 @@ ...@@ -53,3 +73,17 @@
= select_tag :project_ids, options_from_collection_for_select(@projects , :id, :name_with_namespace), multiple: true, data: {placeholder: 'Select projects'}, class: 'chosen span5' = select_tag :project_ids, options_from_collection_for_select(@projects , :id, :name_with_namespace), multiple: true, data: {placeholder: 'Select projects'}, class: 'chosen span5'
.form-actions .form-actions
= submit_tag 'Add', class: "btn primary" = submit_tag 'Add', class: "btn primary"
:javascript
$(function(){
var modal = $('.change-owner-holder');
$('.change-owner-link').bind("click", function(){
$(this).hide();
modal.show();
});
$('.change-owner-cancel-link').bind("click", function(){
modal.hide();
$('.change-owner-link').show();
})
})
...@@ -22,7 +22,10 @@ ...@@ -22,7 +22,10 @@
- unless project.new_record? - unless project.new_record?
.clearfix .clearfix
= f.label :namespace_id = f.label :namespace_id
.input= f.select :namespace_id, namespaces_options(@project.namespace_id), {}, {class: 'chosen'} .input
= f.select :namespace_id, namespaces_options(@project.namespace_id), {}, {class: 'chosen'}
&nbsp;
%span.cred Be careful. Changing project namespace can have unintended side effects
- if project.repo_exists? - if project.repo_exists?
.clearfix .clearfix
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
.projects .projects
.activities.span8 .activities.span8
= render 'activities' = render 'activities'
.side .side.span4
= render 'sidebar' = render 'sidebar'
- else - else
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
- else - else
%p.nothing_here_message Projects activity will be displayed here %p.nothing_here_message Projects activity will be displayed here
.loading.hide .loading.hide
.side .side.span4
= render "projects", projects: @projects = render "projects", projects: @projects
%div %div
%span.rss-icon %span.rss-icon
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment