<& /Elements/Header, Title => 'Time to Resolve in Queue' &> <& /RTx/Statistics/Elements/Tabs, Title => 'Time to Resolve, by ticket in Queue:' . $QueueObj->Name() &>
See Queue:
<& /Elements/SelectQueue, Name=>"queue", Default => "$queue" &>

% my $url = 'Elements/Chart?x_labels='; % my $i; % $url .= join ",", (map {(int($_/2) == $_/2 && (++$i)%2) ? $_/2 : ""} grep {$counts[$_]} 0..($#counts-1)), "longer"; % $url .= '&'; % $url .= "marker_size=1&"; % $url .= "data1=".(join ",", map { $_ || () } @counts)."&"; % chop $url;
<%ARGS> $queue => $Statistics::TimeToResolveGraphQueue; <%INIT> use RTx::Statistics; my @days = qw(Sun Mon Tue Wed Thu Fri Sat); my $n = 0; my @data = ([]); my @msgs; my @counts; my $QueueObj = new RT::Queue($session{'CurrentUser'}); $QueueObj->Load($queue); my $tix = new RT::Tickets($session{'CurrentUser'}); $tix->LimitQueue (VALUE => $queue) if $queue; $tix->LimitStatus(VALUE => "resolved"); $tix->UnLimit; if ($tix->Count) { while (my $t = $tix->RT::SearchBuilder::Next) { # BLOODY HACK my $when = $t->ResolvedObj->Unix - $t->CreatedObj->Unix; next unless $when > 0; # Doubly bloody hack my $max = (60*60*24*2) / 1800; my $x = int($when / 1800); $counts[$x > $max ? $max : $x]++; } }