관리-도구
편집 파일: tell_a_friend_shipping.php
<?php /** * Free Shipping Tell A Friend * * Derived from: * Original Idea From Tell A Friend Free Shipping Module * Ideas and code segments from: * Link Manager by, Clyde Jones * Free Shipping Rules by, Jeff Lew * CAPTCHA TTF by, Andrew Berezin * * Powered by Zen-Cart (www.zen-cart.com) * Portions Copyright (c) 2005 The Zen-Cart Team * * Released under the GNU General Public License * available at www.zen-cart.com/license/2_0.txt * or see "license.txt" in the downloaded zip * * Adapted to Zen Cart by David Collins - 2008 * Reworked for Zen Cart v1.3.8a 09-20-2008 */ require('includes/application_top.php'); $action = (isset($_GET['action']) ? $_GET['action'] : ''); $extra_args = isset($_GET['filter']) ? '&filter='.$_GET['filter'] : ''; if (isset($_GET['list_order'])) $extra_args .= '&list_order='.$_GET['list_order']; if (zen_not_null($action)) { switch ($action) { case 'insert': $referral_to_address = zen_db_prepare_input($_POST['referral_to_address']); $referral_from_address = zen_db_prepare_input($_POST['referral_from_address']); $referral_f_name = zen_db_prepare_input($_POST['referral_f_name']); $referral_l_name = zen_db_prepare_input($_POST['referral_l_name']); $language_id = zen_db_prepare_input($_SESSION['languages_id']); $customers_id = zen_db_prepare_input($_SESSION['admin_id']); // check if email address exists in CUSTOMERS table or in REFERRALS table $check_cust_email_query = "select count(*) as total from " . TABLE_CUSTOMERS . " where customers_email_address = '" . zen_db_input($referral_to_address) . "'"; $check_cust_email = $db->Execute($check_cust_email_query); $check_tell_email_query = "select count(*) as total from " . TABLE_TELL_A_FRIEND_SHIPPING . " where referral_to_address = '" . zen_db_input($referral_to_address) . "'"; $check_tell_email = $db->Execute($check_tell_email_query); if ($check_cust_email->fields['total'] > 0) { $error = true; $messageStack->add( TELL_DUPLICATE_CUSTOMERS_ERROR, 'error'); } elseif ($check_tell_email->fields['total'] > 0) { $error = true; $messageStack->add( TELL_DUPLICATE_REFERRAL_ERROR, 'error'); } else { $db->Execute("insert into " . TABLE_TELL_A_FRIEND_SHIPPING . " (language_id, referral_f_name, referral_l_name, customers_id, referral_to_address, referral_from_address, referral_date) values ('" . zen_db_input($language_id ) . "', '" . zen_db_input($referral_f_name) . "', '" . zen_db_input($referral_l_name) . "', '" . zen_db_input($customers_id) . "', '" . zen_db_input($referral_to_address) . "', '" . zen_db_input($referral_from_address) . "', now() )"); zen_redirect(zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING)); } break; case 'save': $referral_id = zen_db_prepare_input($_GET['tID']); $referral_to_address = zen_db_prepare_input($_POST['referral_to_address']); $referral_from_address = zen_db_prepare_input($_POST['referral_from_address']); $referral_f_name = zen_db_prepare_input($_POST['referral_f_name']); $referral_l_name = zen_db_prepare_input($_POST['referral_l_name']); $db->Execute("update " . TABLE_TELL_A_FRIEND_SHIPPING . " set referral_id = '" . (int)$referral_id . "', referral_f_name = '" . zen_db_input($referral_f_name) . "', referral_l_name = '" . zen_db_input($referral_l_name) . "', referral_to_address = '" . zen_db_input($referral_to_address) . "', referral_from_address = '" . zen_db_input($referral_from_address) . "' where referral_id = '" . (int)$referral_id . "'"); zen_redirect(zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $referral_id . $extra_args)); break; case 'deleteconfirm': // demo active test if (zen_admin_demo()) { $_GET['action']= ''; $messageStack->add_session(ERROR_ADMIN_DEMO, 'caution'); zen_redirect(zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'])); } $referral_id = zen_db_prepare_input($_GET['tID']); $customers_id = zen_db_prepare_input($_GET['cID']); $db->Execute("delete from " . TABLE_TELL_A_FRIEND_SHIPPING . " where referral_id = '" . (int)$referral_id . "'"); if(!empty($customers_id)) { $sql = "UPDATE " . TABLE_CUSTOMERS . " set customers_newsletter = '0' where customers_id = '" . (int)$customers_id . "'"; $db->Execute($sql); } zen_redirect(zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . $extra_args)); break; } } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html <?php echo HTML_PARAMS; ?>> <head> <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>"> <title><?php echo TITLE; ?></title> <link rel="stylesheet" type="text/css" href="includes/stylesheet.css"> <link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS"> <script type="text/javascript" src="includes/menu.js"></script> <script type="text/javascript" src="includes/general.js"></script> <script type="text/javascript"> <!-- function init() { cssjsmenu('navbar'); if (document.getElementById) { var kill = document.getElementById('hoverJS'); kill.disabled = true; } if (typeof _editor_url == "string") HTMLArea.replaceAll(); } // --> </script> </head> <body onload="init()"> <!-- header //--> <?php require(DIR_WS_INCLUDES . 'header.php'); ?> <!-- header_eof //--> <!-- body //--> <table style="border:none;width:100%;border-spacing:2px;cell-padding:2px;"> <tr> <!-- body_text //--> <td style="width:100%;vertical-align:top;"> <table style="border:none;width:100%;border-collapse:collapse;border-collapse:collapse;border-spacing:0px;cell-padding:2px;"> <tr> <td> <table style="border:none;width:100%; border-spacing:0;cell-padding:0;"> <tr style="padding-top:10px;"> <td class="pageHeading"><?php echo HEADING_TITLE; ?><br/><br/></td> </tr> <tr> <td class="pageHeading" colspan="2" style="text-align:left;vertical-align:top;"> <a href="<?php echo zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING,'action=new'); ?>"><?php echo zen_image_button('button_new_tellafriend.png', TEXT_INFO_HEADING_NEW_TELLAFRIEND); ?></a>  </td> </tr> </td> </tr> </table></td> </tr> <?php // Sort Listing $list_order = empty($_GET['list_order']) ? 'id-desc' : $_GET['list_order']; switch ($list_order) { case 'id-asc': $disp_order = 'referral_id'; break; case 'id-desc': $disp_order = 'referral_id DESC'; break; case 'first_name': $disp_order = 'referral_f_name'; break; case 'first_name-desc': $disp_order = 'referral_f_name DESC'; break; case 'last_name': $disp_order = 'referral_l_name'; break; case 'last_name-desc': $disp_order = 'referral_l_name DESC'; break; case 'referral': $disp_order = 'referral_date'; break; case 'referral-desc': $disp_order = 'referral_date DESC'; break; case 'email': $disp_order = 'referral_to_address'; break; case 'email-desc': $disp_order = 'referral_to_address DESC'; break; case 'email2': $disp_order = 'referral_from_address'; break; case 'email2-desc': $disp_order = 'referral_from_address DESC'; break; default: $list_order='id-desc'; $disp_order = 'referral_id DESC'; } $filter = empty($_GET['filter']) ? '' : $_GET['filter']; $filter= zen_db_prepare_input($filter); $filter_str=''; if(!empty($filter)) { switch($filter) { case 'customers' : $filter_str = ' where customers_id <> 0'; break; default: $filter_str = " where referral_to_address LIKE '%".$filter."%' or referral_from_address LIKE '%".$filter."%' "; break; } } $classes_query_raw = "select referral_id, referral_f_name, referral_l_name, customers_id, referral_to_address, referral_from_address, referral_date from " . TABLE_TELL_A_FRIEND_SHIPPING . $filter_str . " order by ".$disp_order; $classes_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS, $classes_query_raw, $classes_query_numrows); $classes = $db->Execute($classes_query_raw); ?> <tr> <td> <table style="border:none;width:100%;border-collapse:collapse;border-collapse:collapse;border-spacing:0px;cell-padding:0px;"> <tr> <td style="vertical-align:top;"><table style="border:none;width:100%;border-collapse:collapse;border-spacing:0px;cell-padding:2px;"> <tr class="dataTableHeadingRow"> <td class="dataTableHeadingContent" style="text-align:left;"> <?php echo (($list_order=='first_name' or $list_order=='first_name-desc') ? '<span class="SortOrderHeader">' . TABLE_HEADING_FIRSTNAME . '</span>' : TABLE_HEADING_FIRSTNAME); ?><br /> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=first_name' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='first_name' ? '<span class="SortOrderHeader">Asc</span>' : '<span class="SortOrderHeaderLink">Asc</span>'); ?></a> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=first_name-desc' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='first_name-desc' ? '<span class="SortOrderHeader">Desc</span>' : '<span class="SortOrderHeaderLink">Desc</span>'); ?></a> </td> <td class="dataTableHeadingContent" style="text-align:left;"> <?php echo (($list_order=='last_name' or $list_order=='last_name-desc') ? '<span class="SortOrderHeader">' . TABLE_HEADING_LASTNAME . '</span>' : TABLE_HEADING_LASTNAME); ?><br /> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=last_name' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='last_name' ? '<span class="SortOrderHeader">Asc</span>' : '<span class="SortOrderHeaderLink">Asc</span>'); ?></a> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=last_name-desc' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='last_name-desc' ? '<span class="SortOrderHeader">Desc</span>' : '<span class="SortOrderHeaderLink">Desc</span>'); ?></a> </td> <td class="dataTableHeadingContent" style="text-align:left;"> <?php echo (($list_order=='email' or $list_order=='email-desc') ? '<span class="SortOrderHeader">' . TABLE_HEADING_EMAIL . '</span>' : TABLE_HEADING_EMAIL); ?><br /> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=email' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='email' ? '<span class="SortOrderHeader">Asc</span>' : '<span class="SortOrderHeaderLink">Asc</span>'); ?></a> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=email-desc' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='email-desc' ? '<span class="SortOrderHeader">Desc</span>' : '<span class="SortOrderHeaderLink">Desc</span>'); ?></a> </td> <td class="dataTableHeadingContent" style="text-align:left;"> <?php echo (($list_order=='email2' or $list_order=='email2-desc') ? '<span class="SortOrderHeader">' . TABLE_HEADING_PREFERENCE . '</span>' : TABLE_HEADING_PREFERENCE); ?><br /> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=email2' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='email2' ? '<span class="SortOrderHeader">Asc</span>' : '<span class="SortOrderHeaderLink">Asc</span>'); ?></a> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=email2-desc' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='email2-desc' ? '<span class="SortOrderHeader">Desc</span>' : '<span class="SortOrderHeaderLink">Desc</span>'); ?></a> </td> <td class="dataTableHeadingContent" style="text-align:left;"> <?php echo (($list_order=='referral' or $list_order=='referral-desc') ? '<span class="SortOrderHeader">' . TEXT_TELLAFRIEND_DATE . '</span>' : TEXT_TELLAFRIEND_DATE); ?><br /> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=referral' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='referral' ? '<span class="SortOrderHeader">Asc</span>' : '<span class="SortOrderHeaderLink">Asc</span>'); ?></a> <a href="<?php echo zen_href_link(basename($PHP_SELF) . '?list_order=referral-desc' . (empty($filter) ? '' : '&filter=' . $filter), '', 'NONSSL'); ?>"><?php echo ($list_order=='referral-desc' ? '<span class="SortOrderHeader">Desc</span>' : '<span class="SortOrderHeaderLink">Desc</span>'); ?></a> </td> <td colspan="2" class="dataTableHeadingContent" style="text-align:center;"><?php echo TABLE_HEADING_ACTION; ?> </td> </tr> <?php if(!empty($classes)) { while (!$classes->EOF) { if ((!isset($_GET['tID']) || (isset($_GET['tID']) && ($_GET['tID'] == $classes->fields['referral_id']))) && !isset($tcInfo) && (substr($action, 0, 3) != 'new')) { $tcInfo = new objectInfo($classes->fields); } if (isset($tcInfo) && is_object($tcInfo) && ($classes->fields['referral_id'] == $tcInfo->referral_id)) { echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . '&action=edit' . $extra_args) . '\'">' . "\n"; } else { echo' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $classes->fields['referral_id'] . $extra_args ) . '\'">' . "\n"; } ?> <td class="dataTableContent"><?php echo $classes->fields['referral_f_name']; ?></td> <td class="dataTableContent"><?php echo $classes->fields['referral_l_name']; ?></td> <td class="dataTableContent"><?php echo $classes->fields['referral_to_address']; ?></td> <td class="dataTableContent"><?php echo $classes->fields['referral_from_address']; ?></td> <td class="dataTableContent"><?php echo zen_date_short($classes->fields['referral_date']); ?></td> <td class="dataTableContent" style="text-align:right;"> <?php if (isset($tcInfo) && is_object($tcInfo) && ($classes->fields['referral_id'] == $tcInfo->referral_id) && $action=='edit') { echo ' '; } else { echo '<a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $classes->fields['referral_id'] . '&action=edit'.$extra_args) . '">' . zen_image(DIR_WS_IMAGES . 'icon_edit.gif', IMAGE_ICON_EDIT) . '</a>'; } ?> </td> <td class="dataTableContent" style="text-align:right;"><?php if (isset($tcInfo) && is_object($tcInfo) && ($classes->fields['referral_id'] == $tcInfo->referral_id)) { echo zen_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $classes->fields['referral_id'].$extra_args) . '">' . zen_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?> </td> </tr> <?php $classes->MoveNext(); } ?> <tr> <td colspan="2"><table style="border:none;width:100%;border-collapse:collapse;border-collapse:collapse;border-spacing:0px;cell-padding:2px;"> <tr> <td class="smallText" style="vertical-align:top;"></td> <td class="smallText" style="text-align:right;"><?php echo $classes_split->display_links($classes_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $_GET['page'], $extra_args == '' ? '' : substr($extra_args,1)); ?></td> </tr> <?php if (empty($action)) { ?> <tr> <td colspan="2" style="text-align:right;"></td> </tr> <?php } } ?> </table></td> </tr> </table></td> <?php $heading = array(); $contents = array(); $email_pref_text = ('TEXT'); switch ($action) { case 'new': $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_NEW_TELLAFRIEND . '</b>'); $contents = array('form' => zen_draw_form('classes', FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&action=insert')); $contents[] = array('text' => TEXT_INFO_INSERT_INTRO); $contents[] = array('text' => '<br />' . TEXT_INFO_F_TITLE . '<br />' . zen_draw_input_field('referral_f_name', '', zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_f_name'))); $contents[] = array('text' => '<br />' . TEXT_INFO_L_TITLE . '<br />' . zen_draw_input_field('referral_l_name', '', zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_l_name'))); $contents[] = array('text' => '<br />' . TEXT_INFO_TO_TITLE . '<br />' . zen_draw_input_field('referral_to_address', '', zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_to_address'))); $contents[] = array('text' => '<br />' . TEXT_INFO_FROM_TITLE . '<br />' . zen_draw_input_field('referral_from_address', '', zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_from_address'))); $contents[] = array('align' => 'center', 'text' => '<br />' . zen_image_submit('button_insert.gif', IMAGE_INSERT) . ' <a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page']) . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'); break; case 'edit': $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_EDIT_TELLAFRIEND . '</b>'); $contents = array('form' => zen_draw_form('classes', FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . '&action=save'.$extra_args)); $contents[] = array('text' => TEXT_INFO_EDIT_INTRO); $contents[] = array('text' => '<br />' . TEXT_INFO_F_TITLE . '<br />' . zen_draw_input_field('referral_f_name', $tcInfo->referral_f_name, zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_f_name'))); $contents[] = array('text' => '<br />' . TEXT_INFO_L_TITLE . '<br />' . zen_draw_input_field('referral_l_name', $tcInfo->referral_l_name, zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_f_name'))); $contents[] = array('text' => '<br />' . TEXT_INFO_TO_TITLE . '<br />' . zen_draw_input_field('referral_to_address', $tcInfo->referral_to_address, zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_to_address'))); $contents[] = array('text' => '<br />' . TEXT_INFO_FROM_TITLE . '<br />' . zen_draw_input_field('referral_from_address', $tcInfo->referral_from_address, zen_set_field_length(TABLE_TELL_A_FRIEND_SHIPPING, 'referral_from_address'))); if(empty($tcInfo->customers_id)) { $contents[] = array('text' => '<br />' . TEXT_INFO_CONFIRMED . ' ' . zen_draw_checkbox_field('email_confirmed', '1', ((empty($tcInfo->confirmed)||($tcInfo->confirmed != 1)) ? '0' : '1'))); } $contents[] = array('align' => 'center', 'text' => '<br />' . zen_image_submit('button_update.gif', IMAGE_UPDATE) . ' <a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . $extra_args) . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'); break; case 'delete': $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_DELETE_EMAIL . '</b>'); $contents = array('form' => zen_draw_form('classes', FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . '&cID=' . $tcInfo->customers_id . '&action=deleteconfirm' . $extra_args)); $contents[] = array('text' => TEXT_INFO_DELETE_INTRO); $contents[] = array('text' => '<br /><b>' . $tcInfo->referral_to_address . '</b>'); $contents[] = array('align' => 'center', 'text' => '<br />' . zen_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . $extra_args) . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'); break; default: if (isset($tcInfo) && is_object($tcInfo)) { $heading[] = array('text' => '<b>' . $tcInfo->referral_to_address . '</b>'); $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . '&action=edit'.$extra_args) . '">' . zen_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING, 'page=' . $_GET['page'] . '&tID=' . $tcInfo->referral_id . '&cID=' . $tcInfo->customers_id .'&action=delete'.$extra_args) . '">' . zen_image_button('button_delete.gif', IMAGE_DELETE) . '</a>'); $contents[] = array('align' => 'center', 'text' => '</a> <a href="' . zen_href_link(FILENAME_TELL_A_FRIEND_SHIPPING_MAIL, 'referral_to=' . $tcInfo->referral_to_address) . '">' . zen_image_button('button_email.gif', IMAGE_EMAIL) . '</a>'); $contents[] = array('text' => '<br />' . TEXT_TELLAFRIEND_DATE . ': ' .$tcInfo->referral_date . '<br />'); } break; } if ( (zen_not_null($heading)) && (zen_not_null($contents)) ) { echo ' <td style="width:25%;vertical-align:top;">' . "\n"; $box = new box; echo $box->infoBox($heading, $contents); echo ' </td>' . "\n"; } ?> </tr> </table></td> </tr> </table></td> <!-- body_text_eof //--> </tr> </table> <!-- body_eof //--> <!-- footer //--> <?php require(DIR_WS_INCLUDES . 'footer.php'); ?> <!-- footer_eof //--> <br /> </body> </html> <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>