Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/projects/issues/_form.html.haml')
-rw-r--r--app/views/projects/issues/_form.html.haml95
1 files changed, 95 insertions, 0 deletions
diff --git a/app/views/projects/issues/_form.html.haml b/app/views/projects/issues/_form.html.haml
new file mode 100644
index 00000000000..38aea6f06dc
--- /dev/null
+++ b/app/views/projects/issues/_form.html.haml
@@ -0,0 +1,95 @@
+%div.issue-form-holder
+ %h3.page_title= @issue.new_record? ? "New Issue" : "Edit Issue ##{@issue.id}"
+ = form_for [@project, @issue] do |f|
+ -if @issue.errors.any?
+ .alert.alert-error
+ - @issue.errors.full_messages.each do |msg|
+ %span= msg
+ %br
+ .ui-box.ui-box-show
+ .ui-box-head
+ .clearfix
+ = f.label :title do
+ %strong= "Subject *"
+ .input
+ = f.text_field :title, maxlength: 255, class: "xxlarge js-gfm-input", autofocus: true, required: true
+ .ui-box-body
+ .clearfix
+ .issue_assignee.pull-left
+ = f.label :assignee_id do
+ %i.icon-user
+ Assign to
+ .input
+ .pull-left
+ = f.select(:assignee_id, @project.team.members.sort_by(&:name).map {|p| [ p.name, p.id ] }, { include_blank: "Select a user" }, {class: 'chosen'})
+ .pull-right
+  
+ = link_to 'Assign to me', '#', class: 'btn btn-small assign-to-me-link'
+ .issue_milestone.pull-left
+ = f.label :milestone_id do
+ %i.icon-time
+ Milestone
+ .input= f.select(:milestone_id, @project.milestones.active.all.collect {|p| [ p.title, p.id ] }, { include_blank: "Select milestone" }, {class: 'chosen'})
+
+ .ui-box-bottom
+ .clearfix
+ = f.label :label_list do
+ %i.icon-tag
+ Labels
+ .input
+ = f.text_field :label_list, maxlength: 2000, class: "xxlarge"
+ %p.hint Separate with comma.
+
+ .clearfix
+ = f.label :description, "Details"
+ .input
+ = f.text_area :description, class: "xxlarge js-gfm-input", rows: 14
+ %p.hint Issues are parsed with #{link_to "GitLab Flavored Markdown", help_markdown_path, target: '_blank'}.
+
+
+ .actions
+ - if @issue.new_record?
+ = f.submit 'Submit new issue', class: "btn btn-create"
+ -else
+ = f.submit 'Save changes', class: "btn-save btn"
+
+ - cancel_path = @issue.new_record? ? project_issues_path(@project) : project_issue_path(@project, @issue)
+ = link_to "Cancel", cancel_path, class: 'btn btn-cancel'
+
+
+
+
+:javascript
+ $("#issue_label_list")
+ .bind( "keydown", function( event ) {
+ if ( event.keyCode === $.ui.keyCode.TAB &&
+ $( this ).data( "autocomplete" ).menu.active ) {
+ event.preventDefault();
+ }
+ })
+ .bind( "click", function( event ) {
+ $( this ).autocomplete("search", "");
+ })
+ .autocomplete({
+ minLength: 0,
+ source: function( request, response ) {
+ response( $.ui.autocomplete.filter(
+ #{raw labels_autocomplete_source}, extractLast( request.term ) ) );
+ },
+ focus: function() {
+ return false;
+ },
+ select: function(event, ui) {
+ var terms = split( this.value );
+ terms.pop();
+ terms.push( ui.item.value );
+ terms.push( "" );
+ this.value = terms.join( ", " );
+ return false;
+ }
+ });
+
+ $('.assign-to-me-link').on('click', function(e){
+ $('#issue_assignee_id').val("#{current_user.id}").trigger("liszt:updated");
+ e.preventDefault();
+ });