finish up prepay example, RT#4623
[freeside.git] / fs_selfservice / php / order_renew.php
1 <?php
2
3 require('freeside.class.php');
4 $freeside = new FreesideSelfService();
5
6 $session_id = $_GET['session_id'];
7
8 $renew_info = $freeside->renew_info( array(
9   'session_id' => $session_id,
10 ) );
11
12 $error = $renew_info['error'];
13
14 if ( $error ) {
15   header('Location:login.php?error='. urlencode($error));
16   die();
17 }
18
19 #in the simple case, just deal with the first package
20 $bill_date         = $renew_info['dates'][0]['bill_date'];
21 $bill_date_pretty  = $renew_info['dates'][0]['bill_date_pretty'];
22 $renew_date        = $renew_info['dates'][0]['renew_date'];
23 $renew_date_pretty = $renew_info['dates'][0]['renew_date_pretty'];
24 $amount            = $renew_info['dates'][0]['amount'];
25
26 $payment_info = $freeside->payment_info( array(
27   'session_id' => $session_id,
28 ) );
29
30 extract($payment_info);
31
32 ?>
33 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
34 <HTML>
35   <HEAD>
36     <TITLE>Renew Early</TITLE>
37   </HEAD>
38   <BODY>
39     <H1>Renew Early</H1>
40
41       <FORM NAME="OneTrueForm" METHOD="POST" ACTION="process_payment_order_renew.php" onSubmit="document.OneTrueForm.process.disabled=true">
42
43       <INPUT TYPE="hidden" NAME="date"       VALUE="<?php echo $date; ?>">
44       <INPUT TYPE="hidden" NAME="session_id" VALUE="<?php echo $session_id; ?>">
45       <INPUT TYPE="hidden" NAME="amount"     VALUE="<?php echo $amount; ?>">
46
47       A payment of $<?php echo $amount; ?> will renew your account through <?php echo $renew_date_pretty; ?>.<BR><BR>
48
49       <TABLE BGCOLOR="#cccccc">
50       <TR>
51         <TD ALIGN="right">Amount</TD>
52         <TD>
53           <TABLE><TR><TD BGCOLOR="#ffffff">
54             $<?php echo $amount; ?>
55           </TD></TR></TABLE>
56         </TD>
57       </TR>
58       <TR>
59         <TD ALIGN="right">Card&nbsp;type</TD>
60         <TD>
61           <SELECT NAME="card_type"><OPTION></OPTION>
62             <?php foreach ( array_keys($card_types) as $t ) { ?>
63               <OPTION <?php if ($card_type == $card_types[$t] ) { ?> SELECTED <?php } ?>
64                       VALUE="<?php echo $card_types[$t]; ?>"
65               ><?php echo $t; ?>
66             <?php } ?>
67           </SELECT>
68         </TD>
69       </TR>
70
71       <TR>
72         <TD ALIGN="right">Card&nbsp;number</TD>
73         <TD>
74           <TABLE>
75             <TR>
76               <TD>
77                 <INPUT TYPE="text" NAME="payinfo" SIZE=20 MAXLENGTH=19 VALUE="<?php echo $payinfo; ?>"> </TD>
78               <TD>Exp.</TD>
79               <TD>
80                 <SELECT NAME="month">
81                   <?php foreach ( array('01','02','03','04','05','06','07','08','09','10','11','12') as $m) { ?>
82                     <OPTION<?php if ($m == $month ) { ?> SELECTED<?php } ?>
83                     ><?php echo $m; ?>
84                   <?php } ?>
85                 </SELECT>
86               </TD>
87               <TD> / </TD>
88               <TD>
89                 <SELECT NAME="year">
90                   <?php $lt = localtime(); $y = $lt[5] + 1900;
91                         for ($y = $lt[5]+1900; $y < $lt[5] + 1910; $y++ ) { ?>
92                     <OPTION<?php if ($y == $year ) { ?> SELECTED<?php } ?>
93                     ><?php echo $y; ?>
94                   <?php } ?>
95                 </SELECT>
96               </TD>
97             </TR>
98           </TABLE>
99         </TD>
100       </TR>
101       <?php if ( $withcvv ) { ?>
102         <TR>
103           <TD ALIGN="right">CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)</TD>
104           <TD><INPUT TYPE="text" NAME="paycvv" VALUE="" SIZE=4 MAXLENGTH=4></TD>
105         </TR>
106       <?php } ?>
107       <TR>
108         <TD ALIGN="right">Exact&nbsp;name&nbsp;on&nbsp;card</TD>
109         <TD><INPUT TYPE="text" SIZE=32 MAXLENGTH=80 NAME="payname" VALUE="<?php echo $payname; ?>"></TD>
110       </TR><TR>
111         <TD ALIGN="right">Card&nbsp;billing&nbsp;address</TD>
112         <TD>
113           <INPUT TYPE="text" SIZE=40 MAXLENGTH=80 NAME="address1" VALUE="<?php echo $address1; ?>">
114         </TD>
115       </TR><TR>
116         <TD ALIGN="right">Address&nbsp;line&nbsp;2</TD>
117         <TD>
118           <INPUT TYPE="text" SIZE=40 MAXLENGTH=80 NAME="address2" VALUE="<?php echo $address2; ?>">
119         </TD>
120       </TR><TR>
121         <TD ALIGN="right">City</TD>
122         <TD>
123           <TABLE>
124             <TR>
125               <TD>
126                 <INPUT TYPE="text" NAME="city" SIZE="12" MAXLENGTH=80 VALUE="<?php echo $city; ?>">
127               </TD>
128               <TD>State</TD>
129               <TD>
130                 <SELECT NAME="state">
131                   <?php foreach ( $states as $s ) { ?>
132                     <OPTION<?php if ($s == $state) { ?> SELECTED<?php } ?>
133                     ><?php echo $s; ?>
134                   <?php } ?>
135                 </SELECT>
136               </TD>
137               <TD>Zip</TD>
138               <TD>
139                 <INPUT TYPE="text" NAME="zip" SIZE=11 MAXLENGTH=10 VALUE="<?php echo $zip; ?>">
140               </TD>
141             </TR>
142           </TABLE>
143         </TD>
144       </TR>
145
146       <TR>
147         <TD COLSPAN=2>
148           <INPUT TYPE="checkbox" CHECKED NAME="save" VALUE="1">
149           Remember this information
150         </TD>
151       </TR><TR>
152         <TD COLSPAN=2>
153           <INPUT TYPE="checkbox"<?php if ( $payby == 'CARD' ) { ?> CHECKED<?php } ?> NAME="auto" VALUE="1" onClick="if (this.checked) { document.OneTrueForm.save.checked=true; }">
154           Charge future payments to this card automatically
155         </TD>
156       </TR>
157       </TABLE>
158       <BR>
159       <INPUT TYPE="hidden" NAME="paybatch" VALUE="<?php echo $paybatch; ?>">
160       <INPUT TYPE="submit" NAME="process" VALUE="Process payment"> <!-- onClick="this.disabled=true"> -->
161       </FORM>
162
163   </BODY>
164 </HTML>