<%doc> When the user tries to change a ticket's status to "resolved" through the Update interface, check mandatory fields. If they aren't all set, redirect to Ticket Basics instead of updating. Note that this will lose any comments/time/other information the user has entered. <%init> my $oldStatus = $TicketObj->Status(); my $newStatus = $ARGSRef->{'Status'} || $ARGSRef->{'DefaultStatus'} || ''; if( $oldStatus ne 'resolved' and $newStatus eq 'resolved' and $m->comp('/Ticket/Elements/CheckMandatoryFields', Ticket => $TicketObj ) ) { $m->clear_buffer; RT::Interface::Web::Redirect( RT->Config->Get('WebURL')."Ticket/Modify.html?id=".$TicketObj->Id."&resolve=1" ); $m->abort; } <%args> $ARGSRef => {} $checks_failure => undef $results => [] $TicketObj => undef