diff options
Diffstat (limited to 'rt/share/html/RTx/Statistics/Elements')
11 files changed, 0 insertions, 853 deletions
diff --git a/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/Header b/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/Header deleted file mode 100644 index cecb02eee..000000000 --- a/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/Header +++ /dev/null @@ -1,126 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<%ARGS> -@Format => undef -$FormatString => undef -$AllowSorting => undef -$Order=>undef -$BaseURL => undef -$Query => undef -$Rows => undef -$Page => undef -$maxitems => undef -</%ARGS> -<TR class="collection-as-table"> -<%perl> - -my %generic_query_args = ( Query => $Query, Rows => $Rows, Page => $Page, Format => $FormatString ); - -my $item = 0; -foreach my $col (@Format) { - $item++; - if ( $col->{title} eq 'NEWLINE' ) { - while ( $item < $maxitems ) { - $m->out(qq{<th class="collection-as-table"> </th>\n}); - $item++; - } - - $item = 0; - $m->out(qq{</TR>\n<TR class="collection-as-table">}); - } - else { - $m->out('<TH class="collection-as-table" '); - $m->out( 'align="' . $col->{align} . '"' ) if ( $col->{align} ); - $m->out( 'style="' . $col->{style} . '"' ) if ( $col->{style} ); - $m->out('>'); - my $title = $col->{title}; - $title =~ s/^__(.*)__$/$1/o; - $title = ( - $m->comp( - '/RTx/Statistics/Elements/StatColumnMap', - Name => $title, - Attr => 'title' - ) - || $title - ); - if ( - $AllowSorting - && $col->{'attribute'} - && $m->comp( - '/RTx/Statistics/Elements/StatColumnMap', - Name => $col->{'attribute'}, - Attr => 'attribute' - ) - ) - { - - $m->out( - '<a href="' . $BaseURL - . $m->comp( - '/Elements/QueryString', - %generic_query_args, - OrderBy => ( - $m->comp( - '/RTx/Statistics/Elements/StatColumnMap', - Name => $col->{'attribute'}, - Attr => 'attribute' - ) - || $col->{'attribute'} - ), - Order => ( $ARGS{'Order'} eq 'ASC' ? 'DESC' : 'ASC' ) - ) - . '">' - . loc($title) . '</a>' - ); - } - else { - $m->out( loc($title) ); - } - $m->out('</TH>'); - } -} -</%perl> -</TR> diff --git a/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/ParseFormat b/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/ParseFormat deleted file mode 100644 index a482f817e..000000000 --- a/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/ParseFormat +++ /dev/null @@ -1,109 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<%ARGS> -$Format -</%ARGS> - -<%init> -use Regexp::Common; -my @Columns; - -while ($Format =~ /($RE{delimited}{-delim=>qq{\'"}}|[{}\w.]+)/go) { - my $col = $1; - - if ($col =~ /^$RE{quoted}$/o) { - substr($col,0,1) = ""; - substr($col,-1,1) = ""; - } - - my $colref; - - # kfh at mqsoftware.com added this to be able - # to create columns where the actual heading and value - # aren't know ahead of time. For instance queue names. - # it will work with subcols, but all subcols will have the same KEY - if ( $col =~ s!/KEY:([^/]+)!!io ) { - $colref->{'keyname'} = $1; - } - if ( $col =~ s!/STYLE:([^/]+)!!io ) { - $colref->{'style'} = $1; - } - if ( $col =~ s!/CLASS:([^/]+)!!io ) { - $colref->{'class'} = $1; - } - if ( $col =~ s!/TITLE:([^/]+)!!io ) { - $colref->{'title'} = $1; - } - if ( $col =~ s!/ALIGN:([^\/]+)!!io ) { - $colref->{'align'} = $1; - } - if ( $col =~ /__(.*?)__/gio ) { - my @subcols; - while ( $col =~ s/^(.*?)__(.*?)__//o ) { - push ( @subcols, $1 ) if ($1); - push ( @subcols, "__$2__" ); - $colref->{'attribute'} = $2; - } - push ( @subcols, $col ); - @{ $colref->{'output'} } = @subcols; - } - else { - @{ $colref->{'output'} } = ( "__" . $col . "__" ); - $colref->{'attribute'} = $col; - } - - if ( !$colref->{'title'} && grep { /^__(.*?)__$/io } - @{ $colref->{'output'} } ) - { - $colref->{'title'} = $1; - $colref->{'attribute'} = $1; - } - - - push @Columns, $colref; -} - return(@Columns); -</%init> diff --git a/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/Row b/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/Row deleted file mode 100644 index bcfabe5c3..000000000 --- a/rt/share/html/RTx/Statistics/Elements/CollectionAsTable/Row +++ /dev/null @@ -1,112 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<%ARGS> -$i => undef -@Format => undef -$record => undef -$maxitems => undef -$Depth => undef -$Warning => undef -</%ARGS> - -<%PERL> -$m->out('<TR class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); -my $item; -foreach my $column (@Format) { - if ( $column->{title} eq 'NEWLINE' ) { - while ( $item < $maxitems ) { - $m->out(qq{<td class="collection-as-table"> </td>\n}); - $item++; - } - $item = 0; - $m->out('</TR>'); - $m->out('<TR class="' - . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) - . '" >' ); - next; - } - $item++; - $m->out('<td class="collection-as-table" '); - $m->out( 'align="' . $column->{align} . '"' ) if ( $column->{align} ); - $m->out( 'style="' . $column->{style} . '"' ) if ( $column->{style} ); - $m->out('>'); - foreach my $subcol ( @{ $column->{output} } ) { - if ( $subcol =~ /^__(.*?)__$/o ) { - my $col = $1; - my $value = $m->comp( - '/RTx/Statistics/Elements/StatColumnMap', - Name => $col, - Attr => 'value' - ); - my @out; - - if ( $value && ref($value) ) { - - # All HTML snippets are returned by the callback function - # as scalar references. Data fetched from the objects are - # plain scalars, and needs to be escaped properly. - @out = - map { - ref($_) ? $$_ : $m->interp->apply_escapes( $_ => 'h' ) - } &{$value}( $record, $i, $column->{keyname} ); - ; - } - else { - - # Simple value; just escape it. - @out = $m->interp->apply_escapes( $value => 'h' ); - } - s/\n/<br>/gs for @out; - $m->out( @out ); - } - else { - $m->out($subcol); - } - } - $m->out('</td>'); -} -$m->out('</TR>'); -</%PERL> diff --git a/rt/share/html/RTx/Statistics/Elements/ControlsAsTable/ControlBox b/rt/share/html/RTx/Statistics/Elements/ControlsAsTable/ControlBox deleted file mode 100644 index e2b5c1430..000000000 --- a/rt/share/html/RTx/Statistics/Elements/ControlsAsTable/ControlBox +++ /dev/null @@ -1,89 +0,0 @@ -<TD VALIGN="top"> - -<&/Widgets/TitleBoxStart, title => $Title, &> - - <table border="0" cellpadding="1" cellspacing="0"> -% if (defined $ShowStatus) { - <tr> - <td class="collection-as-table" style="text-align:left;">Show Status:</td> - <td COLSPAN=3 class="collection-as-table" style="text-align:left;"> - <& /Elements/SelectStatus, Name=>"status", Default => $Status, DefaultValue => undef &> - </td> - </tr> -% } -% if (defined $ShowSingleQueue) { - <tr> - <td class="collection-as-table" style="text-align:left;">Show Queue:</td> - <td COLSPAN=3 class="collection-as-table" style="text-align:left;"> - <& /Elements/SelectQueue, Name=>"Queue", Default=>$Queue ,ShowNullOption=>0, - CheckQueueRight=>'SeeQueue' &> - </td> - </tr> -% } -% if (defined $ShowDates) { - <tr> - <& /RTx/Statistics/Elements/DateSelectRow, Label => "Start Date:", - refMonth => $sMonth, nameMonth => "sMonth", - refDay => $sDay, nameDay => "sDay", - refYear => $sYear, nameYear => "sYear" &> - </tr> - <tr> - <& /RTx/Statistics/Elements/DateSelectRow, Label => "End Date:", - refMonth => $eMonth, nameMonth => "eMonth", - refDay => $eDay, nameDay => "eDay", - refYear => $eYear, nameYear => "eYear" &> - </tr> - <tr> - <td class="collection-as-table" style="text-align:left;">Show Weekends:</td> - <td class="collection-as-table" style="text-align:left;"> - <select name=weekends> - <option value=0 <% (!$weekends) && 'selected' %> >No</option> - <option value=1 <% $weekends && 'selected' %> >Yes</option> - </select> - </td> - </tr> -% } -% if (defined $ShowMultiQueues) { - <tr> -% if (defined $ShowDates) { -%# If we're showing the dates, we put these side by side. - <td COLSPAN=2 class="collection-as-table" style="text-align:left;">Select All Queues: <input type=checkbox name="AddAllCheck"></td> - <td COLSPAN=3 class="collection-as-table" > - <& /RTx/Statistics/Elements/SelectMultiQueue, Name=>"queues", Selected=>$queues_ref, - ShowNullOption=>0, CheckQueueRight=>'SeeQueue', Size => 10, NamedValues => 1 &> - </td> -% } else { - <td COLSPAN=3 class="collection-as-table" style="text-align:left;"> - <& /RTx/Statistics/Elements/SelectMultiQueue, Name=>"queues", Selected=>$queues_ref, - ShowNullOption=>0, CheckQueueRight=>'SeeQueue', Size => 10, NamedValues => 1 &> - </td> - </tr> - <tr> - <td class="collection-as-table" style="text-align:left;">Select All Queues: <input type=checkbox name="AddAllCheck"></td> -% } - </tr> -% } - <& /RTx/Statistics/Elements/ControlsAsTable/UpdatePage &> - </table> - -<&/Widgets/TitleBoxEnd&> - -</TD></TR></TABLE> -<%args> -$Title => undef -$ShowMultiQueues => undef -$queues_ref => undef -$ShowDates => undef -$sMonth => undef -$sDay => undef -$sYear => undef -$eMonth => undef -$eDay => undef -$eYear => undef -$weekends => undef -$ShowSingleQueue => undef -$Queue => undef -$ShowStatus => undef -$Status => undef -</%args> - diff --git a/rt/share/html/RTx/Statistics/Elements/ControlsAsTable/UpdatePage b/rt/share/html/RTx/Statistics/Elements/ControlsAsTable/UpdatePage deleted file mode 100644 index dc173d444..000000000 --- a/rt/share/html/RTx/Statistics/Elements/ControlsAsTable/UpdatePage +++ /dev/null @@ -1,5 +0,0 @@ -<tr> - <td colspan="4" style="text-align:center;padding-top:3px;"> - <INPUT TYPE="submit" VALUE="<&|/l&>Update Page</&>"> - </td> -</tr> diff --git a/rt/share/html/RTx/Statistics/Elements/DateSelectRow b/rt/share/html/RTx/Statistics/Elements/DateSelectRow deleted file mode 100644 index 325e168c9..000000000 --- a/rt/share/html/RTx/Statistics/Elements/DateSelectRow +++ /dev/null @@ -1,55 +0,0 @@ - <td class="collection-as-table" style="text-align:left;"><% $Label %></td> - <td class="collection-as-table" style="text-align:left;"> - <select name=<% $nameMonth %> > -% for ($n=0;$n<=$#Statistics::months;$n++){ -% if ($$refMonth eq $n){ -% $selected ="selected"; -% }else { -% $selected =""; -% } - <option value=<% $n %> <% $selected %> ><% $Statistics::months[$n] %></option> -%} - </select> - </td> - <td class="collection-as-table" style="text-align:left;"> - <select name=<% $nameDay %> > -% for ($n=1;$n<=31;$n++){ -% if ($$refDay == $n ){ -% $selected ="selected"; -% }else { -% $selected =""; -% } - <option value=<% $n %> <% $selected %> ><% $n %></option> -% } - </select> - </td> - <td class="collection-as-table" style="text-align:left;"> - <select name=<% $nameYear %> > -% -% for ($n=0;$n <= scalar @Statistics::years-1;$n++){ -% if ($Statistics::years[$n] == $$refYear){ -% $selected ="selected"; -% }else{ -% $selected =""; -% } - <option value=<% $Statistics::years[$n] %> <% $selected %> ><% $Statistics::years[$n] %></option> -% } - </select> - </td> - - -<%args> -$Label => undef -$refMonth => undef -$nameMonth => undef -$refDay => undef -$nameDay => undef -$refYear => undef -$nameYear => undef -</%args> -<%init> -use RTx::Statistics; -my $n; -my $selected; - -</%init> diff --git a/rt/share/html/RTx/Statistics/Elements/DurationAsString b/rt/share/html/RTx/Statistics/Elements/DurationAsString deleted file mode 100755 index c0b4d9af4..000000000 --- a/rt/share/html/RTx/Statistics/Elements/DurationAsString +++ /dev/null @@ -1,18 +0,0 @@ -<%$days|'00'%> days <%$hours|'00'%>:<%$minutes|'00'%> -<%INIT> - -my $MINUTE = 60; -my $HOUR = $MINUTE*60; -my $DAY = $HOUR * 24; -my $WEEK = $DAY * 7; -my $days = int($Duration / $DAY); -$Duration = $Duration % $DAY; -my $hours = int($Duration / $HOUR); -$hours = sprintf("%02d", $hours); -$Duration = $Duration % $HOUR; -my $minutes = int($Duration/$MINUTE); -$minutes = sprintf("%02d", $minutes); -</%INIT> -<%ARGS> -$Duration => undef -</%ARGS> diff --git a/rt/share/html/RTx/Statistics/Elements/GraphBox b/rt/share/html/RTx/Statistics/Elements/GraphBox deleted file mode 100644 index 14c502a9d..000000000 --- a/rt/share/html/RTx/Statistics/Elements/GraphBox +++ /dev/null @@ -1,13 +0,0 @@ -<TABLE><TR><TD VALIGN="top"> - -<&/Widgets/TitleBoxStart, - title => 'Download Chart as Image', - title_href => $GraphURL -&> -<img src="<% $GraphURL %>" ALT="Result Graph" > -<&/Widgets/TitleBoxEnd&> - -</TD> -<%args> -$GraphURL => undef -</%args> diff --git a/rt/share/html/RTx/Statistics/Elements/SelectMultiQueue b/rt/share/html/RTx/Statistics/Elements/SelectMultiQueue deleted file mode 100755 index 637f6dc80..000000000 --- a/rt/share/html/RTx/Statistics/Elements/SelectMultiQueue +++ /dev/null @@ -1,81 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<SELECT NAME ="<%$Name%>" multiple size="<% $Size %>"> -% if ($ShowNullOption) { -<OPTION VALUE="">-</OPTION> -% } -% while (my $queue=$q->Next) { -% if ($ShowAllQueues || $queue->CurrentUserHasRight($CheckQueueRight)) { -% my $targ="," . $queue->Name . ","; -<OPTION VALUE="<%($NamedValues ? $queue->Name : $queue->Id) %>" <%( ($sel_list =~ m/$targ/) ? 'SELECTED' : '')%>><%$queue->Name%> -% if (($Verbose) and ($queue->Description) ){ -(<%$queue->Description%>) -% } -</OPTION> -% } -% } -</SELECT> -<%ARGS> -$CheckQueueRight => 'CreateTicket' -$ShowNullOption => 1 -$ShowAllQueues => 1 -$Name => undef -$Verbose => undef -$NamedValues => 0 -$Selected => undef # ref to array containing selected queue names -$Lite => 0 -$Size => 5 -</%ARGS> - -<%INIT> - -# put list of queue names into string, starting and ending with commas -my $sel_list = "," . join(",", @$Selected) . ","; - -my $q=new RT::Queues($session{'CurrentUser'}); -$q->UnLimit; - -</%INIT> diff --git a/rt/share/html/RTx/Statistics/Elements/StatColumnMap b/rt/share/html/RTx/Statistics/Elements/StatColumnMap deleted file mode 100644 index aef9e2f3e..000000000 --- a/rt/share/html/RTx/Statistics/Elements/StatColumnMap +++ /dev/null @@ -1,173 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<%ARGS> -$Name => undef -$Attr => undef -</%ARGS> - - -<%ONCE> -our ( $STAT_COLUMN_MAP ); - -sub StatColumnMap { - my $name = shift; - my $attr = shift; - - # First deal with the simple things from the map - if ( $STAT_COLUMN_MAP->{$name} ) { - return ( $STAT_COLUMN_MAP->{$name}->{$attr} ); - } - - # now, let's deal with harder things, like Custom Fields - - elsif ( $name =~ /^(?:CF|CustomField)\.\{(.+)\}$/ ) { - my $field = $1; - - if ( $attr eq 'attribute' ) { - return (undef); - } - elsif ( $attr eq 'title' ) { - return ( $field ); - } - elsif ( $attr eq 'value' ) { - # Display custom field contents, separated by newlines. - # For Image custom fields we also show a thumbnail here. - return sub { - my $values = $_[0]->CustomFieldValues($field); - return map { - ( - ($_->CustomFieldObj->Type eq 'Image') - ? \($m->scomp( '/Elements/ShowCustomFieldImage', Object => $_ )) - : $_->Content - ), - \'<br>', - } @{ $values->ItemsArrayRef } - }; - } - } -} - -sub LinkCallback { - my $method = shift; - - my $mode = $RT::Ticket::LINKTYPEMAP{$method}{Mode}; - my $type = $RT::Ticket::LINKTYPEMAP{$method}{Type}; - my $mode_uri = $mode.'URI'; - my $local_type = 'Local'.$mode; - - return sub { - map { - \'<A HREF="', - $_->$mode_uri->Resolver->HREF, - \'">', - ( $_->$mode_uri->IsLocal ? $_->$local_type : $_->$mode ), - \'</A><BR>', - } @{ $_[0]->Links($mode,$type)->ItemsArrayRef } - } -} - -$STAT_COLUMN_MAP = { - LastUpdated => { - attribute => 'LastUpdated', - title => 'Last Updated', - value => sub { return $_[0]->LastUpdatedObj->AsString } - }, - - Statistics_Date => { - title => 'Date', - value => sub { return $_[0]{values}{Statistics_Date} } - }, - - Statistics_Created_Count => { - title => 'Created', - value => sub { return $_[0]{values}{Statistics_Created_Count} } - }, - - Statistics_Resolved_Count => { - title => 'Resolved', - value => sub { return $_[0]{values}{Statistics_Resolved_Count} } - }, - - Statistics_Deleted_Count => { - title => 'Deleted', - value => sub { return $_[0]{values}{Statistics_Deleted_Count} } - }, - - Statistics_Totals => { - title => 'Totals', - value => sub { return $_[0]{values}{Statistics_Totals} } - }, - - Statistics_Status => { - title => 'Status', - value => sub { return $_[0]{values}{Statistics_Status} } - }, - - Statistics_Dynamic => { - # Depends on having a KEY as second param - value => sub { - my $record = shift; - my $line = shift; - my $key = shift; - return $$record{values}{$key} - } - }, - - # Everything from LINKTYPEMAP - (map { - $_ => { value => LinkCallback( $_ ) } - } keys %RT::Ticket::LINKTYPEMAP), - - '_CLASS' => { - value => sub { return $_[1] % 2 ? 'oddline' : 'evenline' } - }, - -}; -</%ONCE> -<%init> -$m->comp( '/Elements/Callback', STAT_COLUMN_MAP => $STAT_COLUMN_MAP, _CallbackName => 'StatColumnMap'); -return StatColumnMap($Name, $Attr); -</%init> diff --git a/rt/share/html/RTx/Statistics/Elements/Tabs b/rt/share/html/RTx/Statistics/Elements/Tabs deleted file mode 100755 index 4fde113ea..000000000 --- a/rt/share/html/RTx/Statistics/Elements/Tabs +++ /dev/null @@ -1,72 +0,0 @@ -%# BEGIN LICENSE BLOCK -%# -%# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com> -%# -%# (Except where explictly superceded by other copyright notices) -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# Unless otherwise specified, all modifications, corrections or -%# extensions to this work which alter its source code become the -%# property of Best Practical Solutions, LLC when submitted for -%# inclusion in the work. -%# -%# -%# END LICENSE BLOCK -<& /Elements/Tabs, - tabs => $tabs, - current_toptab => 'RTx/Statistics/index.html', - current_tab => $current_tab, - Title => $Title &> - -<%INIT> - my $tabs = { A => { title => loc('Tickets per Day'), - path => 'RTx/Statistics/CallsQueueDay/index.html', - }, - B => { title => loc('Tickets by status'), - path => 'RTx/Statistics/OpenStalled/index.html', - }, - C => { title => loc('Multiple Queues'), - path => 'RTx/Statistics/CallsMultiQueue/index.html', - }, - D => { title => loc('Ticket Trends by Day'), - path => 'RTx/Statistics/DayOfWeek/index.html', - }, - E => { 'title' => loc('Time to Resolve'), - path => 'RTx/Statistics/Resolution/index.html', - }, - F => { 'title' => loc('Resolve Time Graph'), - path => 'RTx/Statistics/TimeToResolve/index.html', - }, - Z => { 'title' => loc('FAQ'), - path => 'RTx/Statistics/FAQ/index.html', - }, - }; - - # Now let callbacks add their extra tabs - $m->comp('/Elements/Callback', tabs => $tabs, %ARGS); - - foreach my $tab (sort keys %{$tabs}) { - if ($tabs->{$tab}->{'path'} eq $current_tab) { - $tabs->{$tab}->{"subtabs"} = $subtabs; - $tabs->{$tab}->{"current_subtab"} = $current_subtab; - } - } - -</%INIT> - - -<%ARGS> -$subtabs => undef -$current_tab => undef -$current_subtab => undef -$Title => undef -</%ARGS> |