gitlabhq/app/views/issues/index.html.haml

67 lines
2.1 KiB
Plaintext
Raw Normal View History

2011-10-08 23:36:38 +02:00
%div
- if can? current_user, :write_issue, @project
2011-10-22 06:06:38 +02:00
.left
= form_tag search_project_issues_path(@project), :method => :get, :remote => true do
= search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' }
= link_to 'New Issue', new_project_issue_path(@project), :remote => true, :class => "lbutton vm"
2011-10-08 23:36:38 +02:00
.right
= form_tag project_issues_path(@project), :method => :get do
.span-2
= radio_button_tag :f, 0, (params[:f] || "0") == "0", :onclick => "this.form.submit()", :id => "open_issues"
= label_tag "open_issues","Open"
.span-2
= radio_button_tag :f, 2, params[:f] == "2", :onclick => "this.form.submit()", :id => "closed_issues"
= label_tag "closed_issues","Closed"
.span-2
= radio_button_tag :f, 3, params[:f] == "3", :onclick => "this.form.submit()", :id => "my_issues"
= label_tag "my_issues","To Me"
.span-2
= radio_button_tag :f, 1, params[:f] == "1", :onclick => "this.form.submit()", :id => "all_issues"
= label_tag "all_issues","All"
#issues-table-holder= render "issues"
%br
:javascript
2011-10-22 06:06:38 +02:00
$('.issue_search').keyup(function() {
var terms = $(this).val();
var project_id = 1;
if (terms.length >= 2) {
$.get($(this).parent().attr('action'), { 'terms': terms, project: project_id }, function(response) {
$('#issues-table').html(response);
setSortable();
});
}
});
2011-10-08 23:36:38 +02:00
$('.delete-issue').live('ajax:success', function() {
$(this).closest('tr').fadeOut(); });
2011-10-15 18:56:53 +02:00
function setSortable(){
$('#issues-table>tbody').sortable({
axis: 'y',
dropOnEmpty: false,
handle: '.handle',
cursor: 'crosshair',
items: 'tr',
opacity: 0.4,
scroll: true,
update: function(){
$.ajax({
type: 'post',
data: $('#issues-table>tbody').sortable('serialize'),
dataType: 'script',
complete: function(request){
$('#issues-table>tbody').effect('highlight');
},
url: "#{sort_project_issues_path(@project)}"})
}
});
}
$(function(){
setSortable();
});