88 lines
3.3 KiB
Text
88 lines
3.3 KiB
Text
- if current_user.private_token
|
|
= content_for :rss_icon do
|
|
.rss-icon
|
|
= link_to project_issues_path(@project, :atom, { :private_token => current_user.private_token }) do
|
|
= image_tag "rss_icon_gray.png", :width => 16, :title => "feed"
|
|
|
|
%div#issues-table-holder
|
|
%table.round-borders#issues-table
|
|
%thead
|
|
%th
|
|
.top_panel_issues
|
|
- if can? current_user, :write_issue, @project
|
|
%div{:class => "left", :style => "margin-right: 10px;" }
|
|
= link_to 'New Issue', new_project_issue_path(@project), :remote => true, :class => "grey-button", :style => "margin-top:5px;"
|
|
= form_tag search_project_issues_path(@project), :method => :get, :remote => true, :class => :left, :id => "issue_search_form" do
|
|
= hidden_field_tag :project_id, @project.id, { :id => 'project_id' }
|
|
= search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' }
|
|
|
|
.right.issues_filter
|
|
= form_tag project_issues_path(@project), :method => :get do
|
|
.left
|
|
= radio_button_tag :f, 0, (params[:f] || "0") == "0", :onclick => "setIssueFilter(this.form, 0)", :id => "open_issues", :class => "status"
|
|
= label_tag "open_issues","Open"
|
|
.left
|
|
= radio_button_tag :f, 2, params[:f] == "2", :onclick => "setIssueFilter(this.form, 2)", :id => "closed_issues", :class => "status"
|
|
= label_tag "closed_issues","Closed"
|
|
.left
|
|
= radio_button_tag :f, 3, params[:f] == "3", :onclick => "setIssueFilter(this.form, 3)", :id => "my_issues", :class => "status"
|
|
= label_tag "my_issues","To Me"
|
|
.left
|
|
= radio_button_tag :f, 1, params[:f] == "1", :onclick => "setIssueFilter(this.form, 1)", :id => "all_issues", :class => "status"
|
|
= label_tag "all_issues","All"
|
|
|
|
= render "issues"
|
|
%br
|
|
:javascript
|
|
var href = $('.issue_search').parent().attr('action');
|
|
var last_terms = '';
|
|
|
|
var setIssueFilter = function(form, value){
|
|
$.cookie('issue_filter', value, { expires: 140 });
|
|
form.submit();
|
|
}
|
|
|
|
$('.issue_search').keyup(function() {
|
|
var terms = $(this).val();
|
|
var project_id = $('#project_id').val();
|
|
var status = $('.status:checked').val();
|
|
if (terms != last_terms) {
|
|
last_terms = terms;
|
|
|
|
if (terms.length >= 2 || terms.length == 0) {
|
|
$.get(href, { 'status': status, 'terms': terms, project: project_id }, function(response) {
|
|
$('#issues-table tbody').html(response);
|
|
setSortable();
|
|
});
|
|
}
|
|
}
|
|
});
|
|
|
|
$('.delete-issue').live('ajax:success', function() {
|
|
$(this).closest('tr').fadeOut(); updatePage();});
|
|
|
|
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();
|
|
});
|