Example #1
0
function olc_update_whos_online($url = EMPTY_STRING)
{
    if (ISSET_CUSTOMER_ID) {
        $wo_customer_id = CUSTOMER_ID;
        $customer_query = olc_db_query(SELECT . "customers_firstname, customers_lastname from " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . APOS);
        $customer = olc_db_fetch_array($customer_query);
        $wo_full_name = addslashes($customer['customers_firstname'] . BLANK . $customer['customers_lastname']);
    } else {
        $wo_full_name = $_SESSION['customers_status']['customers_status_name'];
        $wo_customer_id = 0;
    }
    $wo_session_id = olc_session_id();
    //$wo_ip_address = getenv('REMOTE_ADDR');
    olc_get_ip_info(&$smarty);
    $wo_ip_address = $_SESSION['CUSTOMERS_IP'];
    $pos = strpos($wo_ip_address, RPAREN);
    if ($pos !== false) {
        $wo_ip_address = substr($wo_ip_address, 0, $pos + 1);
    }
    if (!$url) {
        $url = addslashes(getenv('REQUEST_URI'));
    }
    $wo_last_page_url = str_replace(DIR_WS_CATALOG, EMPTY_STRING, $url);
    $pos = strpos($wo_last_page_url, 'start_debug');
    //Eliminate debugger parameters
    if ($pos === false) {
        $pos = strpos($wo_last_page_url, 'DBGSESSION');
        //Eliminate debugger parameters
    }
    if ($pos !== false) {
        $wo_last_page_url = substr($wo_last_page_url, 0, $pos - 1);
    }
    if (USE_AJAX) {
        $pos = strpos($wo_last_page_url, AJAX_ID);
        if ($pos !== false) {
            $wo_last_page_url = substr($wo_last_page_url, 0, $pos - 1) . substr($wo_last_page_url, $pos + strlen(AJAX_ID));
        }
    }
    $current_time = time();
    //Do garbage collection in session db
    _sess_gc(EMPTY_STRING);
    //Delete all from "whos_online" without a session entry
    //olc_db_query(DELETE_FROM . TABLE_WHOS_ONLINE. ' WHERE session_id NOT IN (SELECT sesskey FROM '.TABLE_SESSIONS.RPAREN);
    $sesskey = TABLE_SESSIONS . '.sesskey';
    olc_db_query('DELETE ' . TABLE_WHOS_ONLINE . '  FROM ' . TABLE_WHOS_ONLINE . COMMA_BLANK . TABLE_SESSIONS . ' WHERE ' . TABLE_WHOS_ONLINE . '.session_id = ' . $sesskey . ' AND ' . $sesskey . ' IS NULL');
    $sql_data = array('customer_id' => $wo_customer_id, 'full_name' => $wo_full_name, 'session_id' => $wo_session_id, 'time_last_click' => $current_time, 'last_page_url' => $wo_last_page_url);
    $sql_where = "session_id = '" . $wo_session_id . APOS;
    $stored_customer_query = olc_db_query("select count(*) as count from " . TABLE_WHOS_ONLINE . " where " . $sql_where);
    $stored_customer = olc_db_fetch_array($stored_customer_query);
    if ($stored_customer['count'] > 0) {
        $sql_action = 'update';
    } else {
        $sql_data = array_merge($sql_data, array('ip_address' => $wo_ip_address, 'time_entry' => $current_time));
        $sql_action = 'insert';
        $sql_where = EMPTY_STRING;
    }
    olc_db_perform(TABLE_WHOS_ONLINE, $sql_data, $sql_action, $sql_where);
}
function olc_hide_session_id()
{
    global $session_started;
    if ($session_started) {
        if (defined('SID')) {
            if (olc_not_null(SID)) {
                return olc_draw_hidden_field(olc_session_name(), olc_session_id());
            }
        }
    }
}
$Id: attributemanagerheader.inc.php,v 1.1.1.1 2006/12/22 13:37:21 gswkaiser Exp $

osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com

Released under the GNU General Public License

Web Development
http://www.kangaroopartners.com

Adopted for OL-Commerce by: Dipl.-Ing.(TH) W. Kaiser, w.kaiser@fortune.de. 2/23/2006
*/
//W. Kaiser - AJAX
$productsId = 'productsId="' . $_GET['pID'] . '"';
$pageAction = 'pageAction="' . $action . '"';
$sessionId = 'sessionId="' . olc_session_name() . '=' . olc_session_id() . '"';
if (IS_AJAX_PROCESSING) {
    $ajax_script_id++;
    define('AJAX_SCRIPT_' . $ajax_script_id, $productsId . '
	' . $pageAction . '
	' . $sessionId . '
	 goOnLoad()
	 ');
} else {
    $script .= '
<!-- osc@kangaroopartners.com - AJAX Attribute Manager start-->
<script language="JavaScript" type="text/JavaScript" src="attributemanager/javascript/attributemanager.js"></script>
<link rel="stylesheet" type="text/css" href="attributemanager/css/attributemanager.css" />
<script language="JavaScript" type="text/javascript">
var ' . $productsId . '
var ' . $pageAction . '
 function process_button()
 {
     global $order, $currencies;
     switch (MODULE_PAYMENT_SECPAY_CURRENCY) {
         case 'Default Currency':
             $sec_currency = DEFAULT_CURRENCY;
             break;
         case 'Any Currency':
         default:
             $sec_currency = $_SESSION['currency'];
             break;
     }
     switch (MODULE_PAYMENT_SECPAY_TEST_STATUS) {
         case 'Always Fail':
             $test_status = FALSE_STRING_S;
             break;
         case 'Production':
             $test_status = 'live';
             break;
         case 'Always Successful':
         default:
             $test_status = TRUE_STRING_S;
             break;
     }
     $process_button_string = olc_draw_hidden_field('merchant', MODULE_PAYMENT_SECPAY_MERCHANT_ID) . olc_draw_hidden_field('trans_id', STORE_NAME . date('Ymdhis')) . olc_draw_hidden_field('amount', number_format($order->info['total'] * $currencies->get_value($sec_currency), $currencies->currencies[$sec_currency]['decimal_places'], '.', '')) . olc_draw_hidden_field('bill_name', $order->billing['firstname'] . BLANK . $order->billing['lastname']) . olc_draw_hidden_field('bill_addr_1', $order->billing['street_address']) . olc_draw_hidden_field('bill_addr_2', $order->billing['suburb']) . olc_draw_hidden_field('bill_city', $order->billing['city']) . olc_draw_hidden_field('bill_state', $order->billing['state']) . olc_draw_hidden_field('bill_post_code', $order->billing['postcode']) . olc_draw_hidden_field('bill_country', $order->billing['country']['title']) . olc_draw_hidden_field('bill_tel', $order->customer['telephone']) . olc_draw_hidden_field('bill_email', $order->customer['email_address']) . olc_draw_hidden_field('ship_name', $order->delivery['firstname'] . BLANK . $order->delivery['lastname']) . olc_draw_hidden_field('ship_addr_1', $order->delivery['street_address']) . olc_draw_hidden_field('ship_addr_2', $order->delivery['suburb']) . olc_draw_hidden_field('ship_city', $order->delivery['city']) . olc_draw_hidden_field('ship_state', $order->delivery['state']) . olc_draw_hidden_field('ship_post_code', $order->delivery['postcode']) . olc_draw_hidden_field('ship_country', $order->delivery['country']['title']) . olc_draw_hidden_field('currency', $sec_currency) . olc_draw_hidden_field('callback', olc_href_link(FILENAME_CHECKOUT_PROCESS, '', SSL, false) . ';' . olc_href_link(FILENAME_CHECKOUT_PAYMENT, 'payment_error=' . $this->code, SSL, false)) . olc_draw_hidden_field(olc_session_name(), olc_session_id()) . olc_draw_hidden_field('options', 'test_status=' . $test_status . ',dups=false,cb_post=true,cb_flds=' . olc_session_name());
     return $process_button_string;
 }
 function process_button()
 {
     global $order, $currencies;
     //, $xtPrice;
     //error_reporting(E_ALL);
     $my_currency = $_SESSION['currency'];
     $worldpay_url = olc_session_name() . '=' . olc_session_id();
     //		$total = number_format($xtPrice->olcCalculateCurr($order->info['total']), $xtPrice->get_decimal_places($_SESSION['currency']), '.', '');
     $total = number_format($order->info['total'] - $order->info['shipping_cost'], $currencies->get_decimal_places($my_currency));
     $process_button_string = olc_draw_hidden_field('instId', MODULE_PAYMENT_WORLDPAY_ID) . olc_draw_hidden_field('currency', $_SESSION['currency']) . olc_draw_hidden_field('desc', 'Purchase from ' . STORE_NAME) . olc_draw_hidden_field('cartId', $worldpay_url) . olc_draw_hidden_field('amount', $total);
     // Pre Auth Mod 3/1/2002 - Graeme Conkie
     if (MODULE_PAYMENT_WORLDPAY_USEPREAUTH == TRUE_STRING_S) {
         $process_button_string .= olc_draw_hidden_field('authMode', MODULE_PAYMENT_WORLDPAY_PREAUTH);
     }
     // Ian-san: Create callback and language links here 6/4/2003:
     $language_code_raw = olc_db_query("select code from " . TABLE_LANGUAGES . " where languages_id ='" . $_SESSION['languages_id'] . APOS);
     $language_code_array = olc_db_fetch_array($language_code_raw);
     $language_code = $language_code_array['code'];
     $address = htmlspecialchars($order->customer['street_address'] . NEW_LINE . $order->customer['suburb'] . NEW_LINE . $order->customer['city'] . NEW_LINE . $order->customer['state'], ENT_QUOTES);
     //W. Kaiser - Enhance WP security
     include_once DIR_FS_INC . 'olc_rand.php';
     $worldpay_id = olc_rand(10000, 100000000000);
     $_SESSION['worldpay_id'] = $worldpay_id;
     $process_button_string .= olc_draw_hidden_field('testMode', MODULE_PAYMENT_WORLDPAY_MODE) . olc_draw_hidden_field('name', $order->customer['firstname'] . ' ' . $order->customer['lastname']) . olc_draw_hidden_field('address', $address) . olc_draw_hidden_field('postcode', $order->customer['postcode']) . olc_draw_hidden_field('country', $order->customer['country']['iso_code_2']) . olc_draw_hidden_field('tel', $order->customer['telephone']) . olc_draw_hidden_field('myvar', $worldpay_id) . olc_draw_hidden_field('fax', $order->customer['fax']) . olc_draw_hidden_field('email', $order->customer['email_address']) . olc_draw_hidden_field('lang', $language_code) . olc_draw_hidden_field('MC_callback', olc_href_link('wpcallback.php') . olc_draw_hidden_field('MC_OLCsid', olc_session_id()));
     //W. Kaiser - Enhance WP security
     // Ian-san: Added MD5 here 6/4/2003:
     if ('MODULE_PAYMENT_WORLDPAY_USEMD5' == '1') {
         $md5_signature_fields = 'amount:language:email';
         $md5_signature = MODULE_PAYMENT_WORLDPAY_MD5KEY . ':' . number_format($order->info['total'] * $currencies->get_value($currency), $currencies->get_decimal_places($currency), '.', '') . ':' . $language_code . ':' . $order->customer['email_address'];
         $md5_signature_md5 = md5($md5_signature);
         $process_button_string .= olc_draw_hidden_field('signatureFields', $md5_signature_fields) . olc_draw_hidden_field('signature', $md5_signature_md5);
     }
     return $process_button_string;
 }
	            <td align="right">
		            <table border="0" width="100%" cellspacing="0" cellpadding="0">
		              <tr>
		                <td class="smallText" align="right">
			              	<?php 
echo olc_draw_form('search', FILENAME_CATEGORIES, EMPTY_STRING, 'get');
echo HEADING_TITLE_SEARCH . BLANK . olc_draw_input_field('search', $search) . olc_draw_hidden_field(olc_session_name(), olc_session_id());
?>
			              	</form>
		                </td>
		              </tr>
		              <tr>
		                <td class="smallText" align="right">
			              	<?php 
echo olc_draw_form('goto', FILENAME_CATEGORIES, EMPTY_STRING, 'get');
echo HEADING_TITLE_GOTO . BLANK . olc_draw_pull_down_menu('cPath', olc_get_category_tree(), $current_category_id, 'onchange="this.form.submit();"') . olc_draw_hidden_field(olc_session_name(), olc_session_id());
?>
			              	</form>
		                </td>
		              </tr>
		            </table>
		           </td>
	          </tr>
	        </table>
	      </td>
      </tr>
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
              <tr class="dataTableHeadingRow">
    echo olc_draw_form('orders', FILENAME_ORDERS, EMPTY_STRING, 'get');
    ?>
	                <?php 
    echo HEADING_TITLE_SEARCH . BLANK . olc_draw_input_field('oID', EMPTY_STRING, 'size="12"') . olc_draw_hidden_field('action', 'edit') . olc_draw_hidden_field(olc_session_name(), olc_session_id());
    ?>
	              </form>
							</td>
					  </tr>
					  <tr>
					    <td class="main" valign="top">OLC Bestellungen</td>
					    <td class="main" valign="top" align="right">
					    	<?php 
    echo olc_draw_form('status', FILENAME_ORDERS, EMPTY_STRING, 'get');
    ?>
							    <?php 
    echo HEADING_TITLE_STATUS . BLANK . olc_draw_pull_down_menu('status', olc_array_merge(array(array('id' => EMPTY_STRING, 'text' => TEXT_ALL_ORDERS)), $orders_statuses), EMPTY_STRING, 'onchange="this.form.submit();"') . olc_draw_hidden_field(olc_session_name(), olc_session_id());
    ?>
					      </form>
					     </td>
					  </tr>
					</table>
        </td>
      </tr>
      <tr>
        <td>
	        <table border="0" width="100%" cellspacing="0" cellpadding="0">
	          <tr>
	            <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
	              <tr class="dataTableHeadingRow">
	                <td class="dataTableHeadingContent"><?php 
    echo TABLE_HEADING_CUSTOMERS;
 function process_button()
 {
     global $order;
     $sequence = rand(1, 1000);
     $process_button_string = olc_draw_hidden_field('x_Login', MODULE_PAYMENT_AUTHORIZENET_LOGIN) . olc_draw_hidden_field('x_Card_Num', $this->cc_card_number) . olc_draw_hidden_field('x_Exp_Date', $this->cc_expiry_month . substr($this->cc_expiry_year, -2)) . olc_draw_hidden_field('x_Amount', number_format($order->info['total'], 2)) . olc_draw_hidden_field('x_Relay_URL', olc_href_link(FILENAME_CHECKOUT_PROCESS, '', SSL, false)) . olc_draw_hidden_field('x_Method', MODULE_PAYMENT_AUTHORIZENET_METHOD == 'Credit Card' ? 'CC' : 'ECHECK') . olc_draw_hidden_field('x_Version', '3.0') . olc_draw_hidden_field('x_Cust_ID', $_SESSION['customer_id']) . olc_draw_hidden_field('x_Email_Customer', MODULE_PAYMENT_AUTHORIZENET_EMAIL_CUSTOMER == TRUE_STRING_S ? TRUE_STRING_S : 'FALSE') . olc_draw_hidden_field('x_first_name', $order->billing['firstname']) . olc_draw_hidden_field('x_last_name', $order->billing['lastname']) . olc_draw_hidden_field('x_address', $order->billing['street_address']) . olc_draw_hidden_field('x_city', $order->billing['city']) . olc_draw_hidden_field('x_state', $order->billing['state']) . olc_draw_hidden_field('x_zip', $order->billing['postcode']) . olc_draw_hidden_field('x_country', $order->billing['country']['title']) . olc_draw_hidden_field('x_phone', $order->customer['telephone']) . olc_draw_hidden_field('x_email', $order->customer['email_address']) . olc_draw_hidden_field('x_ship_to_first_name', $order->delivery['firstname']) . olc_draw_hidden_field('x_ship_to_last_name', $order->delivery['lastname']) . olc_draw_hidden_field('x_ship_to_address', $order->delivery['street_address']) . olc_draw_hidden_field('x_ship_to_city', $order->delivery['city']) . olc_draw_hidden_field('x_ship_to_state', $order->delivery['state']) . olc_draw_hidden_field('x_ship_to_zip', $order->delivery['postcode']) . olc_draw_hidden_field('x_ship_to_country', $order->delivery['country']['title']) . olc_draw_hidden_field('x_Customer_IP', $_SERVER['REMOTE_ADDR']) . $this->InsertFP(MODULE_PAYMENT_AUTHORIZENET_LOGIN, MODULE_PAYMENT_AUTHORIZENET_TXNKEY, number_format($order->info['total'], 2), $sequence);
     if (MODULE_PAYMENT_AUTHORIZENET_TESTMODE == 'Test') {
         $process_button_string .= olc_draw_hidden_field('x_Test_Request', TRUE_STRING_S);
     }
     $process_button_string .= olc_draw_hidden_field(olc_session_name(), olc_session_id());
     return $process_button_string;
 }
    echo HTML_A_START . olc_href_link(FILENAME_CREATE_ACCOUNT) . '">' . olc_image_button('create_account.gif', CREATE_ACCOUNT) . HTML_A_END;
    ?>
			</td>
			<td class="smallText" align="middle">
				<?php 
    echo olc_draw_form('status', FILENAME_CUSTOMERS, EMPTY_STRING, 'get');
    $select_data = array();
    $select_data = array(array('id' => '99', 'text' => TEXT_SELECT), array('id' => '100', 'text' => TEXT_ALL_CUSTOMERS));
    echo HEADING_TITLE_STATUS . BLANK . olc_draw_pull_down_menu('status', olc_array_merge($select_data, $customers_statuses_array), '99', 'onchange="this.form.submit();"') . olc_draw_hidden_field(olc_session_name(), olc_session_id());
    ?>
				</form>
			</td>
			<td class="smallText" align="right">
				<?php 
    echo olc_draw_form('search', FILENAME_CUSTOMERS, EMPTY_STRING, 'get');
    echo HEADING_TITLE_SEARCH . BLANK . olc_draw_input_field('search') . olc_draw_hidden_field(olc_session_name(), olc_session_id()) . HTML_NBSP . '<input type="image" class="image" src="' . ADMIN_PATH_PREFIX . CURRENT_TEMPLATE_BUTTONS . 'button_quick_find.gif' . '" style="border:0px" title="' . IMAGE_BUTTON_SEARCH . '">' . HTML_NBSP;
    ?>
				</form>
			</td>
		</tr>
	</table>

	</td>
	</tr>
	<tr>
	<td><table border="0" width="100%" cellspacing="0" cellpadding="0">
	<tr>
	<td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
	<tr class="dataTableHeadingRow">
	<td class="dataTableHeadingContent" width="1"><?php 
    echo TABLE_HEADING_ACCOUNT_TYPE;