RT# 75095 - Added Ooma integration to one time charges
[freeside.git] / httemplate / misc / recharge_svc.html
1 <% include('/elements/header-popup.html', 'Recharge Service' ) %>
2
3 <% include('/elements/error.html') %>
4
5 <FORM NAME="recharge_popup" ACTION="<% popurl(1) %>process/recharge_svc.html" METHOD=POST>
6 <INPUT TYPE="hidden" NAME="svcnum" VALUE="<% $svcnum %>">
7
8 <BR><BR>
9 <% "Recharge $svcnum: $label  -  $value" %>
10 <% ntable("#cccccc", 2) %>
11
12 <SCRIPT>
13   function toggle_prep(what) {
14     if (what.value == "PREP"){
15       what.form.prepaid.disabled = false;
16     }else{
17       what.form.prepaid.disabled = true;
18     }
19   }
20 </SCRIPT>
21 % if ($recharge_label) {
22     <TR>
23       <TD><INPUT TYPE="radio" NAME="payby" onchange="toggle_prep(this)" VALUE="PREP" <% $payby eq "PREP" ? 'checked' : '' %>></TD>
24       <TD>Prepaid Card</TD>
25       <TD><INPUT TYPE="radio" NAME="payby" onchange="toggle_prep(this)" VALUE="<% $cust_svc->cust_pkg->cust_main->payby %>" <% $payby eq "PREP" ? '' : 'checked' %>></TD>
26       <TD><% $recharge_label %></TD>
27     </TR>
28 % } else {
29 %   $payby = 'PREP';
30     <INPUT TYPE="hidden" NAME="payby" VALUE="PREP">
31 % }
32 <TR>
33   <TD>Enter prepaid card: </TD>
34   <TD><INPUT TYPE="text" NAME="prepaid" VALUE="<% $prepaid |h %>" <% $payby eq "PREP" ? '' : 'disabled' %>></TD>
35 </TR>
36
37 </TABLE>
38
39 <BR>
40 <INPUT TYPE="submit" NAME="submit" VALUE="Recharge">
41
42 </FORM>
43
44 <% include('/elements/footer.html') %>
45
46 <%once>
47
48 my $conf = new FS::Conf;
49 my $money_char = $conf->config('money_char') || '$';
50
51 </%once>
52 <%init>
53
54 die "access denied"
55   unless $FS::CurrentUser::CurrentUser->access_right('Recharge customer service');
56
57 my($svcnum, $prepaid, $payby); 
58 if ( $cgi->param('error') ) {
59   $svcnum        = $cgi->param('svcnum');
60   $prepaid       = $cgi->param('prepaid');
61   $payby         = $cgi->param('payby');
62 } elsif ( $cgi->param('svcnum') =~ /^(\d+)$/ ) {
63   $svcnum  = $1;
64   $prepaid = '';
65 } else {
66   die "illegal query ". $cgi->keywords;
67 }
68
69 my $title = 'Recharge Service';
70
71 my $cust_svc = qsearchs('cust_svc', {'svcnum' => $svcnum});
72 die "No such service: $svcnum" unless $cust_svc;
73
74 my($label, $value) = $cust_svc->label;
75
76 $payby = $cust_svc->cust_pkg->cust_main->payby unless $payby;
77 my $part_pkg = $cust_svc->cust_pkg->part_pkg;
78 my $amount = $part_pkg->option('recharge_amount', 1) || 0;
79
80 my $recharge_label = "Charge $money_char$amount for ";
81
82 $recharge_label .= $part_pkg->option('recharge_seconds', 1) . 's '
83   if $part_pkg->option('recharge_seconds', 1);
84
85
86 $recharge_label .= FS::UI::bytecount::display_bytecount(
87                      $part_pkg->option('recharge_upbytes', 1) )
88                 . ' up '
89   if $part_pkg->option('recharge_upbytes', 1);
90
91
92 $recharge_label .= FS::UI::bytecount::display_bytecount(
93                      $part_pkg->option('recharge_downbytes', 1) )
94                 . ' down '
95   if $part_pkg->option('recharge_downbytes', 1);
96
97
98 $recharge_label .= FS::UI::bytecount::display_bytecount(
99                      $part_pkg->option('recharge_totalbytes', 1) )
100                 . ' total '
101   if $part_pkg->option('recharge_totalbytes', 1);
102
103
104 $recharge_label = ''
105   unless ($recharge_label ne "Charge $money_char$amount for ");
106
107 </%init>
108