summaryrefslogtreecommitdiff
path: root/httemplate/edit
diff options
context:
space:
mode:
authorjeff <jeff>2006-10-23 04:21:04 +0000
committerjeff <jeff>2006-10-23 04:21:04 +0000
commit9811b8ce65909a293810ddbcd8c9b5ca963fba01 (patch)
treef6b76e94f276eaabbaf58b50a39493cb91d0c7ab /httemplate/edit
parent1043b612a287f6ccc6bbe32357483019d390f840 (diff)
events should attach reasons
Diffstat (limited to 'httemplate/edit')
-rwxr-xr-xhttemplate/edit/part_bill_event.cgi10
-rwxr-xr-xhttemplate/edit/process/part_bill_event.cgi31
-rw-r--r--httemplate/edit/reason.html3
3 files changed, 23 insertions, 21 deletions
diff --git a/httemplate/edit/part_bill_event.cgi b/httemplate/edit/part_bill_event.cgi
index dda0bef69..77aa82887 100755
--- a/httemplate/edit/part_bill_event.cgi
+++ b/httemplate/edit/part_bill_event.cgi
@@ -162,34 +162,34 @@ Invoice Event #<% $hashref->{eventpart} ? $hashref->{eventpart} : "(NEW)" %>
% },
% 'suspend' => {
% 'name' => 'Suspend',
-% 'code' => '$cust_main->suspend();',
+% 'code' => '$cust_main->suspend(reason => %%%sreason%%%);',
% 'weight' => 10,
% 'reason' => 'S',
% },
% 'suspend-if-balance' => {
% 'name' => 'Suspend if balance (this invoice and previous) over',
-% 'code' => '$cust_bill->cust_suspend_if_balance_over( %%%balanceover%%% );',
+% 'code' => '$cust_bill->cust_suspend_if_balance_over( %%%balanceover%%%, reason => %%%sreason%%%, );',
% 'html' => " $money_char ". '<INPUT TYPE="text" SIZE="7" NAME="balanceover" VALUE="%%%balanceover%%%">',
% 'weight' => 10,
% 'reason' => 'S',
% },
% 'suspend-if-pkgpart' => {
% 'name' => 'Suspend packages',
-% 'code' => '$cust_main->suspend_if_pkgpart(%%%if_pkgpart%%%);',
+% 'code' => '$cust_main->suspend_if_pkgpart({pkgparts => [%%%if_pkgpart%%%,], reason => %%%sreason%%%,});',
% 'html' => sub { &select_pkgpart('if_pkgpart', @_) },
% 'weight' => 10,
% 'reason' => 'S',
% },
% 'suspend-unless-pkgpart' => {
% 'name' => 'Suspend packages except',
-% 'code' => '$cust_main->suspend_unless_pkgpart(%%%unless_pkgpart%%%);',
+% 'code' => '$cust_main->suspend_unless_pkgpart({unless_pkgpart => [%%%unless_pkgpart%%%], reason => %%%sreason%%%,});',
% 'html' => sub { &select_pkgpart('unless_pkgpart', @_) },
% 'weight' => 10,
% 'reason' => 'S',
% },
% 'cancel' => {
% 'name' => 'Cancel',
-% 'code' => '$cust_main->cancel();',
+% 'code' => '$cust_main->cancel(reason => %%%creason%%%);',
% 'weight' => 10,
% 'reason' => 'C',
% },
diff --git a/httemplate/edit/process/part_bill_event.cgi b/httemplate/edit/process/part_bill_event.cgi
index dd5cd0c8e..cedba1e9f 100755
--- a/httemplate/edit/process/part_bill_event.cgi
+++ b/httemplate/edit/process/part_bill_event.cgi
@@ -31,23 +31,19 @@
% my $rnum;
% my $rtype;
% my $reasonm;
-% if ($eventcode =~ /cancel/) {
-% $cgi->param('creason') =~ /^(-?\d+)$/ || die "Invalid creason";
+% my $class = '';
+% $class='c' if ($eventcode =~ /cancel/);
+% $class='s' if ($eventcode =~ /suspend/);
+% if ($class) {
+% $cgi->param("${class}reason") =~ /^(-?\d+)$/
+% or $error = "Invalid ${class}reason";
% $rnum = $1;
% if ($rnum == -1) {
-% $cgi->param('newcreasonT') =~ /^(\d+)$/ || die "Invalid newcreasonT";
+% $cgi->param("new${class}reasonT") =~ /^(\d+)$/
+% or $error = "Invalid new${class}reasonT";
% $rtype = $1;
-% $cgi->param('newcreason') =~ /^([\s\w]+)$/ || die "Invalid newcreasonT";
-% $reasonm = $1;
-% }
-% }
-% if ($eventcode =~ /suspend/) {
-% $cgi->param('sreason') =~ /^(-?\d+)$/ || die "Invalid sreason";
-% $rnum = $1;
-% if ($rnum == -1) {
-% $cgi->param('newsreasonT') =~ /^(\d+)$/ || die "Invalid newsreasonT";
-% $rtype = $1;
-% $cgi->param('newsreason') =~ /^([\s\w]+)$/ || die "Invalid newsreasonT";
+% $cgi->param("new${class}reason") =~ /^([\s\w]+)$/
+% or $error = "Invalid new${class}reason";
% $reasonm = $1;
% }
% }
@@ -57,6 +53,11 @@
% 'reason_type' => $rtype,
% });
% $error = $reason->insert or $rnum = $reason->reasonnum;
+% unless ($error) {
+% $cgi->param("${class}reason", $rnum);
+% $cgi->param("new${class}reason", '');
+% $cgi->param("new${class}reasonT", '');
+% }
% }
%
% unless($error){
@@ -84,5 +85,3 @@
%}
%
%
-
-
diff --git a/httemplate/edit/reason.html b/httemplate/edit/reason.html
index 2f5932846..7c0722cea 100644
--- a/httemplate/edit/reason.html
+++ b/httemplate/edit/reason.html
@@ -9,6 +9,9 @@
%
% my (@types) = qsearch( 'reason_type', { 'class' => $class } );
%
+% unless (scalar(@types)) {
+% print $cgi->redirect( "reason_type.html?class=$class" );
+% }
<% include( 'elements/edit.html',
'name' => ucfirst($classname) . ' Reason',
'table' => 'reason',