edit.html.haml 7.77 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'
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
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

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
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
175
  %center
176
    = image_tag "ajax_loader.gif"
177
    %h3 Saving project. Please wait a moment, this page will automatically refresh when ready.