summaryrefslogtreecommitdiff
path: root/app/views/projects/edit.html.haml
blob: 57936cff10f3d2b57cb59fd0bf293176f7f25553 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
.project-edit-container
  .project-edit-errors
  .project-edit-content
    %div
      %h3.page-title
        Project settings:
      %p.light Some settings, such as "Transfer Project", are hidden inside the danger area below
      %hr
      .form-holder
        = form_for(@project, remote: true) do |f|
          %fieldset
            .control-group.project_name_holder
              = f.label :name do
                Project name
              .controls
                = f.text_field :name, placeholder: "Example Project", class: "span5"


            .control-group
              = f.label :description do
                Project description
                %span.light (optional)
              .controls
                = f.text_area :description, placeholder: "Awesome project", class: "span5", rows: 3, maxlength: 250

            - if @project.repository.exists? && @project.repository.branch_names.any?
              .control-group
                = f.label :default_branch, "Default Branch"
                .controls= f.select(:default_branch, @repository.branch_names, {}, {class: 'chosen'})


          = render "visibility_level", f: f, visibility_level: @project.visibility_level, can_change_visibility_level: can?(current_user, :change_visibility_level, @project)

          %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 labels with commas.

          %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'
                .controls= f.select(:issues_tracker, project_issues_trackers(@project.issues_tracker), {}, { disabled: !@project.issues_enabled })

              .control-group
                = f.label :issues_tracker_id, "Project name or id in issues tracker", class: 'control-label'
                .controls= 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 changes', class: "btn btn-save"



    %center.light.prepend-top-20.padded
      %h3
        %i.icon-warning-sign
        Dangerous settings
      %p Project settings below may result in data loss!
      = link_to '#', class: 'btn js-toggle-visibility-link' do
        Show it to me
        %i.icon-chevron-down

    .js-toggle-visibility-container.hide
      - if can?(current_user, :change_namespace, @project)
        .ui-box.ui-box-danger
          .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
                  .control-group
                    = f.select :namespace_id, namespaces_options(@project.namespace_id), { prompt: 'Choose a project namespace' }, { class: 'chosen' }
                  %ul
                    %li Be careful. Changing the project's namespace can have unintended side effects.
                    %li You can only transfer the project to namespaces you 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 the project owner can transfer a project

      .ui-box.ui-box-danger
        .title Rename repository
        .errors-holder
        .form-holder
          = form_for(@project) do |f|
            .control-group
              = f.label :path do
                %span Path
              .controls
                .control-group
                  .input-append
                    = f.text_field :path
                    %span.add-on .git
                %ul
                  %li Be careful. Renaming a project's repository 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"

      - if can?(current_user, :remove_project, @project)
        .ui-box.ui-box-danger
          .title Remove project
          .ui-box-body
            %p
              Removing the project will delete its repository and all related resources including issues, merge requests etc.
              %br
              %strong Removed projects cannot be restored!

            = link_to 'Remove project', @project, data: { confirm: remove_project_message(@project) }, method: :delete, class: "btn btn-remove"
      - else
        %p.nothing_here_message Only project owner can remove a project

.save-project-loader.hide
  %center
    = image_tag "ajax_loader.gif"
    %h3 Saving project.
    %p Please wait a moment, this page will automatically refresh when ready.