From 6194551336a925ae5455cede68a7f73660b06bb6 Mon Sep 17 00:00:00 2001 From: jeff Date: Thu, 7 Dec 2006 02:40:32 +0000 Subject: retouch bandwidth countdown --- .../FS-SelfService/cgi/process_order_recharge.html | 13 +++++++++ fs_selfservice/FS-SelfService/cgi/selfservice.cgi | 31 +++++++++++++++++++-- fs_selfservice/FS-SelfService/cgi/view_usage.html | 32 ++++++++++++++-------- 3 files changed, 62 insertions(+), 14 deletions(-) create mode 100644 fs_selfservice/FS-SelfService/cgi/process_order_recharge.html (limited to 'fs_selfservice/FS-SelfService/cgi') diff --git a/fs_selfservice/FS-SelfService/cgi/process_order_recharge.html b/fs_selfservice/FS-SelfService/cgi/process_order_recharge.html new file mode 100644 index 000000000..851bbed44 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/process_order_recharge.html @@ -0,0 +1,13 @@ +MyAccount +MyAccount

+<%= $url = "$selfurl?session=$session_id;action="; ''; %> +<%= include('myaccount_menu') %> + + +<%= $svc %> recharged successfully. + + +
+powered by freeside + + diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi index 1a2c74a64..e2fd7f6a4 100644 --- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi +++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi @@ -10,7 +10,7 @@ use HTML::Entities; use FS::SelfService qw( login customer_info invoice payment_info process_payment process_prepay - list_pkgs order_pkg signup_info + list_pkgs order_pkg signup_info order_recharge part_svc_info provision_acct provision_external unprovision_svc list_svcs myaccount_passwd @@ -65,7 +65,7 @@ $session_id = $cgi->param('session'); #order|pw_list XXX ??? $cgi->param('action') =~ - /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|customer_order_pkg|process_order_pkg|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|view_usage||change_password|process_change_password)$/ + /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|customer_order_pkg|process_order_pkg|process_order_recharge|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|view_usage||change_password|process_change_password)$/ or die "unknown action ". $cgi->param('action'); my $action = $1; @@ -160,6 +160,33 @@ sub process_order_pkg { } +sub process_order_recharge { + + my $results = ''; + + $results ||= order_recharge ( + 'session_id' => $session_id, + map { $_ => $cgi->param($_) } + qw( svcnum ) + ); + + + if ( $results->{'error'} ) { + $action = 'view_usage'; + if ($results->{'error'} eq '_decline') { + $results->{'error'} = "There has been an error processing your account. Please contact customer support." + } + return { + $cgi->Vars, + %{view_usage()}, + 'error' => ''. $results->{'error'}. '', + }; + } else { + return $results; + } + +} + sub make_payment { payment_info( 'session_id' => $session_id ); } diff --git a/fs_selfservice/FS-SelfService/cgi/view_usage.html b/fs_selfservice/FS-SelfService/cgi/view_usage.html index 40aec7bcf..73ad1e4af 100644 --- a/fs_selfservice/FS-SelfService/cgi/view_usage.html +++ b/fs_selfservice/FS-SelfService/cgi/view_usage.html @@ -6,8 +6,9 @@ Service usage

-
- +<%= if ( $error ) { + $OUT .= qq!$error

!; +} ''; %> @@ -18,13 +19,6 @@ <%= foreach my $svc ( @svcs ) { - my $totalbytes = ''; - if ( ($svc->{'upbytes'} + 0) eq $svc->{'upbytes'} - || ($svc->{'downbytes'} + 0) eq $svc->{'downbytes'} ) { - - $totalbytes = $svc->{'upbytes'} + $svc->{'downbytes'}; - } - $OUT .= ''; + if ( $svc->{'recharge_amount'} ) { + my $link = "${url}process_order_recharge;". + "svcnum=$svc->{'svcnum'}"; + $OUT .= ''; + } } %>
Total remaining
'; $OUT .= $svc->{'label'}. ': '. $svc->{'value'}; $OUT .= ''; @@ -34,15 +28,29 @@ $OUT .= ''; $OUT .= $svc->{'downbytes'}; $OUT .= ''; - $OUT .= $totalbytes; + $OUT .= $svc->{'totalbytes'}; $OUT .= '
'; + $OUT .= qq!!.'Recharge for $'; + $OUT .= $svc->{'recharge_amount'} . ' with'; + $OUT .= ''; + $OUT .= $svc->{'recharge_seconds'} if $svc->{'recharge_seconds'}; + $OUT .= ''; + $OUT .= $svc->{'recharge_upbytes'} if $svc->{'recharge_upbytes'}; + $OUT .= ''; + $OUT .= $svc->{'recharge_downbytes'} if $svc->{'recharge_downbytes'}; + $OUT .= ''; + $OUT .= $svc->{'recharge_totalbytes'} if $svc->{'recharge_totalbytes'}; + $OUT .= '

-
-
powered by freeside -- cgit v1.2.1