Assignee filter for issues

This commit is contained in:
randx 2012-06-18 20:50:06 +03:00
parent 2dd17623c9
commit 034ddb85fe
4 changed files with 9 additions and 5 deletions

View file

@ -400,6 +400,7 @@ form {
*
*/
.ui-box {
background:#F9F9F9;
margin-bottom: 40px;
@include round-borders-all(4px);
border-color: #CCC;

View file

@ -137,6 +137,7 @@ class IssuesController < ApplicationController
else @project.issues.opened
end
@issues = @issues.where(:assignee_id => params[:assignee_id]) if params[:assignee_id].present?
@issues = @issues.where(:milestone_id => params[:milestone_id]) if params[:milestone_id].present?
@issues = @issues.includes(:author, :project).order("critical, updated_at")
@issues

View file

@ -12,4 +12,4 @@
%span.cgray.right #{@issues.total_count} issues for this filter
- else
%li
%p.padded Nothing to show here
%h4.nothing_here_message Nothing to show here

View file

@ -17,7 +17,7 @@
%div#issues-table-holder.ui-box
.title
.row
.span6
.span4
%ul.nav.nav-pills.left
%li{:class => ("active" if (params[:f] == "0" || !params[:f]))}
= link_to project_issues_path(@project, :f => 0, :milestone_id => params[:milestone_id]) do
@ -32,9 +32,10 @@
= link_to project_issues_path(@project, :f => 1, :milestone_id => params[:milestone_id]) do
All
.span4.right
.span6.right
= form_tag project_issues_path(@project), :method => :get, :class => :right do
= select_tag(:milestone_id, options_from_collection_for_select(@project.milestones.order("id desc").all, "id", "title", params[:milestone_id]), :prompt => "Select milestone")
= select_tag(:assignee_id, options_from_collection_for_select(@project.users.all, "id", "name", params[:assignee_id]), :prompt => "Assignee")
= select_tag(:milestone_id, options_from_collection_for_select(@project.milestones.order("id desc").all, "id", "title", params[:milestone_id]), :prompt => "Milestone")
= hidden_field_tag :f, params[:f]
%ul#issues-table.unstyled
@ -44,8 +45,9 @@
$(function(){
initIssuesSearch();
setSortable();
$("#assignee_id").chosen();
$("#milestone_id").chosen();
$("#milestone_id").live("change", function(){
$("#milestone_id, #assignee_id").live("change", function(){
$(this).closest("form").submit();
});
})