X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Flib%2FRT%2FScrip_Overlay.pm;h=79499fc824b35a518fec6144bf56d78af79b4165;hb=b8cfd0780aa40bb07f3215bf9cb58011f5e32a35;hp=06462a9acecdc02ea5ff23a2e2063326343cacb2;hpb=945721f48f74d5cfffef7c7cf3a3d6bc2521f5dd;p=freeside.git diff --git a/rt/lib/RT/Scrip_Overlay.pm b/rt/lib/RT/Scrip_Overlay.pm index 06462a9ac..79499fc82 100644 --- a/rt/lib/RT/Scrip_Overlay.pm +++ b/rt/lib/RT/Scrip_Overlay.pm @@ -142,19 +142,24 @@ sub Create { require RT::ScripAction; my $action = new RT::ScripAction( $self->CurrentUser ); - $action->Load( $args{'ScripAction'} || '0' ); + if ($args{'ScripAction'}) { + $action->Load( $args{'ScripAction'}); + } return ( 0, $self->loc( "Action [_1] not found", $args{'ScripAction'} ) ) unless $action->Id; require RT::Template; my $template = new RT::Template( $self->CurrentUser ); - $template->Load( $args{'Template'}||'0' ); + if ($args{'Template'} ) { + $template->Load( $args{'Template'}); + } return ( 0, $self->loc('Template not found') ) unless $template->Id; require RT::ScripCondition; my $condition = new RT::ScripCondition( $self->CurrentUser ); - $condition->Load( $args{'ScripCondition'}||'0' ); - + if ($args{'ScripCondition'} ) { + $condition->Load( $args{'ScripCondition'} ); + } unless ( $condition->Id ) { return ( 0, $self->loc('Condition not found') ); } @@ -238,7 +243,7 @@ sub ActionObj { $self->{'ScripActionObj'} = RT::ScripAction->new($self->CurrentUser); #TODO: why are we loading Actions with templates like this. - # two seperate methods might make more sense + # two separate methods might make more sense $self->{'ScripActionObj'}->Load($self->ScripAction, $self->Template); } return ($self->{'ScripActionObj'}); @@ -256,13 +261,16 @@ Retuns an RT::ScripCondition object with this Scrip's IsApplicable sub ConditionObj { my $self = shift; - - unless (defined $self->{'ScripConditionObj'}) { - require RT::ScripCondition; - $self->{'ScripConditionObj'} = RT::ScripCondition->new($self->CurrentUser); - $self->{'ScripConditionObj'}->Load($self->ScripCondition); + + unless ( defined $self->{'ScripConditionObj'} ) { + require RT::ScripCondition; + $self->{'ScripConditionObj'} = + RT::ScripCondition->new( $self->CurrentUser ); + if ( $self->ScripCondition ) { + $self->{'ScripConditionObj'}->Load( $self->ScripCondition ); + } } - return ($self->{'ScripConditionObj'}); + return ( $self->{'ScripConditionObj'} ); } # }}}