self-service support usage improvements (1733)
[freeside.git] / fs_selfservice / FS-SelfService / cgi / selfservice.cgi
index 10a489f..9cf8c4b 100644 (file)
@@ -8,14 +8,15 @@ use CGI::Carp qw(fatalsToBrowser);
 use Text::Template;
 use HTML::Entities;
 use Date::Format;
-use Number::Format;
+use Number::Format 1.50;
 use FS::SelfService qw( login customer_info invoice
                         payment_info process_payment 
                         process_prepay
                         list_pkgs order_pkg signup_info order_recharge
                         part_svc_info provision_acct provision_external
                         unprovision_svc change_pkg
-                        list_svcs list_svc_usage myaccount_passwd
+                        list_svcs list_svc_usage list_support_usage
+                        myaccount_passwd
                       );
 
 $template_dir = '.';
@@ -67,7 +68,7 @@ $session_id = $cgi->param('session');
 
 #order|pw_list XXX ???
 $cgi->param('action') =~
-    /^(myaccount|view_invoice|make_payment|make_ach_payment|payment_results|ach_payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|customer_order_pkg|process_order_pkg|customer_change_pkg|process_change_pkg|process_order_recharge|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|view_usage|view_usage_details|change_password|process_change_password)$/
+    /^(myaccount|view_invoice|make_payment|make_ach_payment|payment_results|ach_payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|customer_order_pkg|process_order_pkg|customer_change_pkg|process_change_pkg|process_order_recharge|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|view_usage|view_usage_details|view_support_details|change_password|process_change_password)$/
   or die "unknown action ". $cgi->param('action');
 my $action = $1;
 
@@ -244,7 +245,7 @@ sub payment_results {
   #the rest, it gives better error messages
 
   $cgi->param('amount') =~ /^\s*(\d+(\.\d{2})?)\s*$/
-    or die "illegal amount"; #!!!
+    or die "Illegal amount: ". $cgi->param('amount'); #!!!
   my $amount = $1;
 
   my $payinfo = $cgi->param('payinfo');
@@ -490,6 +491,15 @@ sub view_usage_details {
   );
 }
 
+sub view_support_details {
+  list_support_usage(
+    'session_id'  => $session_id,
+    'svcnum'      => $cgi->param('svcnum'),
+    'beginning'   => $cgi->param('beginning') || '',
+    'ending'      => $cgi->param('ending') || '',
+  );
+}
+
 sub change_password {
   list_svcs(
     'session_id' => $session_id,