Commit cc1dd624aab2f5f85ec121506884965f5353411d
1 parent
2f6d289f
Exists in
master
and in
4 other branches
Restyled group -> edit area. Use select2 for transfer autocomplete
Showing
6 changed files
with
123 additions
and
60 deletions
Show diff stats
app/assets/stylesheets/gitlab_bootstrap/blocks.scss
| ... | ... | @@ -20,6 +20,15 @@ |
| 20 | 20 | background: #FFF; |
| 21 | 21 | } |
| 22 | 22 | |
| 23 | + &.ui-box-danger { | |
| 24 | + .title { | |
| 25 | + @include linear-gradient(#F26E5E, #bd362f); | |
| 26 | + color: #fff; | |
| 27 | + text-shadow: 0 1px 1px #900; | |
| 28 | + font-weight: bold; | |
| 29 | + } | |
| 30 | + } | |
| 31 | + | |
| 23 | 32 | img { max-width: 100%; } |
| 24 | 33 | |
| 25 | 34 | pre { |
| ... | ... | @@ -141,4 +150,20 @@ |
| 141 | 150 | text-decoration: underline; |
| 142 | 151 | } |
| 143 | 152 | } |
| 153 | + | |
| 154 | + .form-holder { | |
| 155 | + padding-top: 20px; | |
| 156 | + form { | |
| 157 | + margin-bottom: 0; | |
| 158 | + .form-actions { | |
| 159 | + margin-bottom: 0; | |
| 160 | + } | |
| 161 | + } | |
| 162 | + } | |
| 163 | +} | |
| 164 | + | |
| 165 | +.tab-pane { | |
| 166 | + .ui-box { | |
| 167 | + margin: 3px 3px 25px 3px; | |
| 168 | + } | |
| 144 | 169 | } | ... | ... |
app/assets/stylesheets/gitlab_bootstrap/common.scss
app/assets/stylesheets/selects.scss
| ... | ... | @@ -13,11 +13,6 @@ |
| 13 | 13 | } |
| 14 | 14 | } |
| 15 | 15 | |
| 16 | -.select2-no-results, .select2-searching { | |
| 17 | - padding: 7px; | |
| 18 | - color: #666; | |
| 19 | -} | |
| 20 | - | |
| 21 | 16 | /** Branch/tag selector **/ |
| 22 | 17 | .project-refs-form { |
| 23 | 18 | margin: 0; |
| ... | ... | @@ -108,3 +103,26 @@ |
| 108 | 103 | } |
| 109 | 104 | } |
| 110 | 105 | } |
| 106 | + | |
| 107 | +/** Select2 styling **/ | |
| 108 | +.select2-container .select2-choice { | |
| 109 | + background: #f1f1f1; | |
| 110 | + background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, whitesmoke), to(#e1e1e1)); | |
| 111 | + background-image: -webkit-linear-gradient(whitesmoke 6.6%, #e1e1e1); | |
| 112 | + background-image: -moz-linear-gradient(whitesmoke 6.6%, #e1e1e1); | |
| 113 | + background-image: -o-linear-gradient(whitesmoke 6.6%, #e1e1e1); | |
| 114 | +} | |
| 115 | + | |
| 116 | +.select2-container .select2-choice div { | |
| 117 | + border: none; | |
| 118 | + background: none; | |
| 119 | +} | |
| 120 | + | |
| 121 | +.select2-drop { | |
| 122 | + padding-top: 8px; | |
| 123 | +} | |
| 124 | + | |
| 125 | +.select2-no-results, .select2-searching { | |
| 126 | + padding: 7px; | |
| 127 | + color: #666; | |
| 128 | +} | ... | ... |
app/controllers/groups_controller.rb
app/views/groups/edit.html.haml
| 1 | -%h3.page_title Edit Group | |
| 2 | -%hr | |
| 3 | -= form_for @group do |f| | |
| 4 | - - if @group.errors.any? | |
| 5 | - .alert.alert-error | |
| 6 | - %span= @group.errors.full_messages.first | |
| 7 | - .clearfix | |
| 8 | - = f.label :name do | |
| 9 | - Group name is | |
| 10 | - .input | |
| 11 | - = f.text_field :name, placeholder: "Ex. OpenSource", class: "xxlarge left" | |
| 1 | +.row | |
| 2 | + .span3 | |
| 3 | + %ul.nav.nav-pills.nav-stacked | |
| 4 | + %li.active | |
| 5 | + = link_to 'Projects', '#tab-projects', 'data-toggle' => 'tab' | |
| 6 | + %li | |
| 7 | + = link_to 'Edit Group', '#tab-edit', 'data-toggle' => 'tab' | |
| 8 | + %li | |
| 9 | + = link_to 'Transfer', '#tab-transfer', 'data-toggle' => 'tab' | |
| 10 | + %li | |
| 11 | + = link_to 'Remove', '#tab-remove', 'data-toggle' => 'tab' | |
| 12 | 12 | |
| 13 | - .clearfix.group-description-holder | |
| 14 | - = f.label :description, "Details" | |
| 15 | - .input | |
| 16 | - = f.text_area :description, maxlength: 250, class: "xxlarge js-gfm-input", rows: 4 | |
| 13 | + .span9 | |
| 14 | + .tab-content | |
| 15 | + .tab-pane.active#tab-projects | |
| 16 | + .ui-box | |
| 17 | + %h5.title Projects | |
| 18 | + %ul.well-list | |
| 19 | + - @group.projects.each do |project| | |
| 20 | + %li | |
| 21 | + - if project.public | |
| 22 | + %i.icon-share | |
| 23 | + - else | |
| 24 | + %i.icon-lock.cgreen | |
| 25 | + = link_to project.name_with_namespace, project | |
| 26 | + .pull-right | |
| 27 | + = link_to 'Team', project_team_index_path(project), id: "edit_#{dom_id(project)}", class: "btn btn-small" | |
| 28 | + = link_to 'Edit', edit_project_path(project), id: "edit_#{dom_id(project)}", class: "btn btn-small" | |
| 29 | + = link_to 'Remove', project, confirm: "REMOVE #{project.name}? Are you sure?", method: :delete, class: "btn btn-small btn-remove" | |
| 30 | + - if @group.projects.blank? | |
| 31 | + %p.nothing_here_message This group has no projects yet | |
| 17 | 32 | |
| 18 | - .form-actions | |
| 19 | - = f.submit 'Save group', class: "btn btn-save" | |
| 33 | + .tab-pane#tab-edit | |
| 34 | + .ui-box | |
| 35 | + %h5.title Edit Group | |
| 36 | + %div.form-holder | |
| 37 | + = form_for @group do |f| | |
| 38 | + - if @group.errors.any? | |
| 39 | + .alert.alert-error | |
| 40 | + %span= @group.errors.full_messages.first | |
| 41 | + .clearfix | |
| 42 | + = f.label :name do | |
| 43 | + Group name is | |
| 44 | + .input | |
| 45 | + = f.text_field :name, placeholder: "Ex. OpenSource", class: "xxlarge left" | |
| 20 | 46 | |
| 21 | -%hr | |
| 47 | + .clearfix.group-description-holder | |
| 48 | + = f.label :description, "Details" | |
| 49 | + .input | |
| 50 | + = f.text_area :description, maxlength: 250, class: "xxlarge js-gfm-input", rows: 4 | |
| 22 | 51 | |
| 52 | + .form-actions | |
| 53 | + = f.submit 'Save group', class: "btn btn-save" | |
| 23 | 54 | |
| 24 | -.row | |
| 25 | - .span7 | |
| 26 | - .ui-box | |
| 27 | - %h5.title Projects | |
| 28 | - %ul.well-list | |
| 29 | - - @group.projects.each do |project| | |
| 30 | - %li | |
| 31 | - - if project.public | |
| 32 | - %i.icon-share | |
| 33 | - - else | |
| 34 | - %i.icon-lock.cgreen | |
| 35 | - = link_to project.name_with_namespace, project | |
| 36 | - .pull-right | |
| 37 | - = link_to 'Team', project_team_index_path(project), id: "edit_#{dom_id(project)}", class: "btn btn-small" | |
| 38 | - = link_to 'Edit', edit_project_path(project), id: "edit_#{dom_id(project)}", class: "btn btn-small" | |
| 39 | - = link_to 'Remove', project, confirm: "REMOVE #{project.name}? Are you sure?", method: :delete, class: "btn btn-small btn-remove" | |
| 40 | - - if @group.projects.blank? | |
| 41 | - %p.nothing_here_message This group has no projects yet | |
| 55 | + .tab-pane#tab-transfer | |
| 56 | + .ui-box.ui-box-danger | |
| 57 | + %h5.title Transfer group | |
| 58 | + .ui-box-body | |
| 59 | + %p | |
| 60 | + Transferring group will cause loss of admin control over group and all child projects | |
| 61 | + = form_for @group do |f| | |
| 62 | + = users_select_tag(:'group[owner_id]') | |
| 63 | + %hr | |
| 64 | + = f.submit 'Transfer group', class: "btn btn-small btn-remove" | |
| 65 | + | |
| 66 | + .tab-pane#tab-remove | |
| 67 | + .ui-box.ui-box-danger | |
| 68 | + %h5.title Remove group | |
| 69 | + .ui-box-body | |
| 70 | + %p | |
| 71 | + Remove of group will cause removing all child projects and resources. | |
| 72 | + %p | |
| 73 | + %strong Removed group can not be restored! | |
| 42 | 74 | |
| 43 | - .span5 | |
| 44 | - .ui-box | |
| 45 | - %h5.title Transfer group | |
| 46 | - .padded | |
| 47 | - %p | |
| 48 | - Transferring group will cause loss of admin control over group and all child projects | |
| 49 | - = form_for @group do |f| | |
| 50 | - = f.select :owner_id, User.all.map { |user| [user.name, user.id] }, {}, {class: 'chosen'} | |
| 51 | - = f.submit 'Transfer group', class: "btn btn-small" | |
| 52 | - .ui-box | |
| 53 | - %h5.title Remove group | |
| 54 | - .padded.bgred | |
| 55 | - %p | |
| 56 | - Remove of group will cause removing all child projects and resources | |
| 57 | - %br | |
| 58 | - Removed group can not be restored! | |
| 59 | - = link_to 'Remove Group', @group, confirm: 'Removed group can not be restored! Are you sure?', method: :delete, class: "btn btn-remove btn-small" | |
| 75 | + = link_to 'Remove Group', @group, confirm: 'Removed group can not be restored! Are you sure?', method: :delete, class: "btn btn-remove btn-small" | ... | ... |
app/views/layouts/group.html.haml