[Rt-commit] rt branch, 4.0/queue-summary, created. rt-4.0.0rc4-23-g7065397
Alex Vandiver
alexmv at bestpractical.com
Wed Jan 26 19:00:26 EST 2011
The branch, 4.0/queue-summary has been created
at 7065397bad7c3d9b9d963ec5899570d41a4070b6 (commit)
- Log -----------------------------------------------------------------
commit 7065397bad7c3d9b9d963ec5899570d41a4070b6
Author: Alex Vandiver <alexmv at bestpractical.com>
Date: Wed Jan 26 18:59:26 2011 -0500
Unify code between QueueSummaryByStatus and QueueSummaryByLifecycle
diff --git a/share/html/Elements/QueueSummaryByStatus b/share/html/Elements/QueueSummaryByStatus
index af6fc66..1c01542 100644
--- a/share/html/Elements/QueueSummaryByStatus
+++ b/share/html/Elements/QueueSummaryByStatus
@@ -66,8 +66,8 @@ for my $queue (@queues) {
</%PERL>
<tr class="<% $i%2 ? 'oddline' : 'evenline'%>" >
-<td><a href="<% RT->Config->Get('WebPath') %>/Search/Results.html?Query=<% $all_q |u,n %>"
- title="<% $queue->{Description} %>"><% $queue->{Name} %></a>
+<td>
+ <a href="<% RT->Config->Get('WebPath') %>/Search/Results.html?Query=<% $all_q |u,n %>" title="<% $queue->{Description} %>"><% $queue->{Name} %></a>
</td>
<%perl>
@@ -75,7 +75,7 @@ for my $queue (@queues) {
if ( $lifecycle->IsValid( $status ) ) {
</%perl>
<td align="right">
- <a href="<% RT->Config->Get('WebPath') %>/Search/Results.html?Query=<% $queue_cond ."Status = '$status'" |u,n %>"><% $data->{$queue->{id}}->{$status} || '-'%></a>
+ <a href="<% RT->Config->Get('WebPath') %>/Search/Results.html?Query=<% $queue_cond ."Status = '$status'" |u,n %>"><% $data->{$queue->{id}}->{$status } || '-' %></a>
</td>
% } else {
<td align="right">-</td>
@@ -85,39 +85,22 @@ for my $queue (@queues) {
% }
</table>
<%INIT>
-my $data = {};
-my $statuses = {};
-use RT::Report::Tickets;
-my $report = RT::Report::Tickets->new( RT->SystemUser );
-$report->SetupGroupings( Query => 'id > 0', GroupBy => [qw(Status Queue)] );
-
-while ( my $entry = $report->Next ) {
- $data->{ $entry->__Value("Queue") }->{ $entry->__Value("Status") }
- = $entry->__Value('id');
- $statuses->{ $entry->__Value("Status") } = 1;
-}
-
-my @queues;
my $Queues = RT::Queues->new( $session{'CurrentUser'} );
$Queues->UnLimit();
- at queues = @{ $Queues->ItemsArrayRef };
-
-if ($queue_filter) {
- @queues = grep { $queue_filter->($_) } @queues;
-}
+$m->callback( CallbackName => 'SQLFilter', Queues => $Queues );
+my @queues = grep $queue_filter->($_), @{ $Queues->ItemsArrayRef };
$m->callback( CallbackName => 'Filter', Queues => \@queues );
@queues = map {
{ id => $_->Id,
Name => $_->Name,
- Description => $_->Description,
+ Description => $_->Description || '',
Lifecycle => $_->Lifecycle->Name,
}
} grep $_, @queues;
-
my %lifecycle;
for my $queue (@queues) {
@@ -127,13 +110,28 @@ for my $queue (@queues) {
unless (@statuses) {
my %seen;
- foreach my $set ( 'Initial', 'Active' ) {
+ foreach my $set ( 'initial', 'active' ) {
foreach my $lifecycle ( map $lifecycle{$_}, sort keys %lifecycle ) {
- push @statuses, grep !$seen{ lc $_ }++, $lifecycle->$set();
+ push @statuses, grep !$seen{ lc $_ }++, $lifecycle->Valid($set);
}
}
}
+my $data = {};
+my $statuses = {};
+
+use RT::Report::Tickets;
+my $report = RT::Report::Tickets->new( RT->SystemUser );
+my $query = @queues
+ ? join(' OR ', map "Queue = ".$_->{id}, @queues)
+ : 'id < 0';
+$report->SetupGroupings( Query => $query, GroupBy => [qw(Status Queue)] );
+
+while ( my $entry = $report->Next ) {
+ $data->{ $entry->__Value("Queue") }->{ $entry->__Value("Status") }
+ = $entry->__Value('id');
+ $statuses->{ $entry->__Value("Status") } = 1;
+}
</%INIT>
<%ARGS>
$queue_filter => undef
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list