diff options
Diffstat (limited to 'rt/html/Admin/Elements/EditScrip')
-rw-r--r-- | rt/html/Admin/Elements/EditScrip | 242 |
1 files changed, 128 insertions, 114 deletions
diff --git a/rt/html/Admin/Elements/EditScrip b/rt/html/Admin/Elements/EditScrip index edf949ba3..907ae9a92 100644 --- a/rt/html/Admin/Elements/EditScrip +++ b/rt/html/Admin/Elements/EditScrip @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# 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., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -46,95 +44,150 @@ %# %# END BPS TAGGED BLOCK }}} <& /Elements/ListActions, actions => \@actions &> - -<form method="post" action="Scrip.html"> -<input type="hidden" class="hidden" name="id" value="<% $id %>" /> -<input type="hidden" class="hidden" name="Queue" value="<% $Queue %>" /> - -<&| /Widgets/TitleBox, title => loc('Scrip Fields') &> -<table> - -<tr><td align="right"><&|/l&>Description</&>:</td><td> -<input name="Scrip-<% $id %>-Description" value="<% $ARGS{"Scrip-$id-Description"} || $scrip->Description %>" /> -</td></tr> - -<tr><td align="right"><&|/l&>Condition</&>:</td><td> -<& /Admin/Elements/SelectScripCondition, - Name => "Scrip-$id-ScripCondition", - Default => $ARGS{"Scrip-$id-ScripCondition"} || $scrip->ConditionObj->Id, -&></td></tr> - -<tr><td align="right"><&|/l&>Action</&>:</td><td> -<& /Admin/Elements/SelectScripAction, - Name => "Scrip-$id-ScripAction", - Default => $ARGS{"Scrip-$id-ScripAction"} || $scrip->ActionObj->Id, -&></td></tr> - -<tr><td align="right"><&|/l&>Template</&>:</td><td> -<& /Admin/Elements/SelectTemplate, - Name => "Scrip-$id-Template", - Default => $ARGS{"Scrip-$id-Template"} || $scrip->TemplateObj->Id, - Queue => $Queue, -&></td></tr> - -<tr><td align="right"><&|/l&>Stage</&>:</td><td> -<& /Admin/Elements/SelectStage, - Name => "Scrip-$id-Stage", - Default => $ARGS{"Scrip-$id-Stage"} || $scrip->Stage, -&></td></tr> + +<FORM METHOD=POST ACTION="Scrip.html"> +<input type="hidden" name="id" value="<%$id%>"> +<input type="hidden" name="Queue" value="<%$Queue%>"> +<& /Elements/TitleBoxStart, title => loc('Scrip Fields') &> +<TABLE> +<TR> +<TD ALIGN=RIGHT> +<&|/l&>Description</&>: +</TD> +<TD> +<input Name="Scrip-<%$id%>-Description" value="<%$scrip->Description%>"> +</TR> +<TR> +<TD ALIGN=RIGHT> +<&|/l&>Condition</&>: +</TD> +<TD> +<& /Admin/Elements/SelectScripCondition, Name => "Scrip-$id-ScripCondition", Default => $scrip->ConditionObj->Id &><BR> +</TD> +</TR> +<TR> +<TD ALIGN=RIGHT> +<&|/l&>Action</&>: +</TD> +<TD> +<& /Admin/Elements/SelectScripAction, Name => "Scrip-$id-ScripAction", Default => $scrip->ActionObj->Id &> +</TD> +</TR> +<TR> +<TD ALIGN=RIGHT> +<&|/l&>Template</&>: +</TD> +<TD> +<& /Admin/Elements/SelectTemplate, Name => "Scrip-$id-Template", Default => $scrip->TemplateObj->Id, Queue => $Queue &> +</TD> +</TR> +<TR> +<TD ALIGN=RIGHT> +<&|/l&>Stage</&>: +</TD> +<TD> +<& /Admin/Elements/SelectStage, Name => "Scrip-$id-Stage", Default => $scrip->Stage &> +</TD> +</TR> </table> -</&> - -<& /Elements/Submit, - Label => $SubmitLabel, - Caption => loc("Be sure to save your changes"), - Reset => 1, -&><br /> +<& /Elements/TitleBoxEnd &> +<& /Elements/Submit, Caption => loc("Be sure to save your changes"), Reset => 1 &> -<&| /Widgets/TitleBox, title => loc('User Defined conditions and actions') &> +<br> +<& /Elements/TitleBoxStart, title => loc('User Defined conditions and actions') &> <table> -<tr><td colspan="2"> +<TR> +<TD colspan=2> <i><&|/l&>(Use these fields when you choose 'User Defined' for a condition or action)</&></i> -</td></tr> - -<tr><td class="labeltop"><&|/l&>Custom condition</&>:</td><td> -<textarea cols="80" rows="5" name="Scrip-<% $id %>-CustomIsApplicableCode"><% $ARGS{"Scrip-$id-CustomIsApplicableCode"} || $scrip->CustomIsApplicableCode %></textarea> -</td></tr> - -<tr><td class="labeltop"><&|/l&>Custom action preparation code</&>:</td><td> -<textarea cols="80" rows="5" name="Scrip-<% $id %>-CustomPrepareCode"><% $ARGS{"Scrip-$id-CustomPrepareCode"} || $scrip->CustomPrepareCode %></textarea> -</td></tr> - -<tr><td class="labeltop"><&|/l&>Custom action cleanup code</&>:</td><td> -<textarea cols="80" rows="5" name="Scrip-<% $id %>-CustomCommitCode"><% $ARGS{"Scrip-$id-CustomCommitCode"} || $scrip->CustomCommitCode %></textarea> -</td></tr> - +</TD> +</TR> +<TR> +<TD class=labeltop> +<&|/l&>Custom condition</&>: +</TD> +<TD> +<TEXTAREA COLS=80 ROWS=5 NAME="Scrip-<%$id%>-CustomIsApplicableCode"><%$scrip->CustomIsApplicableCode%></TEXTAREA> +</TD> +</TR> +<TR> +<TD class=labeltop> +<&|/l&>Custom action preparation code</&>: +</TD> +<TD> +<TEXTAREA COLS=80 ROWS=5 NAME="Scrip-<%$id%>-CustomPrepareCode"><%$scrip->CustomPrepareCode%></TEXTAREA> +</TD> +</TR> +<TR> +<TD class=labeltop> +<&|/l&>Custom action cleanup code</&>: +</TD> +<TD> +<TEXTAREA COLS=80 ROWS=5 NAME="Scrip-<%$id%>-CustomCommitCode"><%$scrip->CustomCommitCode%></TEXTAREA> +</TD> +</TR> </table> -</&> +<& /Elements/TitleBoxEnd &> -<& /Elements/Submit, Label => $SubmitLabel, Reset => 1 &> +<& /Elements/Submit, Label => loc('Create'), Reset => 1 &> -</form> +</FORM> <%init> +my (@actions); -my (@actions, $SubmitLabel); -my $scrip = RT::Scrip->new( $session{'CurrentUser'} ); +my $scrip = new RT::Scrip($session{'CurrentUser'}); + +if ( $id eq 'new' ) { -if ( $id ) { - $scrip->Load( $id ); - unless ( $id = $scrip->id ) { - push @actions, loc("Couldn't load scrip #[_1]", $id); + my ( $retval, $msg ) = $scrip->Create( + Queue => $Queue, + ScripAction => $ARGS{"Scrip-new-ScripAction"}, + ScripCondition => $ARGS{"Scrip-new-ScripCondition"}, + Template => $ARGS{"Scrip-new-Template"}, + Description => $ARGS{"Scrip-new-Description"}, + CustomPrepareCode => $ARGS{"Scrip-new-CustomPrepareCode"}, + CustomCommitCode => $ARGS{"Scrip-new-CustomCommitCode"}, + CustomIsApplicableCode => $ARGS{"Scrip-new-CustomIsApplicableCode"}, + ); + if ( defined $retval ) { + push @actions, $msg; + $id = $scrip->id; + } + else { + Abort( $msg); + } +} +elsif ($id) { + my ($val,$msg) =$scrip->Load($id); + if ($val) { + $id = $scrip->id; + } else { + Abort ($msg); } - $SubmitLabel = loc('Update'); + my @attribs = qw ( + Queue + ScripAction + ScripCondition + Template + Stage + Description + CustomPrepareCode + CustomCommitCode + CustomIsApplicableCode + ); + my @results = UpdateRecordObject( AttributesRef => \@attribs, + AttributePrefix => 'Scrip-'.$scrip->Id, + Object => $scrip, + ARGSRef => \%ARGS ); + push (@actions, @results); } -unless ( $id ) { +elsif ($ARGS{'create'}) { $id = 'new'; - $SubmitLabel = loc('Create'); } +# }}} </%init> <%ARGS> @@ -142,42 +195,3 @@ $id => undef $title => undef $Queue => 0 </%ARGS> - -<%METHOD Process> -<%ARGS> -$id => undef -$Queue => undef -</%ARGS> -<%INIT> -return ($id) unless $id; - -my $scrip = RT::Scrip->new( $session{'CurrentUser'} ); -if ( $id eq 'new' ) { - return $scrip->Create( - Queue => $Queue, - ScripAction => $ARGS{"Scrip-new-ScripAction"}, - ScripCondition => $ARGS{"Scrip-new-ScripCondition"}, - Template => $ARGS{"Scrip-new-Template"}, - Description => $ARGS{"Scrip-new-Description"}, - CustomPrepareCode => $ARGS{"Scrip-new-CustomPrepareCode"}, - CustomCommitCode => $ARGS{"Scrip-new-CustomCommitCode"}, - CustomIsApplicableCode => $ARGS{"Scrip-new-CustomIsApplicableCode"}, - ); -} -else { - $scrip->Load( $id ); - return (undef, loc("Couldn't load scrip #[_1]", $id)) - unless $scrip->id; - - my @attribs = qw(Queue ScripAction ScripCondition Template Stage - Description CustomPrepareCode CustomCommitCode CustomIsApplicableCode); - my @results = UpdateRecordObject( - AttributesRef => \@attribs, - AttributePrefix => 'Scrip-'.$scrip->Id, - Object => $scrip, - ARGSRef => \%ARGS - ); - return ($scrip->id, @results); -} -</%INIT> -</%METHOD> |