_form.html.haml
5.94 KB
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
.row
.span3
%ul.nav.nav-pills.nav-stacked
%li.active
= link_to 'Settings', '#tab-settings', 'data-toggle' => 'tab'
%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|
- if @project.errors.any?
.alert.alert-error
%ul
- @project.errors.full_messages.each do |msg|
%li= msg
%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 @repository.heads.empty?
.clearfix
= f.label :default_branch, "Default Branch"
.input= f.select(:default_branch, @repository.heads.map(&:name), {}, style: "width:210px;")
- 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 clone access
.controls
= f.check_box :public
%span.descr
If checked, this project can be cloned
%em without any
authentification.
It will also be listed on the #{link_to "public access directory", public_root_path}.
%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
= f.select :namespace_id, namespaces_options(@project.namespace_id || Namespace::global_id), {prompt: 'Choose a project namespace'}, {class: 'chosen'}
%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
.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!
= link_to 'Remove project', @project, confirm: 'Removed project can not be restored! Are you sure?', method: :delete, class: "btn btn-remove btn-small"
- else
%p.nothing_here_message Only project owner can remove a project