spoot Posted October 13, 2004 Author Share Posted October 13, 2004 From another forum: In the admin panel under configuration/sessions check that the check ip address is set to false if its true.. Some of the ISP's change your IP address during a connection causing the store to think its a new customer and setting a new session ID for it... Hope this helps... Mike <{POST_SNAPBACK}> Worth a try? Let me know - Quote Link to comment Share on other sites More sharing options...
bbeban Posted October 14, 2004 Share Posted October 14, 2004 From another forum:Worth a try? Let me know - <{POST_SNAPBACK}> Yep, check IP address is set to false. Quote Link to comment Share on other sites More sharing options...
bbeban Posted October 15, 2004 Share Posted October 15, 2004 No, probably not... not yet anyway. Have you done any other modifications to any administrative stuff? I'm trying to figure out why the oscadminid would change mid-session (I've posted to the general help forum to see if anyone else knows). Michael <{POST_SNAPBACK}> Yes, there have been some changes made. There are a couple of other contributions set up on this version of OSCommerce. The kick out to the login page is a new thing, though. I am not exactly sure which contribs have been added -- I didn't personally add any others. Thanks for your help. I know we'll get it working. I feel like we're close here. Bob Quote Link to comment Share on other sites More sharing options...
spoot Posted October 15, 2004 Author Share Posted October 15, 2004 Yes, there have been some changes made. There are a couple of other contributions set up on this version of OSCommerce. The kick out to the login page is a new thing, though. I am not exactly sure which contribs have been added -- I didn't personally add any others. Thanks for your help. I know we'll get it working. I feel like we're close here. Bob <{POST_SNAPBACK}> Post your orders.php, I'll see if I can recreate the error - Quote Link to comment Share on other sites More sharing options...
bbeban Posted October 15, 2004 Share Posted October 15, 2004 Post your orders.php, I'll see if I can recreate the error - <{POST_SNAPBACK}> Here it is: <?php/* $Id: orders.php,v 1.112 2003/06/29 22:50:52 hpdl Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2003 osCommerce Released under the GNU General Public License*/ require('includes/application_top.php'); require(DIR_WS_CLASSES . 'currencies.php'); $currencies = new currencies(); $orders_statuses = array(); $orders_status_array = array(); $orders_status_query = tep_db_query("select orders_status_id, orders_status_name from " . TABLE_ORDERS_STATUS . " where language_id = '" . (int)$languages_id . "'"); while ($orders_status = tep_db_fetch_array($orders_status_query)) { $orders_statuses[] = array('id' => $orders_status['orders_status_id'], 'text' => $orders_status['orders_status_name']); $orders_status_array[$orders_status['orders_status_id']] = $orders_status['orders_status_name']; } $action = (isset($HTTP_GET_VARS['action']) ? $HTTP_GET_VARS['action'] : ''); if (tep_not_null($action)) { switch ($action) { case 'update_order': $oID = tep_db_prepare_input($HTTP_GET_VARS['oID']); $status = tep_db_prepare_input($HTTP_POST_VARS['status']); $comments = tep_db_prepare_input($HTTP_POST_VARS['comments']); $order_updated = false; $check_status_query = tep_db_query("select customers_name, customers_email_address, orders_status, date_purchased from " . TABLE_ORDERS . " where orders_id = '" . (int)$oID . "'"); $check_status = tep_db_fetch_array($check_status_query); // BOF: WebMakers.com Added: Downloads Controller// always update date and time on order_status// original if ( ($check_status['orders_status'] != $status) || tep_not_null($comments)) { if ( ($check_status['orders_status'] != $status) || $comments != '' || ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) ) { tep_db_query("update " . TABLE_ORDERS . " set orders_status = '" . tep_db_input($status) . "', last_modified = now() where orders_id = '" . (int)$oID . "'"); $check_status_query2 = tep_db_query("select customers_name, customers_email_address, orders_status, date_purchased from " . TABLE_ORDERS . " where orders_id = '" . (int)$oID . "'"); $check_status2 = tep_db_fetch_array($check_status_query2); if ( $check_status2['orders_status']==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE ) { tep_db_query("update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays = '" . tep_get_configuration_key_value('DOWNLOAD_MAX_DAYS') . "', download_count = '" . tep_get_configuration_key_value('DOWNLOAD_MAX_COUNT') . "' where orders_id = '" . (int)$oID . "'"); }// EOF: WebMakers.com Added: Downloads Controller $customer_notified = '0'; if (isset($HTTP_POST_VARS['notify']) && ($HTTP_POST_VARS['notify'] == 'on')) { $notify_comments = ''; // BOF: WebMakers.com Added: Downloads Controller - Only tell of comments if there are comments if (isset($HTTP_POST_VARS['notify_comments']) && ($HTTP_POST_VARS['notify_comments'] == 'on')) { $notify_comments = sprintf(EMAIL_TEXT_COMMENTS_UPDATE, $comments) . "\n\n"; }// EOF: WebMakers.com Added: Downloads Controller $email = STORE_NAME . "\n" . EMAIL_SEPARATOR . "\n" . EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID . "\n" . EMAIL_TEXT_INVOICE_URL . ' ' . tep_catalog_href_link(FILENAME_CATALOG_ACCOUNT_HISTORY_INFO, 'order_id=' . $oID, 'SSL') . "\n" . EMAIL_TEXT_DATE_ORDERED . ' ' . tep_date_long($check_status['date_purchased']) . "\n\n" . $notify_comments . sprintf(EMAIL_TEXT_STATUS_UPDATE, $orders_status_array[$status]); tep_mail($check_status['customers_name'], $check_status['customers_email_address'], EMAIL_TEXT_SUBJECT, $email, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); $customer_notified = '1'; } tep_db_query("insert into " . TABLE_ORDERS_STATUS_HISTORY . " (orders_id, orders_status_id, date_added, customer_notified, comments) values ('" . (int)$oID . "', '" . tep_db_input($status) . "', now(), '" . tep_db_input($customer_notified) . "', '" . tep_db_input($comments) . "')"); $order_updated = true; } if ($order_updated == true) { $messageStack->add_session(SUCCESS_ORDER_UPDATED, 'success'); } else { $messageStack->add_session(WARNING_ORDER_NOT_UPDATED, 'warning'); } tep_redirect(tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('action')) . 'action=edit')); break; case 'deleteconfirm': $oID = tep_db_prepare_input($HTTP_GET_VARS['oID']); tep_remove_order($oID, $HTTP_POST_VARS['restock']); tep_redirect(tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')))); break; } } if (($action == 'edit') && isset($HTTP_GET_VARS['oID'])) { $oID = tep_db_prepare_input($HTTP_GET_VARS['oID']); $orders_query = tep_db_query("select orders_id from " . TABLE_ORDERS . " where orders_id = '" . (int)$oID . "'"); $order_exists = true; if (!tep_db_num_rows($orders_query)) { $order_exists = false; $messageStack->add(sprintf(ERROR_ORDER_DOES_NOT_EXIST, $oID), 'error'); } }// BOF: WebMakers.com Added: Additional info for Orders// Look up things in orders$the_extra_query= tep_db_query("select * from " . TABLE_ORDERS . " where orders_id = '" . (int)$oID . "'");$the_extra= tep_db_fetch_array($the_extra_query);$the_customers_id= $the_extra['customers_id'];// Look up things in customers$the_extra_query= tep_db_query("select * from " . TABLE_CUSTOMERS . " where customers_id = '" . $the_customers_id . "'");$the_extra= tep_db_fetch_array($the_extra_query);$the_customers_fax= $the_extra['customers_fax'];// EOF: WebMakers.com Added: Additional info for Orders include(DIR_WS_CLASSES . 'order.php');?><!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"><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"><script language="javascript" src="includes/general.js"></script></head><body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF"><!-- header //--><?php require(DIR_WS_INCLUDES . 'header.php');?><!-- header_eof //--> <!-- body //--><table border="0" width="100%" cellspacing="2" cellpadding="2"> <tr> <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft"><!-- left_navigation //--><?php require(DIR_WS_INCLUDES . 'column_left.php'); ?><!-- left_navigation_eof //--> </table></td><!-- body_text //--> <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2"><?php if (($action == 'edit') && ($order_exists == true)) { $order = new order($oID);?> <tr> <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> <td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td> <td class="pageHeading" align="right"><?php echo '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('action'))) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td><td class="pageHeading" align="right"><?php echo '<a href="' . tep_href_link("edit_orders.php", tep_get_all_get_params(array('action'))) . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> '; ?><?php echo '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('action'))) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td> </tr> </table></td> </tr> <tr> <td><table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td colspan="3"><?php echo tep_draw_separator(); ?></td> </tr> <tr> <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td class="main" valign="top"><b><?php echo ENTRY_CUSTOMER; ?></b></td> <td class="main"><?php echo tep_address_format($order->customer['format_id'], $order->customer, 1, '', '<br>'); ?></td> </tr> <tr> <td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '5'); ?></td> </tr> <tr> <td class="main"><b><?php echo ENTRY_TELEPHONE_NUMBER; ?></b></td> <td class="main"><?php echo $order->customer['telephone']; ?></td> </tr><?php// BOF: WebMakers.com Added: Downloads Controller - Extra order info?> <tr> <td class="main"><b><?php echo 'FAX #:'; ?></b></td> <td class="main"><?php echo $the_customers_fax; ?></td> </tr><?php// EOF: WebMakers.com Added: Downloads Controller?> <tr> <td class="main"><b><?php echo ENTRY_EMAIL_ADDRESS; ?></b></td> <td class="main"><?php echo '<a href="mailto:' . $order->customer['email_address'] . '"><u>' . $order->customer['email_address'] . '</u></a>'; ?></td> </tr> </table></td> <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td class="main" valign="top"><b><?php echo ENTRY_SHIPPING_ADDRESS; ?></b></td> <td class="main"><?php echo tep_address_format($order->delivery['format_id'], $order->delivery, 1, '', '<br>'); ?></td> </tr> </table></td> <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td class="main" valign="top"><b><?php echo ENTRY_BILLING_ADDRESS; ?></b></td> <td class="main"><?php echo tep_address_format($order->billing['format_id'], $order->billing, 1, '', '<br>'); ?></td> </tr> </table></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td><table border="0" cellspacing="0" cellpadding="2"><?php// BOF: WebMakers.com Added: Show Order Info?><!-- add Order # // --><tr><td class="main"><b>Order # </b></td><td class="main"><?php echo tep_db_input($oID); ?></td></tr><!-- add date/time // --><tr><td class="main"><b>Order Date & Time</b></td><td class="main"><?php echo tep_datetime_short($order->info['date_purchased']); ?></td></tr><?php// EOF: WebMakers.com Added: Show Order Info?> <tr> <td class="main"><b><?php echo ENTRY_PAYMENT_METHOD; ?></b></td> <td class="main"><?php echo $order->info['payment_method']; ?></td> </tr><?php if (tep_not_null($order->info['cc_type']) || tep_not_null($order->info['cc_owner']) || tep_not_null($order->info['cc_number'])) {?> <tr> <td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td class="main"><?php echo ENTRY_CREDIT_CARD_TYPE; ?></td> <td class="main"><?php echo $order->info['cc_type']; ?></td> </tr> <tr> <td class="main"><?php echo ENTRY_CREDIT_CARD_OWNER; ?></td> <td class="main"><?php echo $order->info['cc_owner']; ?></td> </tr> <tr> <td class="main"><?php echo ENTRY_CREDIT_CARD_NUMBER; ?></td> <td class="main"><?php echo $order->info['cc_number']; ?></td> </tr> <tr> <td class="main"><?php echo ENTRY_CREDIT_CARD_EXPIRES; ?></td> <td class="main"><?php echo $order->info['cc_expires']; ?></td> </tr><?php }?> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr class="dataTableHeadingRow"> <td class="dataTableHeadingContent" colspan="2"><?php echo TABLE_HEADING_PRODUCTS; ?></td> <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_PRODUCTS_MODEL; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TAX; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_PRICE_EXCLUDING_TAX; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_PRICE_INCLUDING_TAX; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TOTAL_EXCLUDING_TAX; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TOTAL_INCLUDING_TAX; ?></td> </tr><?php for ($i=0, $n=sizeof($order->products); $i<$n; $i++) { echo ' <tr class="dataTableRow">' . "\n" . ' <td class="dataTableContent" valign="top" align="right">' . $order->products[$i]['qty'] . ' x</td>' . "\n" . ' <td class="dataTableContent" valign="top">' . $order->products[$i]['name']; if (isset($order->products[$i]['attributes']) && (sizeof($order->products[$i]['attributes']) > 0)) { for ($j = 0, $k = sizeof($order->products[$i]['attributes']); $j < $k; $j++) { echo '<br><nobr><small> <i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value']; if ($order->products[$i]['attributes'][$j]['price'] != '0') echo ' (' . $order->products[$i]['attributes'][$j]['prefix'] . $currencies->format($order->products[$i]['attributes'][$j]['price'] * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) . ')'; echo '</i></small></nobr>'; } } echo ' </td>' . "\n" . ' <td class="dataTableContent" valign="top">' . $order->products[$i]['model'] . '</td>' . "\n" . ' <td class="dataTableContent" align="right" valign="top">' . tep_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n" . ' <td class="dataTableContent" align="right" valign="top"><b>' . $currencies->format($order->products[$i]['final_price'], true, $order->info['currency'], $order->info['currency_value']) . '</b></td>' . "\n" . ' <td class="dataTableContent" align="right" valign="top"><b>' . $currencies->format(tep_add_tax($order->products[$i]['final_price'], $order->products[$i]['tax']), true, $order->info['currency'], $order->info['currency_value']) . '</b></td>' . "\n" . ' <td class="dataTableContent" align="right" valign="top"><b>' . $currencies->format($order->products[$i]['final_price'] * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) . '</b></td>' . "\n" . ' <td class="dataTableContent" align="right" valign="top"><b>' . $currencies->format(tep_add_tax($order->products[$i]['final_price'], $order->products[$i]['tax']) * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) . '</b></td>' . "\n"; echo ' </tr>' . "\n"; }?> <tr> <td align="right" colspan="8"><table border="0" cellspacing="0" cellpadding="2"><?php for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) { echo ' <tr>' . "\n" . ' <td align="right" class="smallText">' . $order->totals[$i]['title'] . '</td>' . "\n" . ' <td align="right" class="smallText">' . $order->totals[$i]['text'] . '</td>' . "\n" . ' </tr>' . "\n"; }?> </table></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td class="main"><table border="1" cellspacing="0" cellpadding="5"> <tr> <td class="smallText" align="center"><b><?php echo TABLE_HEADING_DATE_ADDED; ?></b></td> <td class="smallText" align="center"><b><?php echo TABLE_HEADING_CUSTOMER_NOTIFIED; ?></b></td> <td class="smallText" align="center"><b><?php echo TABLE_HEADING_STATUS; ?></b></td> <td class="smallText" align="center"><b><?php echo TABLE_HEADING_COMMENTS; ?></b></td> </tr><?php $orders_history_query = tep_db_query("select orders_status_id, date_added, customer_notified, comments from " . TABLE_ORDERS_STATUS_HISTORY . " where orders_id = '" . tep_db_input($oID) . "' order by date_added"); if (tep_db_num_rows($orders_history_query)) { while ($orders_history = tep_db_fetch_array($orders_history_query)) { echo ' <tr>' . "\n" . ' <td class="smallText" align="center">' . tep_datetime_short($orders_history['date_added']) . '</td>' . "\n" . ' <td class="smallText" align="center">'; if ($orders_history['customer_notified'] == '1') { echo tep_image(DIR_WS_ICONS . 'tick.gif', ICON_TICK) . "</td>\n"; } else { echo tep_image(DIR_WS_ICONS . 'cross.gif', ICON_CROSS) . "</td>\n"; } echo ' <td class="smallText">' . $orders_status_array[$orders_history['orders_status_id']] . '</td>' . "\n" . ' <td class="smallText">' . nl2br(tep_db_output($orders_history['comments'])) . ' </td>' . "\n" . ' </tr>' . "\n"; } } else { echo ' <tr>' . "\n" . ' <td class="smallText" colspan="5">' . TEXT_NO_ORDER_HISTORY . '</td>' . "\n" . ' </tr>' . "\n"; }?> </table></td> </tr> <tr> <td class="main"><br><b><?php echo TABLE_HEADING_COMMENTS; ?></b></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '5'); ?></td> </tr> <tr><?php echo tep_draw_form('status', FILENAME_ORDERS, tep_get_all_get_params(array('action')) . 'action=update_order'); ?> <td class="main"><?php echo tep_draw_textarea_field('comments', 'soft', '60', '5'); ?></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td><table border="0" cellspacing="0" cellpadding="2"> <tr> <td><table border="0" cellspacing="0" cellpadding="2"> <tr> <td class="main"><b><?php echo ENTRY_STATUS; ?></b> <?php echo tep_draw_pull_down_menu('status', $orders_statuses, $order->info['orders_status']); ?></td> </tr> <tr> <td class="main"><b><?php echo ENTRY_NOTIFY_CUSTOMER; ?></b> <?php echo tep_draw_checkbox_field('notify', '', true); ?></td> <td class="main"><b><?php echo ENTRY_NOTIFY_COMMENTS; ?></b> <?php echo tep_draw_checkbox_field('notify_comments', '', true); ?></td> </tr> </table></td> <td valign="top"><?php echo tep_image_submit('button_update.gif', IMAGE_UPDATE); ?></td> </tr> </table></td> </form></tr> <tr> <td colspan="2" align="right"><?php echo '<a href="' . tep_href_link(FILENAME_ORDERS_INVOICE, 'oID=' . $HTTP_GET_VARS['oID']) . '" TARGET="_blank">' . tep_image_button('button_invoice.gif', IMAGE_ORDERS_INVOICE) . '</a> <a href="' . tep_href_link(FILENAME_ORDERS_PACKINGSLIP, 'oID=' . $HTTP_GET_VARS['oID']) . '" TARGET="_blank">' . tep_image_button('button_packingslip.gif', IMAGE_ORDERS_PACKINGSLIP) . '</a> <a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('action'))) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a> <a href="' . tep_href_link(FILENAME_EDIT_ORDERS, 'oID=' . $HTTP_GET_VARS['oID']) . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a>'; ?></td> </tr> <?php } else {?> <tr> <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> <td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td> <td align="right"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr><?php echo tep_draw_form('orders', FILENAME_ORDERS, '', 'get'); ?> <td class="smallText" align="right"><?php echo HEADING_TITLE_SEARCH . ' ' . tep_draw_input_field('oID', '', 'size="12"') . tep_draw_hidden_field('action', 'edit'); ?></td> </form></tr> <tr><?php echo tep_draw_form('status', FILENAME_ORDERS, '', 'get'); ?> <td class="smallText" align="right"><?php echo HEADING_TITLE_STATUS . ' ' . tep_draw_pull_down_menu('status', array_merge(array(array('id' => '', 'text' => TEXT_ALL_ORDERS)), $orders_statuses), '', 'onChange="this.form.submit();"'); ?></td> </form></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"> <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_CUSTOMERS; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ORDER_TOTAL; ?></td> <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_DATE_PURCHASED; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_STATUS; ?></td> <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ACTION; ?> </td> </tr><?php if (isset($HTTP_GET_VARS['cID'])) { $cID = tep_db_prepare_input($HTTP_GET_VARS['cID']);// $orders_query_raw = "select o.orders_id, o.customers_name, o.customers_id, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, ot.text as order_total from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . (int)$cID . "' and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and ot.class = 'ot_total' order by orders_id DESC";// } elseif (isset($HTTP_GET_VARS['status'])) {// $status = tep_db_prepare_input($HTTP_GET_VARS['status']);// $orders_query_raw = "select o.orders_id, o.customers_name, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, ot.text as order_total from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.orders_status_id = '" . (int)$status . "' and ot.class = 'ot_total' order by o.orders_id DESC";// } else {// $orders_query_raw = "select o.orders_id, o.customers_name, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, ot.text as order_total from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and ot.class = 'ot_total' order by o.orders_id DESC";// } // fedex $orders_query_raw = "select o.orders_id, o.customers_name, o.customers_id, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, o.fedex_tracking, ot.text as order_total from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . (int)$cID . "' and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and ot.class = 'ot_total' order by orders_id DESC"; } elseif (isset($HTTP_GET_VARS['status'])) { $status = tep_db_prepare_input($HTTP_GET_VARS['status']); $orders_query_raw = "select o.orders_id, o.customers_name, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, o.fedex_tracking, ot.text as order_total from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.orders_status_id = '" . (int)$status . "' and ot.class = 'ot_total' order by o.orders_id DESC"; } else { $orders_query_raw = "select o.orders_id, o.customers_name, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name, o.fedex_tracking, ot.text as order_total from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and ot.class = 'ot_total' order by o.orders_id DESC"; }// fedex eof $orders_split = new splitPageResults($HTTP_GET_VARS['page'], MAX_DISPLAY_SEARCH_RESULTS, $orders_query_raw, $orders_query_numrows); $orders_query = tep_db_query($orders_query_raw); while ($orders = tep_db_fetch_array($orders_query)) { if ((!isset($HTTP_GET_VARS['oID']) || (isset($HTTP_GET_VARS['oID']) && ($HTTP_GET_VARS['oID'] == $orders['orders_id']))) && !isset($oInfo)) { $oInfo = new objectInfo($orders); } if (isset($oInfo) && is_object($oInfo) && ($orders['orders_id'] == $oInfo->orders_id)) { echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit') . '\'">' . "\n"; } else { echo ' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID')) . 'oID=' . $orders['orders_id']) . '\'">' . "\n"; }?> <td class="dataTableContent"><?php echo '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $orders['orders_id'] . '&action=edit') . '">' . tep_image(DIR_WS_ICONS . 'preview.gif', ICON_PREVIEW) . '</a> ' . $orders['customers_name']; ?></td> <td class="dataTableContent" align="right"><?php echo strip_tags($orders['order_total']); ?></td> <td class="dataTableContent" align="center"><?php echo tep_datetime_short($orders['date_purchased']); ?></td> <td class="dataTableContent" align="right"><?php echo $orders['orders_status_name']; ?></td> <td class="dataTableContent" align="right"><?php if (isset($oInfo) && is_object($oInfo) && ($orders['orders_id'] == $oInfo->orders_id)) { echo tep_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID')) . 'oID=' . $orders['orders_id']) . '">' . tep_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?> </td> </tr><?php }?> <tr> <td colspan="5"><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td class="smallText" valign="top"><?php echo $orders_split->display_count($orders_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, $HTTP_GET_VARS['page'], TEXT_DISPLAY_NUMBER_OF_ORDERS); ?></td> <td class="smallText" align="right"><?php echo $orders_split->display_links($orders_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $HTTP_GET_VARS['page'], tep_get_all_get_params(array('page', 'oID', 'action'))); ?></td> </tr> </table></td> </tr> </table></td><?php $heading = array(); $contents = array(); switch ($action) { case 'delete': $heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_DELETE_ORDER . '</b>'); $contents = array('form' => tep_draw_form('orders', FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=deleteconfirm')); $contents[] = array('text' => TEXT_INFO_DELETE_INTRO . '<br><br><b>' . $cInfo->customers_firstname . ' ' . $cInfo->customers_lastname . '</b>'); $contents[] = array('text' => '<br>' . tep_draw_checkbox_field('restock') . ' ' . TEXT_INFO_RESTOCK_PRODUCT_QUANTITY); $contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'); break; default: if (isset($oInfo) && is_object($oInfo)) { $heading[] = array('text' => '<b>[' . $oInfo->orders_id . '] ' . tep_datetime_short($oInfo->date_purchased) . '</b>'); // $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit') . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=delete') . '">' . tep_image_button('button_delete.gif', IMAGE_DELETE) . '</a>');// $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_ORDERS_INVOICE, 'oID=' . $oInfo->orders_id) . '" TARGET="_blank">' . tep_image_button('button_invoice.gif', IMAGE_ORDERS_INVOICE) . '</a> <a href="' . tep_href_link(FILENAME_ORDERS_PACKINGSLIP, 'oID=' . $oInfo->orders_id) . '" TARGET="_blank">' . tep_image_button('button_packingslip.gif', IMAGE_ORDERS_PACKINGSLIP) . '</a>');// $contents[] = array('text' => '<br>' . TEXT_DATE_ORDER_CREATED . ' ' . tep_date_short($oInfo->date_purchased)); // begin fedex mod // first determine whether this is on the test or production server to send // in the url (there may be a better place to do this...) $value_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_SHIPPING_FEDEX1_SERVER'"); $value = tep_db_fetch_array($value_query); $fedex_gateway = $value['configuration_value']; // check for a fedex tracking number in the order record// if yes tracking number, show "fedex label," "track" and "cancel" options $fedex_tracking = $oInfo->fedex_tracking; // get the current order status $check_fedex_status_query = tep_db_query("select orders_status from " . TABLE_ORDERS . " where orders_id = '" . $oInfo->orders_id . "'"); $check_fedex_status = tep_db_fetch_array($check_fedex_status_query); if ($fedex_tracking) { // display the label //$contents[] = array('align' => 'center', 'text' => '<a href="fedex_popup.php?num=' . $fedex_tracking . '&oID=' . $oInfo->orders_id . '">' . tep_image_button('button_fedex_label.gif', IMAGE_ORDERS_FEDEX_LABEL) . '</a>'); // display the label (fix applied 10-12-04) $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link('fedex_popup.php', 'oID=' .$oInfo->orders_id . '&num=' . $fedex_tracking) . '">' . tep_image_button('button_fedex_label.gif', IMAGE_ORDERS_FEDEX_LABEL) . '</a>'); // track the package (no gateway needs to be specified) $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_TRACK_FEDEX, 'oID=' .$oInfo->orders_id . '&num=' . $fedex_tracking) . '&fedex_gateway=track">' . tep_image_button('button_track.gif', IMAGE_ORDERS_TRACK) . '</a>'); // cancel the request // Next 2 lines: fix applied 10-12-04 $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_SHIP_FEDEX, 'oID=' .$oInfo->orders_id . '&num=' . $fedex_tracking . '&action=cancel&fedex_gateway=' . $fedex_gateway) . '">' . tep_image_button('button_cancel_shipment.gif', IMAGE_ORDERS_CANCEL_SHIPMENT) . '</a>'); //$contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_SHIP_FEDEX, 'oID=' .$oInfo->orders_id . '&num=' . $fedex_tracking . '&action=cancel&fedex_gateway=' . $fedex_gateway) . '" onClick="return(window.confirm(\'Cancel shipment of order number ' . $oInfo->orders_id . '?\'));">' . tep_image_button('button_cancel_shipment.gif', IMAGE_ORDERS_CANCEL_SHIPMENT) . '</a>'); }// if no fedex tracking number, AND if the order has not been manually marked "delivered,"// display the "ship" button // elseif ((!$fedex_tracking) && (($check_status['orders_status']) != 3)) { elseif ((!$fedex_tracking) && (($check_fedex_status['orders_status']) != 3)) { $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_SHIP_FEDEX, 'oID=' .$oInfo->orders_id . '&action=new&status=3') . '">' . tep_image_button('button_ship.gif', IMAGE_ORDERS_SHIP) . '</a>'); } // end fedex if (tep_not_null($oInfo->last_modified)) $contents[] = array('text' => TEXT_DATE_ORDER_LAST_MODIFIED . ' ' . tep_date_short($oInfo->last_modified)); $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit') . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . tep_href_lin Quote Link to comment Share on other sites More sharing options...
bwstyle Posted October 20, 2004 Share Posted October 20, 2004 Hi guys, when I print the label out (on plain paper) as part of my test, it prints with the "print" and "back" buttons at the bottom, is this ok? Will they print below the fedex label when I print them out? Or is there a way to fix this? Quote Link to comment Share on other sites More sharing options...
spoot Posted October 20, 2004 Author Share Posted October 20, 2004 Hi guys, when I print the label out (on plain paper) as part of my test, it prints with the "print" and "back" buttons at the bottom, is this ok? Will they print below the fedex label when I print them out? Or is there a way to fix this? <{POST_SNAPBACK}> FedEx doesn't care about anything that's printed below the label itself. Their "official" labels have some gobbledygook down there as well. Quote Link to comment Share on other sites More sharing options...
Goanna Posted October 20, 2004 Share Posted October 20, 2004 Spoot, I was just wondering if you gave any more thought to the test label script. I mentioned it in the other thread before it got deleted. Any chance you are working on that? I ask only because my store is now live so hainvg to sit and make new customers for each transaction gets to be quite tedious. Quote Link to comment Share on other sites More sharing options...
HTMLguru2 Posted October 27, 2004 Share Posted October 27, 2004 Michael, From My last post...thermal printer integration... I came to a better solution. I now print the label and invoice on the same sheet and configured it to properly layout on FedEx form # 146525 which they supply for free. This way the leabel peels off and can be stuck to the package. Works great. That not why I'm posting today. Have you had any issues with closing out your end of day reports (or manifest) to FedEx. I don't see in the contribution were a string is sent to FedEx when printing the manifest. Regards, Jeff Quote Link to comment Share on other sites More sharing options...
spoot Posted October 29, 2004 Author Share Posted October 29, 2004 Spoot, I was just wondering if you gave any more thought to the test label script. I mentioned it in the other thread before it got deleted. Any chance you are working on that? I ask only because my store is now live so hainvg to sit and make new customers for each transaction gets to be quite tedious. <{POST_SNAPBACK}> Billy - I'm sorry but I haven't given much thought at all to this - in fact, I hardly remember what we discussed. If you could explain the test label script business again, that would be great. I won't have much time for it, but at least it'll be captured - Thanks Michael Quote Link to comment Share on other sites More sharing options...
bbeban Posted October 29, 2004 Share Posted October 29, 2004 Hi, sorry if I'm being a pest, but I was wondering if you know when you'll be able to take another look at my orders.php and see if we can't get this "kicked to the login screen" issue resolved? Thanks -- Bob Quote Link to comment Share on other sites More sharing options...
spoot Posted October 29, 2004 Author Share Posted October 29, 2004 Michael, From My last post...thermal printer integration... I came to a better solution. I now print the label and invoice on the same sheet and configured it to properly layout on FedEx form # 146525 which they supply for free. This way the leabel peels off and can be stuck to the package. Works great. That not why I'm posting today. Have you had any issues with closing out your end of day reports (or manifest) to FedEx. I don't see in the contribution were a string is sent to FedEx when printing the manifest. Regards, Jeff <{POST_SNAPBACK}> I like that sticker-label business, good idea! Regarding the manifest: is this something that FedEx is expecting at the end of the day? This contribution is set up to send a ship request on a per-package basis; but that's the only time FedEx is contacted. I see there's an "end of day close" transaction in the API. There are no parameters in it though... does that just tell FedEx that you're done for the day? It'd probably be easy enough to add to the manifest, just an "end of day" button of some kind. Michael Quote Link to comment Share on other sites More sharing options...
bwstyle Posted November 1, 2004 Share Posted November 1, 2004 I am wondering how difficult it would be to use flat shipping with this module instead of using the rating engine? I might have our programmers make that change for a request we received, and just wanted to see how involved the process might be. As usual, thanks for the contibution, and for supporting it. Quote Link to comment Share on other sites More sharing options...
Goanna Posted November 1, 2004 Share Posted November 1, 2004 Billy - I'm sorry but I haven't given much thought at all to this - in fact, I hardly remember what we discussed. If you could explain the test label script business again, that would be great. I won't have much time for it, but at least it'll be captured - Thanks Michael <{POST_SNAPBACK}> I was mentioning if it was at all possible to have fedex provide their test label data in CSV so that it could be imported into the database, and then maybe a script could be made that would allow people to easily print the test labels. Instead of having to make a fake customer with a test label address from fedex, then make a fake order, then print the test label, delete the order, edit the fake customers address, start process over, etc, etc. If anyone wanted to offer all the different shipping options that fedex can provide, it would be a real pain in the arse having to do it using the above method. Quote Link to comment Share on other sites More sharing options...
Guest Posted November 3, 2004 Share Posted November 3, 2004 I am testing this module today for the first time. I have an offical Fedex account number...After installation...received this error: "This transaction could not be completed. Please note the error message below. ERROR: FedEx Return Error 110A : The login failed " Is the Fedex account ID same as the Fdex labeles(bill to Sender ID)? DO I need to configure Fedex Meter ID? Any help is greatly appreciated!!!! Thank you in advance! Jeff Quote Link to comment Share on other sites More sharing options...
spoot Posted November 3, 2004 Author Share Posted November 3, 2004 I am testing this module today for the first time. I have an offical Fedex account number...After installation...received this error: "This transaction could not be completed. Please note the error message below. ERROR: FedEx Return Error 110A : The login failed " Is the Fedex account ID same as the Fdex labeles(bill to Sender ID)? DO I need to configure Fedex Meter ID? Any help is greatly appreciated!!!! Thank you in advance! Jeff <{POST_SNAPBACK}> Jeff - You've got to talk to FedEx & have them add your number to their test server. I believe the contact information is in readme.txt. Later, when you go live, you'll need to talk to them again about adding your number to their production server. They'll want to see labels printed from your system. Michael Quote Link to comment Share on other sites More sharing options...
Guest Posted November 4, 2004 Share Posted November 4, 2004 I am having problem with login into fedex account. I am very sure that the fedex account number is correct. What am I missing? Please help. Thanks in advance. Quote Link to comment Share on other sites More sharing options...
Guest Posted November 4, 2004 Share Posted November 4, 2004 I am having problem with login into fedex account. I am very sure that the fedex account number is correct. What am I missing? Please help. Thanks in advance. <{POST_SNAPBACK}> nevermind. didn't see the previous reply before post..sorry Quote Link to comment Share on other sites More sharing options...
sam_a Posted November 9, 2004 Share Posted November 9, 2004 Would it be possible to modify FedEx Automated Labels to handle DHL labels? http://www.oscommerce.com/community/contri...,2/search,label Quote Link to comment Share on other sites More sharing options...
FifthTimeRegistering Posted November 11, 2004 Share Posted November 11, 2004 I was added to the test server and I still get this error This transaction could not be completed. Please note the error message below. ERROR: FedEx Return Error 5012 : Account number not in database any ideas?? Im sure I just missed a step...but where? <{POST_SNAPBACK}> That sounds like question for FedEx Customer support. There are several things you need to do to get into there database. In the USA the number is (800) 238 6960. Good Luck Restaurant Menus - Free Quote The Grub Club® - Restaurant Menus Link to comment Share on other sites More sharing options...
bwstyle Posted November 12, 2004 Share Posted November 12, 2004 This mod is just awesome...it works so well, thanks! Is theer a way to make this read from a rate table? I have negotiated some better rates, and need to download my own rate table. Quote Link to comment Share on other sites More sharing options...
spoot Posted November 15, 2004 Author Share Posted November 15, 2004 Would it be possible to modify FedEx Automated Labels to handle DHL labels? http://www.oscommerce.com/community/contri...,2/search,label <{POST_SNAPBACK}> I've got the DHL API. It's a totally different animal, so the modification would have to be pretty severe. I'm hoping to find a sponsor to make it happen, I think it's gonna be a pile of work. Quote Link to comment Share on other sites More sharing options...
spoot Posted November 15, 2004 Author Share Posted November 15, 2004 This mod is just awesome...it works so well, thanks! Is theer a way to make this read from a rate table? I have negotiated some better rates, and need to download my own rate table. <{POST_SNAPBACK}> I'm glad you like it, thank you! The labels contribution doesn't do anything with the shipping price - that's all in FedEx Realtime Quotes. Try installing one of the table rate shipping contributions & using that as your default shipping option. Michael Quote Link to comment Share on other sites More sharing options...
jswope Posted November 18, 2004 Share Posted November 18, 2004 Hi michael, Hey I wanted to say thanks again! - If you remember, I installed this FedEx contrib a couple months ago. Since then, it has been working great with real orders and real customers ( www.BalBots.com ). REALLY slick- I love it! :) I do have a question, though. I have a had a few customers that need an additional address line - for a mail stop or department number. When this happens, it's a real pain because I don't really have any way to get it in the system to get it on the label! It seems to be a general limitation with OSC, but even if I find a way to fix that, I'm worried that this contrib won't send the extra line to FedEx for the label. Do you have any suggestions? Keep up the good work :thumbsup: John Quote Link to comment Share on other sites More sharing options...
spoot Posted November 20, 2004 Author Share Posted November 20, 2004 Hi michael,Hey I wanted to say thanks again! - If you remember, I installed this FedEx contrib a couple months ago. Since then, it has been working great with real orders and real customers ( www.BalBots.com ). REALLY slick- I love it! :) I do have a question, though. I have a had a few customers that need an additional address line - for a mail stop or department number. When this happens, it's a real pain because I don't really have any way to get it in the system to get it on the label! It seems to be a general limitation with OSC, but even if I find a way to fix that, I'm worried that this contrib won't send the extra line to FedEx for the label. Do you have any suggestions? Keep up the good work :thumbsup: John <{POST_SNAPBACK}> John - I'm glad you like it! FedEx only accepts 2 address lines, which I think is the same for OSC, so the limitation probably goes all the way through the system. Is that right? Two lines? Anyway - that's FedEx's limitation. If that's a limitation in OSC (me too lazy to check) & it doesn't work in this thing, let me know - I think it should though. Michael Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.