communigate (phase 2): rules. RT#7514
[freeside.git] / httemplate / edit / prepay_credit.cgi
1 <% include("/elements/header.html",'Generate prepaid cards'. ($agent ? ' for '. $agent->agent : '') ) %>
2
3 <% include('/elements/error.html') %>
4
5 <FORM ACTION="<%popurl(1)%>process/prepay_credit.cgi" METHOD="POST" NAME="OneTrueForm" onSubmit="document.OneTrueForm.submit.disabled=true">
6
7 Generate
8 <INPUT TYPE="text" NAME="num" VALUE="<% $cgi->param('num') || '(quantity)' |h %>" SIZE=10 MAXLENGTH=10 onFocus="if ( this.value == '(quantity)' ) { this.value = ''; }">
9
10 prepaid cards of
11
12 <INPUT TYPE="text" NAME="length" SIZE=3 MAXLENGTH=2 VALUE=8>&nbsp;
13 <SELECT NAME="type">
14 % foreach (qw(alpha alphanumeric numeric)) { 
15   <OPTION<% $cgi->param('type') eq $_ ? ' SELECTED' : '' %>><% $_ %>
16 % } 
17 </SELECT>
18
19 characters each
20
21 <BR>for <SELECT NAME="agentnum"><OPTION>(any agent)
22 % foreach my $opt_agent ( qsearch('agent', { 'disabled' => '' } ) ) { 
23
24   <OPTION VALUE="<% $opt_agent->agentnum %>"<% $opt_agent->agentnum == $agentnum ? ' SELECTED' : '' %>><% $opt_agent->agent %>
25 % } 
26
27 </SELECT>
28
29 <TABLE>
30 <TR><TD>Value: 
31 $<INPUT TYPE="text" NAME="amount" SIZE=8 MAXLENGTH=7 VALUE="<% $cgi->param('amount') |h %>">
32 </TD>
33 <TD>and/or
34 <INPUT TYPE="text" NAME="seconds" SIZE=6 MAXLENGTH=5 VALUE="<% $cgi->param('seconds') |h %>">
35 <SELECT NAME="multiplier">
36 % foreach my $multiplier ( keys %multiplier ) { 
37
38   <OPTION VALUE="<% $multiplier %>"<% $cgi->param('multiplier') eq $multiplier ? ' SELECTED' : '' %>><% $multiplier{$multiplier} %>
39 % } 
40
41 </SELECT>
42 </TD></TR>
43 <TR><TD></TD>
44 <TD>and/or
45 <INPUT TYPE="text" NAME="upbytes" SIZE=6 MAXLENGTH=5 VALUE="<% $cgi->param('upbytes') |h %>">
46 <SELECT NAME="upmultiplier">
47 % foreach my $multiplier ( keys %bytemultiplier ) { 
48
49   <OPTION VALUE="<% $multiplier %>"<% $cgi->param('upmultiplier') eq $multiplier ? ' SELECTED' : '' %>><% $bytemultiplier{$multiplier} %>
50 % } 
51
52 </SELECT> upload
53 </TD></TR>
54 <TR><TD></TD>
55 <TD>and/or
56 <INPUT TYPE="text" NAME="downbytes" SIZE=6 MAXLENGTH=5 VALUE="<% $cgi->param('downbytes') |h %>">
57 <SELECT NAME="downmultiplier">
58 % foreach my $multiplier ( keys %bytemultiplier ) { 
59
60   <OPTION VALUE="<% $multiplier %>"<% $cgi->param('downmultiplier') eq $multiplier ? ' SELECTED' : '' %>><% $bytemultiplier{$multiplier} %>
61 % } 
62
63 </SELECT> download
64 </TD></TR>
65 <TR><TD></TD>
66 <TD>and/or
67 <INPUT TYPE="text" NAME="totalbytes" SIZE=6 MAXLENGTH=5 VALUE="<% $cgi->param('totalbytes') |h %>">
68 <SELECT NAME="totalmultiplier">
69 % foreach my $multiplier ( keys %bytemultiplier ) { 
70
71   <OPTION VALUE="<% $multiplier %>"<% $cgi->param('totalmultiplier') eq $multiplier ? ' SELECTED' : '' %>><% $bytemultiplier{$multiplier} %>
72 % } 
73
74 </SELECT> total transfer
75 </TD></TR>
76 </TABLE>
77 <BR><BR>
78 <INPUT TYPE="submit" NAME="submit" VALUE="Generate" onSubmit="this.disabled = true">
79
80 </FORM>
81
82 <% include('/elements/footer.html') %>
83
84 <%init>
85
86 die "access denied"
87   unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
88
89 my $agent = '';
90 my $agentnum = '';
91 if ( $cgi->param('agentnum') =~ /^(\d+)$/ ) {
92   $agent = qsearchs('agent', { 'agentnum' => $agentnum=$1 } );
93 }
94
95 tie my %multiplier, 'Tie::IxHash',
96   1    => 'seconds',
97   60   => 'minutes',
98   3600 => 'hours',
99 ;
100
101 tie my %bytemultiplier, 'Tie::IxHash',
102   1          => 'bytes',
103   1024       => 'Kbytes',
104   1048576    => 'Mbytes',
105   1073741824 => 'Gbytes',
106 ;
107
108 $cgi->param('multiplier',     '60')      unless $cgi->param('multiplier');
109 $cgi->param('upmultiplier',   '1048576') unless $cgi->param('upmultiplier');
110 $cgi->param('downmultiplier', '1048576') unless $cgi->param('downmultiplier');
111 $cgi->param('totalmultiplier','1048576') unless $cgi->param('totalmultiplier');
112
113 </%init>