[freeside-commits] freeside/rt/share/html/Admin/Elements EditScrip, 1.1.1.2, 1.1.1.2.4.1 EditScripOptions, NONE, 1.1.2.2 SelectScripAction, 1.1.1.1, 1.1.1.1.4.1 SelectScripCondition, 1.1.1.1, 1.1.1.1.4.1
Mark Wells
mark at wavetail.420.am
Wed Nov 17 13:26:42 PST 2010
Update of /home/cvs/cvsroot/freeside/rt/share/html/Admin/Elements
In directory wavetail.420.am:/tmp/cvs-serv30035/share/html/Admin/Elements
Modified Files:
Tag: FREESIDE_2_1_BRANCH
EditScrip SelectScripAction SelectScripCondition
Added Files:
Tag: FREESIDE_2_1_BRANCH
EditScripOptions
Log Message:
create ticket on custom field change, RT#10139
Index: EditScrip
===================================================================
RCS file: /home/cvs/cvsroot/freeside/rt/share/html/Admin/Elements/EditScrip,v
retrieving revision 1.1.1.2
retrieving revision 1.1.1.2.4.1
diff -u -w -d -r1.1.1.2 -r1.1.1.2.4.1
--- EditScrip 18 May 2010 18:45:34 -0000 1.1.1.2
+++ EditScrip 17 Nov 2010 21:26:40 -0000 1.1.1.2.4.1
@@ -64,14 +64,32 @@
<& /Admin/Elements/SelectScripCondition,
Name => "Scrip-$id-ScripCondition",
Default => $ARGS{"Scrip-$id-ScripCondition"} || $scrip->ConditionObj->Id,
+ ScripObj => $scrip,
+ Queue => $Queue,
&></td></tr>
+<& /Admin/Elements/EditScripOptions,
+ Name => "Condition",
+ Default => $ARGS{"Scrip-$id-ConditionRules"} || $scrip->ConditionRules,
+ Queue => $Queue,
+ ScripX => $ARGS{"Scrip-$id-ScripCondition"} || $scrip->ConditionObj->Id,
+&>
+
<tr><td align="right"><&|/l&>Action</&>:</td><td>
<& /Admin/Elements/SelectScripAction,
Name => "Scrip-$id-ScripAction",
Default => $ARGS{"Scrip-$id-ScripAction"} || $scrip->ActionObj->Id,
+ ScripObj => $scrip,
+ Queue => $Queue,
&></td></tr>
+<& /Admin/Elements/EditScripOptions,
+ Name => "Action",
+ Default => $ARGS{"Scrip-$id-ActionRules"} || $scrip->ActionRules,
+ Queue => $Queue,
+ ScripX => $ARGS{"Scrip-$id-ScripAction"} || $scrip->ActionObj->Id,
+&>
+
<tr><td align="right"><&|/l&>Template</&>:</td><td>
<& /Admin/Elements/SelectTemplate,
Name => "Scrip-$id-Template",
@@ -165,6 +183,18 @@
<%INIT>
return ($id) unless $id;
+my @rules = ('ConditionRules', 'ActionRules');
+if ( exists($ARGS{"Scrip-$id-ScripCondition"}) ) {
+ foreach my $rules (@rules) {
+ my $prefix = join('-', 'Scrip', $id, $rules);
+ $ARGS{$prefix} = join("\n", map {
+ $_ =~ /^$rules-(.*)$/ ?
+ ($1, $ARGS{$_}) : ()
+ } keys(%ARGS)
+ );
+ }
+}
+
my $scrip = RT::Scrip->new( $session{'CurrentUser'} );
if ( $id eq 'new' ) {
return $scrip->Create(
@@ -177,6 +207,8 @@
CustomCommitCode => $ARGS{"Scrip-new-CustomCommitCode"},
CustomIsApplicableCode => $ARGS{"Scrip-new-CustomIsApplicableCode"},
Stage => $ARGS{"Scrip-new-Stage"},
+ ConditionRules => $ARGS{"Scrip-new-ConditionRules"},
+ ActionRules => $ARGS{"Scrip-new-ActionRules"},
);
}
else {
@@ -185,7 +217,8 @@
unless $scrip->id;
my @attribs = qw(Queue ScripAction ScripCondition Template Stage
- Description CustomPrepareCode CustomCommitCode CustomIsApplicableCode);
+ Description CustomPrepareCode CustomCommitCode CustomIsApplicableCode
+ ConditionRules ActionRules);
my @results = UpdateRecordObject(
AttributesRef => \@attribs,
AttributePrefix => 'Scrip-'.$scrip->Id,
--- NEW FILE: EditScripOptions ---
% return if !@options;
<tr><td></td><td><table>
% my $prefix = $Name.'Rules-';
% foreach my $o (@options) {
<tr><td align="right"><% $o->{'label'} %>:</td>
<td>
% if ( $o->{'type'} eq 'text' ) {
<input type="text" name="<% $prefix.$o->{'name'} %>" value="<% $rules{$o->{'name'}} %>">
% }
% elsif ( $o->{'type'} eq 'select' and ref $o->{'options'} ) {
<select name="<% $prefix.$o->{'name'} %>">
% my @choices = @{ $o->{'options'} };
% while (@choices) {
% my $v = shift @choices;
% my $l = shift @choices;
<option value="<% $v %>"<% ($rules{$o->{'name'}} eq $v) ? ' SELECTED' : ''%>>
<% $l %></option>
% }
</select>
% } # else $o->{'type'}
</td></tr>
% } #foreach $o
</table></td></tr>
<%INIT>
my (@options, %rules);
if ( $ScripX ) {
my $ScripXObj = "RT::Scrip$Name"->new($session{'CurrentUser'});
$ScripXObj->Load($ScripX);
my $QueueObj = RT::Queue->new($session{'CurrentUser'});
$QueueObj->Load($Queue);
my $method = "Load$Name";
my $XObj = $ScripXObj->$method();
@options = $XObj->Options('QueueObj' => $QueueObj);
%rules = split("\n", $Default);
}
</%INIT>
<%ARGS>
$Name => undef
$Default => undef
$Queue => 0
$ScripX => undef
</%ARGS>
Index: SelectScripAction
===================================================================
RCS file: /home/cvs/cvsroot/freeside/rt/share/html/Admin/Elements/SelectScripAction,v
retrieving revision 1.1.1.1
retrieving revision 1.1.1.1.4.1
diff -u -w -d -r1.1.1.1 -r1.1.1.1.4.1
--- SelectScripAction 31 Dec 2009 13:16:17 -0000 1.1.1.1
+++ SelectScripAction 17 Nov 2010 21:26:40 -0000 1.1.1.1.4.1
@@ -45,7 +45,10 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<select name="<%$Name%>">
+<select name="<%$Name%>"
+onchange="var idobj = document.getElementsByName('id')[0];
+if (idobj.value=='new') idobj.value = '';
+form.submit()">
<option value=""
<% ! defined $Default && qq[ selected="selected"] |n %>
>-</option>
Index: SelectScripCondition
===================================================================
RCS file: /home/cvs/cvsroot/freeside/rt/share/html/Admin/Elements/SelectScripCondition,v
retrieving revision 1.1.1.1
retrieving revision 1.1.1.1.4.1
diff -u -w -d -r1.1.1.1 -r1.1.1.1.4.1
--- SelectScripCondition 31 Dec 2009 13:16:16 -0000 1.1.1.1
+++ SelectScripCondition 17 Nov 2010 21:26:40 -0000 1.1.1.1.4.1
@@ -45,7 +45,10 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<select name="<%$Name%>">
+<select name="<%$Name%>"
+onchange="var idobj = document.getElementsByName('id')[0];
+if (idobj.value=='new') idobj.value = '';
+form.submit()">
<option value=""
<% ! defined $Default && qq[ selected="selected"] %>
>-</option>
More information about the freeside-commits
mailing list