future package unsuspend date, #14144
[freeside.git] / httemplate / misc / cancel_pkg.html
index 8dffba7..4b5df86 100755 (executable)
@@ -1,56 +1,56 @@
-%# if ( $link eq 'popup' ) { 
-  <% include('/elements/header-popup.html', $title ) %>
-%# } else { 
-%#  <%  include("/elements/header.html", $title, '') %>
-%# } 
+<& /elements/header-popup.html, mt($title) &>
 
-<LINK REL="stylesheet" TYPE="text/css" HREF="../elements/calendar-win2k-2.css" TITLE="win2k-2">
-<SCRIPT TYPE="text/javascript" SRC="../elements/calendar_stripped.js"></SCRIPT>
-<SCRIPT TYPE="text/javascript" SRC="../elements/calendar-en.js"></SCRIPT>
-<SCRIPT TYPE="text/javascript" SRC="../elements/calendar-setup.js"></SCRIPT>
-
-<% include('/elements/error.html') %>
+<& /elements/error.html &>
 
 <FORM NAME="sc_popup" ACTION="<% popurl(1) %>process/cancel_pkg.html" METHOD=POST>
 <INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>">
 <INPUT TYPE="hidden" NAME="method" VALUE="<% $method %>">
 
-
 <BR><BR>
-<% ucfirst($method) . " $pkgnum: " .$part_pkg->pkg. ' - ' .$part_pkg->comment %>
+<% emt(ucfirst($method)." [_1]", $part_pkg->pkg_comment) %>
 <% ntable("#cccccc", 2) %>
 
-% if ($method eq 'expire' || $method eq 'adjourn') {
-<TR>
-  <TD><% $submit =~ /^(\w*)\s/ %> package on </TD>
-    <TD><INPUT TYPE="text" NAME="date" ID="expire_date" VALUE="<% $date |h %>">
-        <IMG SRC="<% $p %>images/calendar.png" ID="expire_button" STYLE="cursor:pointer" TITLE="Select date">
-        <BR><I>m/d/y</I>
-    </TD>
-</TR>
-<SCRIPT TYPE="text/javascript">
-  Calendar.setup({
-    inputField: "expire_date",
-    ifFormat:   "%m/%d/%Y",
-    button:     "expire_button",
-    align:      "BR"
-  });
-</SCRIPT>
-%}
-%
-
-<% include('/elements/tr-select-reason.html',
-             'field'          => 'reasonnum',
-             'reason_class'   => $class,
-             'curr_value'     => $reasonnum,
-             'control_button' => 'document.sc_popup.submit',
-          )
-%>
-
+% my $date_init = 0;
+% if ($method eq 'expire' || $method eq 'adjourn' || $method eq 'resume') {
+%   $submit =~ /^(\w*)\s/;
+<& /elements/tr-input-date-field.html, {
+    'name'    => 'date',
+    'value'   => $date,
+    'label'   => mt("$1 package on"),
+    'format'  => $date_format,
+} &>
+%   $date_init = 1;
+% }
+
+% unless ( $method eq 'resume' ) { #the only one that doesn't need a reason
+<& /elements/tr-select-reason.html,
+     'field'          => 'reasonnum',
+     'reason_class'   => $class,
+     'curr_value'     => $reasonnum,
+     'control_button' => "document.getElementById('confirm_cancel_pkg_button')",
+&>
+% }
+
+% if ( ( $method eq 'adjourn' or $method eq 'suspend' ) and 
+%      $curuser->access_right('Unsuspend customer package') )  { #later?
+%   my $resume_date = $cgi->param('error') 
+%                     ? str2time($cgi->param('resume_date'))
+%                     : $cust_pkg->get('resume');
+
+<& /elements/tr-input-date-field.html, {
+    'name'    => 'resume_date',
+    'value'   => $resume_date,
+    'label'   => mt('Unsuspend on'),
+    'format'  => $date_format,
+    'noinit'  => $date_init,
+} &>
+% }
 </TABLE>
 
 <BR>
-<INPUT TYPE="submit" NAME="submit" VALUE="<% $submit %>" disabled='true'>
+<INPUT TYPE="submit" NAME="submit" ID="confirm_cancel_pkg_button" 
+  VALUE="<% mt($submit) |h %>"
+  <% $method ne 'resume' ? 'DISABLED' : '' %>>
 
 </FORM>
 </BODY>
 
 <%init>
 
-my $date = time2str("%m/%d/%Y", time);
+my $conf = new FS::Conf;
+my $date_format = $conf->config('date_format') || '%m/%d/%Y';
+
+my $date;
 
 my($pkgnum, $reasonnum);
 if ( $cgi->param('error') ) {
   $pkgnum    = $cgi->param('pkgnum');
   $reasonnum = $cgi->param('reasonnum');
-  $date      = $cgi->param('date');
+  $date      = str2time($cgi->param('date'));
 } elsif ( $cgi->param('pkgnum') =~ /^(\d+)$/ ) {
   $pkgnum    = $1;
   $reasonnum = '';
@@ -92,6 +95,10 @@ if ($method eq 'cancel') {
   $class  = 'S';
   $submit = "Suspend Later";
   $right  = 'Suspend customer package later';
+} elsif ( $method eq 'resume') {
+  $class  = '';
+  $submit = 'Unsuspend Later';
+  $right  = 'Unsuspend customer package'; #later?
 } else {
   die 'illegal query (unknown method param)';
 }
@@ -106,4 +113,7 @@ my $cust_pkg = qsearchs('cust_pkg', {'pkgnum' => $pkgnum})
 
 my $part_pkg = $cust_pkg->part_pkg;
 
+$date ||= $cust_pkg->get($method);
+$date ||= time;
+
 </%init>