1 <% include('/elements/header-popup.html', 'Recharge Service' ) %>
3 % if ( $cgi->param('error') ) {
4 <FONT SIZE="+1" COLOR="#ff0000">Error: <% $cgi->param('error') %></FONT>
8 <FORM NAME="recharge_popup" ACTION="<% popurl(1) %>process/recharge_svc.html" METHOD=POST>
9 <INPUT TYPE="hidden" NAME="svcnum" VALUE="<% $svcnum %>">
12 <% "Recharge $svcnum: $label - $value" %>
13 <% ntable("#cccccc", 2) %>
16 function toggle_prep(what) {
17 if (what.value == "PREP"){
18 what.form.prepaid.disabled = false;
20 what.form.prepaid.disabled = true;
25 <TD><INPUT TYPE="radio" NAME="payby" onchange="toggle_prep(this)" VALUE="PREP" <% $payby eq "PREP" ? 'checked' : '' %> <% $recharge_label ? '' : 'disabled' %>></TD>
27 % if ($recharge_label) {
28 <TD><INPUT TYPE="radio" NAME="payby" onchange="toggle_prep(this)" VALUE="<% $cust_svc->cust_pkg->cust_main->payby %>" <% $payby eq "PREP" ? '' : 'checked' %>></TD>
29 <TD><% $recharge_label %></TD>
33 <TD>Enter prepaid card: </TD>
34 <TD><INPUT TYPE="text" NAME="prepaid" VALUE="<% $prepaid %>" <% $payby eq "PREP" ? '' : 'disabled' %>></TD>
40 <INPUT TYPE="submit" NAME="submit" VALUE="Recharge">
47 my $conf = new FS::Conf;
48 my $money_char = $conf->config('money_char') || '$';
51 my($svcnum, $cust_svc, $part_pkg, $label, $value, $prepaid, $amount, $payby);
52 if ( $cgi->param('error') ) {
53 $svcnum = $cgi->param('svcnum');
54 $prepaid = $cgi->param('prepaid');
55 $payby = $cgi->param('payby');
56 } elsif ( $cgi->param('svcnum') =~ /^(\d+)$/ ) {
59 die "illegal query ". $cgi->keywords;
62 my $title = 'Recharge Service';
64 $cust_svc = qsearchs('cust_svc', {'svcnum' => $svcnum});
65 die "No such service: $svcnum" unless $cust_svc;
67 ($label, $value) = $cust_svc->label;
69 $payby = $cust_svc->cust_pkg->cust_main->payby unless $payby;
70 $part_pkg = $cust_svc->cust_pkg->part_pkg;
71 $amount = $part_pkg->option('recharge_amount', 1) || 0;
73 my $recharge_label = "Charge $money_char$amount for ";
75 $recharge_label .= $part_pkg->option('recharge_seconds', 1) . 's '
76 if $part_pkg->option('recharge_seconds', 1);
79 $recharge_label .= FS::UI::bytecount::display_bytecount(
80 $part_pkg->option('recharge_upbytes', 1) )
82 if $part_pkg->option('recharge_upbytes', 1);
85 $recharge_label .= FS::UI::bytecount::display_bytecount(
86 $part_pkg->option('recharge_downbytes', 1) )
88 if $part_pkg->option('recharge_downbytes', 1);
91 $recharge_label .= FS::UI::bytecount::display_bytecount(
92 $part_pkg->option('recharge_totalbytes', 1) )
94 if $part_pkg->option('recharge_totalbytes', 1);
98 unless ($recharge_label ne "Charge $money_char$amount for ");