edit.html.haml 7.8 KB
Newer Older
1 2
= render "projects/settings_nav"

3
.project-edit-container
4
  %h3.page_title Edit Project
5
  %hr
6 7 8 9 10 11 12
  .project-edit-errors
  .project-edit-content
    .row
      .span3
        %ul.nav.nav-pills.nav-stacked
          %li.active
            = link_to 'Settings', '#tab-settings', 'data-toggle' => 'tab'
D
Dmitriy Zaporozhets 已提交
13 14
          %li
            = link_to 'Rename repo', '#tab-rename', 'data-toggle' => 'tab'
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
          %li
            = link_to 'Transfer', '#tab-transfer', 'data-toggle' => 'tab'
          %li
            = link_to 'Remove', '#tab-remove', 'data-toggle' => 'tab'

      .span9
        .tab-content
          .tab-pane.active#tab-settings
            .ui-box.white
              %h5.title Settings:
              .form-holder
                = form_for(@project, remote: true) do |f|
                  %fieldset
                    .clearfix.project_name_holder
                      = f.label :name do
                        Project name is
                      .input
                        = f.text_field :name, placeholder: "Example Project", class: "span5"


                    .clearfix
                      = f.label :description do
                        Project description
                        %span.light (optional)
                      .input
                        = f.text_area :description, placeholder: "awesome project", class: "span5", rows: 3, maxlength: 250

                    - unless @project.empty_repo?
                      .clearfix
                        = f.label :default_branch, "Default Branch"
                        .input= f.select(:default_branch, @repository.branch_names, {}, {class: 'chosen'})


                  - if can?(current_user, :change_public_mode, @project)
                    %fieldset.public-mode
                      %legend
                        Public mode:
                      .control-group
                        = f.label :public, class: 'control-label' do
                          %span Public access
                        .controls
                          = f.check_box :public
                          %span.descr
                            If checked, this project can be cloned
                            %em without any
                            authentication.
                            It will also be listed on the #{link_to "public access directory", public_root_path}.
                            %em Any
                            user will have #{link_to "Guest", help_permissions_path} permissions on the repository.

                  %fieldset.features
                    %legend
                      Labels:
                    .control-group
                      = f.label :label_list, "Labels", class: 'control-label'
                      .controls
                        = f.text_field :label_list, maxlength: 2000, class: "span5"
                        %p.hint Separate with comma.

                  %fieldset.features
                    %legend
                      Features:
                    .control-group
                      = f.label :issues_enabled, "Issues", class: 'control-label'
                      .controls
                        = f.check_box :issues_enabled
                        %span.descr Lightweight issue tracking system for this project

                    - if Project.issues_tracker.values.count > 1
                      .control-group
                        = f.label :issues_tracker, "Issues tracker", class: 'control-label'
                        .input= f.select(:issues_tracker, Project.issues_tracker.values, {}, { disabled: !@project.issues_enabled })

                      .clearfix
                        = f.label :issues_tracker_id, "Project name or id in issues tracker", class: 'control-label'
                        .input= f.text_field :issues_tracker_id, disabled: !@project.can_have_issues_tracker_id?

                    .control-group
                      = f.label :merge_requests_enabled, "Merge Requests", class: 'control-label'
                      .controls
                        = f.check_box :merge_requests_enabled
                        %span.descr Submit changes to be merged upstream.

                    .control-group
                      = f.label :wiki_enabled, "Wiki", class: 'control-label'
                      .controls
                        = f.check_box :wiki_enabled
                        %span.descr Pages for project documentation

                    .control-group
                      = f.label :wall_enabled, "Wall", class: 'control-label'
                      .controls
                        = f.check_box :wall_enabled
                        %span.descr Simple chat system for broadcasting inside project

                    .control-group
                      = f.label :snippets_enabled, "Snippets", class: 'control-label'
                      .controls
                        = f.check_box :snippets_enabled
                        %span.descr Share code pastes with others out of git repository


                  .form-actions
                    = f.submit 'Save', class: "btn btn-save"

          .tab-pane#tab-transfer
            - if can?(current_user, :change_namespace, @project)
              .ui-box.ui-box-danger
                %h5.title Transfer project
                .errors-holder
                .form-holder
                  = form_for(@project, url: transfer_project_path(@project), remote: true, html: { class: 'transfer-project' }) do |f|
                    .control-group
                      = f.label :namespace_id do
                        %span Namespace
                      .controls
                        .clearfix
132
                          = f.select :namespace_id, namespaces_options(@project.namespace_id), {prompt: 'Choose a project namespace'}, {class: 'chosen'}
133 134 135 136 137 138 139 140 141
                        %ul
                          %li Be careful. Changing project namespace can have unintended side effects
                          %li You can transfer project only to namespaces you can manage
                          %li You will need to update your local repositories to point to the new location.
                    .form-actions
                      = f.submit 'Transfer', class: "btn btn-remove"
            - else
              %p.nothing_here_message Only project owner can transfer a project

D
Dmitriy Zaporozhets 已提交
142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
          .tab-pane#tab-rename
            .ui-box.ui-box-danger
              %h5.title Rename repository
              .errors-holder
              .form-holder
                = form_for(@project) do |f|
                  .control-group
                    = f.label :path do
                      %span Path
                    .controls
                      .clearfix
                        = f.text_field :path
                      %ul
                        %li Be careful. Rename of project repo can have unintended side effects
                        %li You will need to update your local repositories to point to the new location.
                  .form-actions
                    = f.submit 'Rename', class: "btn btn-remove"

160 161 162 163 164 165 166 167 168 169
          .tab-pane#tab-remove
            - if can?(current_user, :remove_project, @project)
              .ui-box.ui-box-danger
                %h5.title Remove project
                .ui-box-body
                  %p
                    Remove of project will cause removing repository and all related resources like issues, merge requests etc.
                  %p
                    %strong Removed project can not be restored!

170
                  = link_to 'Remove project', @project, confirm: remove_project_message(@project), method: :delete, class: "btn btn-remove btn-small"
171 172 173 174
            - else
              %p.nothing_here_message Only project owner can remove a project

.save-project-loader.hide
D
Dmitriy Zaporozhets 已提交
175
  %center
176
    = image_tag "ajax_loader.gif"
177
    %h3 Saving project. Please wait a moment, this page will automatically refresh when ready.