diff options
| author | Christopher Burger <burgerc@freeside.biz> | 2018-01-16 12:14:54 -0500 |
|---|---|---|
| committer | Christopher Burger <burgerc@freeside.biz> | 2018-09-11 11:40:59 -0400 |
| commit | 76a893c2187f59e7fdb9bc8282b780efd9dd8504 (patch) | |
| tree | bbdbab4dc1df7ff44fa607162a00f38ab74a1b4e /min_selfservice/elements | |
| parent | e55e22e00eba74f2713b52fccbbb380f454531f4 (diff) | |
RT# 39340 - Created minimal selfservice that only allows payments to be made, authorization is based on ip and mac address. This is not done yet need to write routine to get mac address from radius server based on ip address.
Diffstat (limited to 'min_selfservice/elements')
| -rw-r--r-- | min_selfservice/elements/card.php | 53 | ||||
| -rw-r--r-- | min_selfservice/elements/check.php | 88 | ||||
| -rw-r--r-- | min_selfservice/elements/error.php | 3 | ||||
| -rw-r--r-- | min_selfservice/elements/footer.php | 1 | ||||
| -rw-r--r-- | min_selfservice/elements/header.php | 14 | ||||
| -rw-r--r-- | min_selfservice/elements/menu.php | 100 | ||||
| -rw-r--r-- | min_selfservice/elements/menu_footer.php | 3 | ||||
| -rw-r--r-- | min_selfservice/elements/session.php | 6 |
8 files changed, 268 insertions, 0 deletions
diff --git a/min_selfservice/elements/card.php b/min_selfservice/elements/card.php new file mode 100644 index 000000000..4d502c223 --- /dev/null +++ b/min_selfservice/elements/card.php @@ -0,0 +1,53 @@ +<TR> + <TD ALIGN="right">Card number</TD> + <TD COLSPAN=6> + <TABLE> + <TR> + <TD> + <INPUT TYPE="text" NAME="payinfo" SIZE=20 MAXLENGTH=19 VALUE="<? echo $payinfo ?>"> </TD> + <TD>Exp.</TD> + <TD> + <SELECT NAME="month"> + <? $months = array( '01', '02', '03' ,'04', '05', '06', '07', '08', '09', '10', '11', '12' ); + foreach ( $months AS $m ) { + ?> + <OPTION <? if ($m == $month) { echo 'SELECTED'; } ?>><? echo $m; ?> + <? } ?> + </SELECT> + </TD> + <TD> / </TD> + <TD> + <SELECT NAME="year"> + <? $years = array( '2018', '2019', '2020', '2021', '2022', '2023', '2024', '2025', '2026' ); + foreach ( $years as $y ) { + ?> + <OPTION <? if ($y == $year ) { echo 'SELECTED'; } ?>><? echo $y; ?> + <? } ?> + </SELECT> + </TD> + </TR> + </TABLE> + </TD> +</TR> +<? if ( $withcvv ) { ?> + <TR> + <TD ALIGN="right">CVV2 (<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> + <TD><INPUT TYPE="text" NAME="paycvv" VALUE="" SIZE=4 MAXLENGTH=4></TD> + </TR> +<? } ?> +<TR> + <TD ALIGN="right">Exact name on card</TD> + <TD COLSPAN=6><INPUT TYPE="text" SIZE=32 MAXLENGTH=80 NAME="payname" VALUE="<? echo $payname; ?>"></TD> +</TR> + +<? $lf = $freeside->mason_comp(array( + 'session_id' => $_COOKIE['session_id'], + 'comp' => '/elements/location.html', + 'args' => [ + 'no_asterisks' , 1, + #'address1_label' , 'Card billing address', + 'address1_label' , 'Card billing address', + ], + )); + echo $lf['output']; +?> diff --git a/min_selfservice/elements/check.php b/min_selfservice/elements/check.php new file mode 100644 index 000000000..fd0cd6d91 --- /dev/null +++ b/min_selfservice/elements/check.php @@ -0,0 +1,88 @@ +<? if ($ach_read_only) { $bgShade = 'BGCOLOR="#ffffff"'; } ?> +<TR> + <TD ALIGN="right">Account type</TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($paytype); ?> + <INPUT TYPE="hidden" NAME="paytype" VALUE="<? echo $paytype; ?>"> + <? } else { ?> + <SELECT NAME="paytype"> + <? foreach ( $paytypes AS $pt ) { ?> + <OPTION <? if ($pt == $paytype ) { echo 'SELECTED'; } ?> VALUE="<? echo $pt; ?>"><? echo $pt; ?> + <? } ?> + </SELECT> + <? } ?> + </TD> +</TR><TR> + <TD ALIGN="right">Account number</TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($payinfo1); ?> + <INPUT TYPE="hidden" NAME="payinfo1" VALUE="<? echo $payinfo1; ?>"> + <? } else { ?> + <INPUT TYPE="text" NAME="payinfo1" SIZE=10 MAXLENGTH=20 VALUE="<? echo $payinfo1; ?>"> + <? } ?> + </TD> +</TR><TR> + <TD ALIGN="right">ABA/Routing number</TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($payinfo2); ?> + <INPUT TYPE="hidden" NAME="payinfo2" VALUE="<? echo $payinfo2; ?>"> + <? } else { ?> + <INPUT TYPE="text" NAME="payinfo2" SIZE=10 MAXLENGTH=9 VALUE="<? echo $payinfo2; ?>"></TD> + <? } ?> +</TR><TR> + <TD ALIGN="right">Bank name</TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($payname); ?> + <INPUT TYPE="hidden" NAME="payname" VALUE="<? echo $payname; ?>"></TD> + <? } else { ?> + <INPUT TYPE="text" SIZE=32 MAXLENGTH=80 NAME="payname" VALUE="<? echo $payname; ?>"></TD> + <? } ?> +</TR><TR> + + <? if ($show_paystate) { ?> + <TR> + <TD ALIGN="right">Bank state</TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($paystate); ?> + <INPUT TYPE="hidden" NAME="paystate" VALUE="<? echo $paystate; ?>"></TD> + <? } else { ?> + <SELECT NAME="paystate"> + <? foreach ( $states AS $s ) { ?> + <OPTION <? if ($s == $paystate ) { echo 'SELECTED'; } ?>><? echo $s; ?> + <? } ?> + </SELECT></TD> + <? } ?> + </TR> + <? } ?> + + <? if ($show_ss) { ?> + <TR> + <TD ALIGN="right">Account holder<BR>Social security or tax ID #</TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($ss); ?> + <INPUT TYPE="hidden" NAME="ss" VALUE="<? echo $ss; ?>"></TD> + <? } else { ?> + <INPUT TYPE="text" SIZE=32 MAXLENGTH=80 NAME="ss" VALUE="<? echo $ss; ?>"></TD> + <? } ?> + </TR> + <? } ?> + + <? if ($show_stateid) { ?> + <TR> + <TD ALIGN="right">Account holder<BR><? echo $stateid_label; ?></TD> + <TD <? echo $bgShade; ?>> + <? if ($ach_read_only) { echo htmlspecialchars($stateid); ?> + <INPUT TYPE="hidden" NAME="stateid" VALUE="<? echo $stateid; ?>"></TD> + <TD <? echo $bgShade; ?>> <? echo $stateid_state; ?> + <INPUT TYPE="hidden" NAME="stateid_state" VALUE="<? echo $stateid_state; ?>"></TD> + <? } else { ?> + <INPUT TYPE="text" SIZE=32 MAXLENGTH=80 NAME="stateid" VALUE="<? echo $stateid; ?>"></TD> + <TD ALIGN="right"><? echo $stateid_state_label; ?></TD> + <TD><SELECT NAME="stateid_state"> + <? foreach ( $states AS $s ) { ?> + <OPTION <? if ($s == $stateid_state ) { echo 'SELECTED'; } ?>><? echo $s; ?> + <? } ?> + </SELECT></TD> + <? } ?> + </TR> + <? } ?> diff --git a/min_selfservice/elements/error.php b/min_selfservice/elements/error.php new file mode 100644 index 000000000..c8d8a179e --- /dev/null +++ b/min_selfservice/elements/error.php @@ -0,0 +1,3 @@ +<? if ($error) { ?> + <FONT SIZE="+1" COLOR="#ff0000"><? echo htmlspecialchars($error); echo '<BR><BR>'; ?></FONT> +<? } ?> diff --git a/min_selfservice/elements/footer.php b/min_selfservice/elements/footer.php new file mode 100644 index 000000000..fb662be73 --- /dev/null +++ b/min_selfservice/elements/footer.php @@ -0,0 +1 @@ +</BODY></HTML> diff --git a/min_selfservice/elements/header.php b/min_selfservice/elements/header.php new file mode 100644 index 000000000..633996515 --- /dev/null +++ b/min_selfservice/elements/header.php @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<HTML> + <HEAD> + <TITLE> + <? echo $title; ?> + </TITLE> + <link href="css/default.css" rel="stylesheet" type="text/css"/> + <script type="text/javascript" src="js/jquery.js"></script> + <script type="text/javascript" src="js/menu.js"></script> + </HEAD> + <BODY> + <FONT SIZE=5><? echo $title; ?></FONT> + <BR><BR> + diff --git a/min_selfservice/elements/menu.php b/min_selfservice/elements/menu.php new file mode 100644 index 000000000..5f600d5c0 --- /dev/null +++ b/min_selfservice/elements/menu.php @@ -0,0 +1,100 @@ +<? + +require_once('session.php'); + +$skin_info = $freeside->skin_info( array( + 'session_id' => $_COOKIE['session_id'], +) ); + +extract($skin_info); + +?> +<style type="text/css"> +#menu_ul ul li { + display: inline; + width: 100%; +} +</style> + +<ul id="menu_ul"> + +<? + + $menu_array = array( + 'payment.php Payments', + 'payment_cc.php Credit Card Payment', + 'payment_ach.php Electronic check payment', + 'payment_paypal.php PayPal payment', + 'payment_webpay.php Webpay payment', + ); + $submenu = array(); + + foreach ($menu_array AS $menu_item) { + if ( preg_match('/^\s*$/', $menu_item) ) { + print_menu($submenu, $current_menu, $menu_disable); + $submenu = array(); + } else { + $submenu[] = $menu_item; + } + } + print_menu($submenu, $current_menu, $menu_disable); + + function print_menu($submenu_array, $current_menu, $menu_disable) { + if ( count($submenu_array) == 0 ) { return; } + + $links = array(); + $labels = array(); + foreach ($submenu_array AS $submenu_item) { + $pieces = preg_split('/\s+/', $submenu_item, 2, PREG_SPLIT_NO_EMPTY); + $links[] = $pieces[0]; + $labels[] = $pieces[1]; + } + + print_link($links[0], $labels[0], $current_menu, $links); + + if ( count($links) > 1 ) { + if ( in_array( $current_menu, $links ) ) { + echo '<img src="images/dropdown_arrow_white.gif">'; + } else { + echo '<img src="images/dropdown_arrow_white.gif" style="display:none;">'; + echo '<img src="images/dropdown_arrow_grey.gif">'; + } + } + + array_shift($links); + array_shift($labels); + + echo '</a>'; + + if ( count($links) > 0 ) { + echo '<ul>'; + foreach ($links AS $link) { + $label = array_shift($labels); + if ( in_array($label, $menu_disable) == 0) { + print_link($link, $label, $current_menu, array($link) ); + echo '</a></li>'; + } + } + echo '</ul>'; + } + + echo '</li>'; + + } + + function print_link($link, $label, $current_menu, $search_array) { + echo '<li><a href="'. $link. '"'; + if ( in_array( $current_menu, $search_array ) ) { + echo ' class="current_menu"'; + } + echo '>'. _($label); + } + +?> + +</ul> + +<div style="clear:both;"></div> +<table cellpadding="0" cellspacing="0" border="0" style="min-width:666px"> +<tr> +<td class="page">
\ No newline at end of file diff --git a/min_selfservice/elements/menu_footer.php b/min_selfservice/elements/menu_footer.php new file mode 100644 index 000000000..8beeeaf02 --- /dev/null +++ b/min_selfservice/elements/menu_footer.php @@ -0,0 +1,3 @@ +</td> +</tr> +</table> diff --git a/min_selfservice/elements/session.php b/min_selfservice/elements/session.php new file mode 100644 index 000000000..a6b8b4af0 --- /dev/null +++ b/min_selfservice/elements/session.php @@ -0,0 +1,6 @@ +<? + +require_once('freeside.class.php'); +$freeside = new FreesideSelfService(); + +?> |
