[Rt-commit] r9938 - rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements

ruz at bestpractical.com ruz at bestpractical.com
Thu Dec 13 21:40:35 EST 2007


Author: ruz
Date: Thu Dec 13 21:40:35 2007
New Revision: 9938

Added:
   rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/AttachReports
Modified:
   rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/UpdateData

Log:
* add /RTIR/Elements/AttachReports

Added: rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/AttachReports
==============================================================================
--- (empty file)
+++ rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/AttachReports	Thu Dec 13 21:40:35 2007
@@ -0,0 +1,44 @@
+<&| /Widgets/TitleBox, title => loc("Attach Reports") &>
+<& /Elements/TicketList,
+    Collection     => $siblings,
+    DisplayFormat  => "__CheckBox.{$Name}__, $Format",
+    Format         => $Format,
+    ShowHeader     => 1,
+    ShowNavigation => 0,
+&>
+</&>
+<%ARGS>
+$Ticket => undef
+$Name   => 'AttachTickets'
+</%ARGS>
+<%INIT>
+return unless $Ticket;
+
+my @parents;
+my $type = RT::IR::TicketType( Ticket => $Ticket );
+if ( $type eq 'Incident' ) {
+    push @parents, $Ticket->id;
+} else {
+    my $tickets = RT::Tickets->new( $Ticket->CurrentUser );
+    $tickets->FromSQL( "Queue = 'Incidents' AND HasMember = ". $Ticket->id );
+    while ( my $parent = $tickets->Next ) {
+        push @parents, $parent->id;
+    }
+}
+return unless @parents;
+
+my $siblings = RT::Tickets->new( $Ticket->CurrentUser );
+my $query = "Queue = 'Incident Reports'"
+    ." AND (". join( ' OR ', map "MemberOf = $_", @parents ) . ")";
+$query .= " AND id != ". $Ticket->id if $type eq 'Report';
+$siblings->FromSQL( $query );
+$siblings->_DoSearch;
+return unless $siblings->Count;
+
+my $Format = q{
+    '<b><a HREF="__WebPath__/Ticket/Display.html?id=__id__">__id__</a></b>/TITLE:#',
+    '<b><a href="__WebPath__/Ticket/Display.html?id=__id__">__Subject__</a></b>/TITLE:Subject',
+    '__CustomField.{_RTIR_State}__/TITLE:State',
+    __LastUpdatedRelative__, __CreatedRelative__
+};
+</%INIT>

Modified: rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/UpdateData
==============================================================================
--- rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/UpdateData	(original)
+++ rtir/branches/2.3-EXPERIMENTAL/html/RTIR/Elements/UpdateData	Thu Dec 13 21:40:35 2007
@@ -29,17 +29,8 @@
 
 <tr><td colspan="2"><& /RTIR/Create.html:AttachmentsForm &></td></tr>
 
-% if ( $siblings ) {
-<tr><td colspan="2">
-<&| /Widgets/TitleBox, title => loc("Attach Reports") &>
-<& /Elements/TicketList,
-    Collection     => $siblings,
-    DisplayFormat  => "__CheckBox.{AttachTickets}__, $Format",
-    Format         => $Format,
-    ShowHeader     => 1,
-    ShowNavigation => 0,
-&>
-</&></td></tr>
+% if ( $Ticket ) {
+<tr><td colspan="2"><& /RTIR/Elements/AttachReports, Ticket => $Ticket &></td></tr>
 % }
 
 % if ( $GnuPGWidget ) {
@@ -67,39 +58,3 @@
 $UpdateBcc => ''
 $GnuPGWidget => undef
 </%ARGS>
-<%INIT>
-
-my $siblings;
-if ( $Ticket ) {
-    my @parents;
-    my $type = RT::IR::TicketType( Ticket => $Ticket );
-    if ( $type eq 'Incident' ) {
-        push @parents, $Ticket->id;
-    } else {
-        my $tickets = RT::Tickets->new( $Ticket->CurrentUser );
-        $tickets->FromSQL( "Queue = 'Incidents' AND HasMember = ". $Ticket->id );
-        while ( my $parent = $tickets->Next ) {
-            push @parents, $parent->id;
-        }
-    }
-
-    if ( @parents ) {
-        $siblings = RT::Tickets->new( $Ticket->CurrentUser );
-        my $siblings_query = "Queue = 'Incident Reports'"
-            ." AND (". join( ' OR ', map "MemberOf = $_", @parents ) . ")";
-
-        if ( $type eq 'Report' ) {
-            $siblings_query .= " AND id != ". $Ticket->id;
-        }
-
-        $siblings->FromSQL( $siblings_query );
-    }
-}
-
-my $Format = q{
-    '<b><a HREF="__WebPath__/Ticket/Display.html?id=__id__">__id__</a></b>/TITLE:#',
-    '<b><a href="__WebPath__/Ticket/Display.html?id=__id__">__Subject__</a></b>/TITLE:Subject',
-    '__CustomField.{_RTIR_State}__/TITLE:State',
-    __LastUpdatedRelative__, __CreatedRelative__
-};
-</%INIT>


More information about the Rt-commit mailing list