Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

moonlitsun

Archived
  • Posts

    225
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by moonlitsun

  1. Unfortunately, it doesn't appear that the Google Checkout IPN supports inbound data updates to osCommerce Admin. When changing status within Google Checkout's admin interface (ie to CHARGE, CANCEL, etc), this does not update within the osC admin side. Also, the EXTRAS included by ski2bbad within version 1.2.2 don't appear to successfully import the Google Checkout order ID into osC. Any thoughts or success on these so far?
  2. This is probably something you'd want to skin using CSS layering. Is that what you had in mind?
  3. Hehe thanks for the insight. :) We're speaking with UPS and Fedex (they actually have API/Web Application divisions) as we iron out some streaming technology. Have you looked at the table rates loaded into UPS for osC lately? They should be compared to some of the recent increases in fees updated by both UPS AND Fedex (due to fuel costs, no doubt). We decided not to increase the table rates since it was negligible. We'll be sure to keep in touch with you closer on osC-related activity! ;)
  4. Glad to see things going so well! Actually, we're doing a whole re-write of the entire osC shipping module system while trying to incorporate individual shipping module contributions (ie UPS, FedEx, USPS, etc). The idea around this is to use MVS architecture and its functionality while utilizing a number of streaming shipping interfaces. We'll drop you a note sometime soon as to our progress. At the moment, we're finishing up a robust, admin-side search engine (incorporates orders, customers, and virtually every related dbase field). Right now, we're speaking with both UPS and FedEx directly about integrating APIs to populate the order tracking field we've installed. Do you have any experience with API at this stage using MVS? Basically, we'll be using API technology to automatically populate tracking numbers and offer real-time rates for UPS and FedEx (DHL is still a question mark for us, as we aren't a big fan of them as a carrier). Meanwhile, we are building a vendor-based zipcode origin for UPS/FedEx calculations. I believe you have successfully upgraded your codebase with this functionality, but we haven't taken a look lately at it yet. If no one has done it yet, we intend to release the ziporigin by vendor as a unique add-on contribution to the osC community. As we all know, the default osC engine is designed around a STOCKING retailer shipping from one location. However, we all know how fast the B2B online retailer marketplace has evolved. ;) JIM.... great work! Keep it up. Both you and Craig are doing a phenomenal job on this contrib. It seems like such a valuable (universal) add-on that the osC Dev team may want to consider it for MS3. Have they been approached?
  5. Stephanie, We didn't know you were so actively involved in the osC Community! VERY, VERY cool. It's been a while since we've posted here, but it's great to see everyone coming together for a great cause (aka Craig, etc). As our org has more time, we'll be growing MUCH more active in the osC contribution arena. At the moment, we're trying to work with MS3 (quite interesting stuff). Craig, Stephanie.....how stable are you finding the latest version of MVS to be these days?
  6. Hello, osC! Here is a relative nuisance problem that I am sure more than one osC site experiences with the FEATURED PRODUCTS contribution: If your site offers more than 10,000 products, the load time via admin in order to select a new FEATURED PRODUCT becomes quite slow and can lag the system. Any thoughts or input about how this issue might be resolved? We thought perhaps some sort of paginated output of sorted items that could be flagged as a featured item, rather than a FULL index sort via dropdown selection (doesnt seem efficient for a site with large inventory feeds). If there is a contribution or simple way to address this common problem, all responses are appreciated. :) THX
  7. Greetz, Hello, and thx to the original author who kindly incorporated Google Sitemap into osC! Naturally, none of us are guaranteed to see any kind of measurable results. However, we all know this is pretty revolutionary thinking on Google's part to proactively pull data from active e-commerce websites. That being said, we'll be happy to update everyone with our Google index visibility in the days and weeks ahead. 3,700+ products and counting, with 2,000+ more to add next week. I'll be curious to see how the sitemap communicates non-visible pricing ;) Thx
  8. Jim, Craig, and Co.... You may have forgotten to include one bit of code: a limiter, or something similar to the Individual Shipping Rates contribution. The idea is that in many cases since products are being dropshipped from any number of vendors, the store owner will not want to allow the customer to choose from multiple shipping options. Example: http://true-mvs.sourceforge.net/product_in...?products_id=25 When adding the keyboard to the cart and checking out, all the installed shipping modules show up. I think the very nature of the new and improved MVS should naturally limit itself to the "BEST WAY" shipping, which would basically tie a shipping method chosen from a dropdown within the admin screen. Again, the best working model for this is Individual Shipping Prices. IMHO....good luck!
  9. Rick, Nope.....didnt disappear. However, we decided to move forward with it offline. Thx
  10. Craig, Try this one: http://www.oscommerce.com/community/contri...earch,estimator I may be wrong, you might need to do a little research and ask MadMacGames directly if they hard-coded it, or if they used a contribution. I believe they simply skinned a contribution already introduced. Sorry I dont have more info! Thx
  11. Craig, Another idea to consider: There is a current, working contrib out there for a shipping estimator built into the shopping cart page itself. It might be a great add-on to make a multizip origin, MVS friendly version of the shipping calculator in the cart. Here is a working example of the shipping calc in cart: http://www.madmacgames.com/mycart Be sure to add something to your cart in order to view the calculator at work. This would be a great compliment to the new and improved, MVS system. IMHO.... Thx (we've been quite busy with other custom work....auto SKU numbering system, auto image renaming, QTY update notifications, etc)
  12. If anyone wants to see the rotating banner manager in place, feel free to visit it in action HERE: http://dropshipdirect.com/warehouse/index.php Just take a look at the ads in the right column! If there is anything I can do to help, please let me know. This is a very effective contribution.
  13. Craig, How are things looking? I've got a pro on our team who is now working on these kinds of projects for us. We just cleaned up the attribute functionality and now are going to focus again on combining MVS and Enhanced vendors to support Multizip origins. If possible, I may forward him your contact info in case he needs to rack your brain. Thx
  14. Kopycat, Stick with version 2.1 for now. I believe Joey is still doing some more work on instructions and coding for version 3. The major diff between the two versions is that version 3 attempts to offer editable Attribute sets. Thx
  15. Just a quick note to the osComm dev community that has been working with Joey's useful Attribute Set contribution: We've successfully developed the code to allow for MULTIPLE ATTRIBUTE SETs on any given product, successfully installed on a stable version of Attribute Sets 2.1. You may want to avoid version 3 until something cleaner is in place! Thx
  16. Ack..nevermind! I figured it out. Bad } else { syntax.
  17. Quick question: We just installed the latest version of PayPal IPN and are now unable to view our orders. Apparently, we are getting the following error: Parse error: parse error, unexpected $ in /home/dropship/public_html/warehouse/admin/orders.php on line 592 Please keep in mind that our admin/orders.php page is heavily modified to include tracking numbers, custom packing slip, and a couple other bells and whistles. Line 592 happens to be the last entry of the file, so we're not sure which tags we may have missed. While I realize this will be a long thread, here is our entire admin/orders.php script: <?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'] : ''); // Begin mod for shipping info if (tep_not_null($action)) { switch ($action) { //begin PayPal_Shopping_Cart_IPN case 'accept_order': include(DIR_FS_CATALOG_MODULES.'payment/paypal/admin/AcceptOrder.inc.php'); break; //end PayPal_Shopping_Cart_IPN 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']); $tracking_no = tep_db_prepare_input($HTTP_POST_VARS['tracking_no']); $ship_date= tep_db_prepare_input($HTTP_POST_VARS['ship_date']); $delivery_date = tep_db_prepare_input($HTTP_POST_VARS['delivery_date']); $order_updated = false; $check_status_query = tep_db_query("select customers_name, customers_email_address, orders_status, date_purchased, ship_date, tracking_no, delivery_date from " . TABLE_ORDERS . " where orders_id = '" . (int)$oID . "'"); $check_status = tep_db_fetch_array($check_status_query); $display_ship_date = $check_status['ship_date']; $display_tracking_no = $check_status['tracking_no']; $display_delivery_date = $check_status['delivery_date']; // End mod for shipping info // Begin mod for shipping info if (tep_not_null($tracking_no)) { tep_db_query("update " . TABLE_ORDERS . " set tracking_no = '" . tep_db_input($tracking_no) . "', last_modified = now() where orders_id = '" . (int)$oID . "'"); } if (tep_not_null($ship_date)) { tep_db_query("update " . TABLE_ORDERS . " set ship_date = '" . tep_db_input($ship_date) . "', last_modified = now() where orders_id = '" . (int)$oID . "'"); } if (tep_not_null($delivery_date)){ tep_db_query("update " . TABLE_ORDERS . " set delivery_date = '" . tep_db_input($delivery_date) . "', last_modified = now() where orders_id = '" . (int)$oID . "'"); } if ( ($check_status['orders_status'] != $status) || tep_not_null($comments)) { tep_db_query("update " . TABLE_ORDERS . " set orders_status = '" . tep_db_input($status) . "', last_modified = now() where orders_id = '" . (int)$oID . "'"); $customer_notified = '0'; if (isset($HTTP_POST_VARS['notify']) && ($HTTP_POST_VARS['notify'] == 'on')) { $notify_comments = ''; if (isset($HTTP_POST_VARS['notify_comments']) && ($HTTP_POST_VARS['notify_comments'] == 'on')) { $notify_comments = sprintf(EMAIL_TEXT_COMMENTS_UPDATE, $comments) . "\n\n"; } // if status is Shipped or Delivered include tracking number and ship date in e-mail if ($status == '3'){ $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]) . "\n\n" . EMAIL_TEXT_SHIP_DATE . $ship_date . "\n\n" . EMAIL_TEXT_TRACKING_NO . $tracking_no . "\n\n" . EMAIL_TEXT_QUESTIONS; tep_mail($check_status['customers_name'], $check_status['customers_email_address'], EMAIL_TEXT_SUBJECT, $email, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); $customer_notified = '1'; } elseif ($status == '4'){ $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]) . "\n\n" . EMAIL_TEXT_SHIP_DATE . $display_ship_date . "\n\n" . EMAIL_TEXT_TRACKING_NO . $display_tracking_no . "\n\n" . EMAIL_TEXT_DELIVERY_DATE . $delivery_date . "\n\n" . EMAIL_TEXT_FEEDBACK . "\n\n" . EMAIL_TEXT_QUESTIONS; tep_mail($check_status['customers_name'], $check_status['customers_email_address'], EMAIL_TEXT_SUBJECT, $email, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); $customer_notified = '1'; } // else don't include them else { $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'; } } // End mod for shipping info 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'); } } 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> <?php //begin PayPal_Shopping_Cart_IPN if (strtolower($order->info['payment_method']) == 'paypal' && isset($HTTP_GET_VARS['referer']) && $HTTP_GET_VARS['referer'] == 'ipn'){ ?> <td class="pageHeading" align="right"><?php echo '<a href="' . tep_href_link(FILENAME_PAYPAL, tep_get_all_get_params(array('action','oID','referer'))) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td> <?php } else { ?> <td class="pageHeading" align="right"><?php echo '<a href="' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('action','referer'))) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td> <?php }//else not paypal //end PayPal_Shopping_Cart_IPN ?> </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> <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> <?php //begin PayPal_Shopping_Cart_IPN if (strtolower($order->info['payment_method']) == 'paypal') { include(DIR_FS_CATALOG_MODULES . 'payment/paypal/admin/TransactionSummaryLogs.inc.php'); } else { ?> <td><table border="0" cellspacing="0" cellpadding="2"> <tr> <td class="main"><b><?php echo ENTRY_PAYMENT_METHOD; ?></b></td> <td class="main"><?php echo $order->info['payment_method']; ?></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <?php }//else not paypal //end PayPal_Shopping_Cart_IPN if (tep_not_null($order->shipping['ship_date'])) { ?> <tr> <td class="main"><b><?php echo ENTRY_SHIP_DATE; ?></b></td> <td class="main"><?php echo $order->shipping['ship_date']; ?></td> </tr> <?php } if (tep_not_null($order->shipping['tracking_no'])) { ?> <tr> <td class="main"><b><?php echo ENTRY_TRACKING_NO; ?></b></td> <td class="main"><?php echo $order->shipping['tracking_no']; ?></td> </tr> <?php } if (tep_not_null($order->shipping['delivery_date'])) { ?> <tr> <td class="main"><b><?php echo ENTRY_DELIVERY_DATE; ?></b></td> <td class="main"><?php echo $order->shipping['delivery_date']; ?></td> </tr> <?php } ?> <?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++) { $returns_check_query = tep_db_query("SELECT r.rma_value, rp.products_id FROM " . TABLE_RETURNS . " r, " . TABLE_RETURNS_PRODUCTS_DATA . " rp where r.returns_id = rp.returns_id and r.order_id = '" . $oID . "' and rp.products_id = '" . $order->products[$i]['id'] . "' "); if (!tep_db_num_rows($returns_check_query)){ $return = ' '; } else { $returns = tep_db_fetch_array($returns_check_query); $return_link = '<a href=' . tep_href_link(FILENAME_RETURNS, 'cID=' . $returns['rma_value']) . '><font color=red><b><i>Returns</b></i></font></a>'; } 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'] . ' ' . $return_link; 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 class="main"><b><?php echo ENTRY_TRACKING_NO;?></b><?php echo tep_draw_input_field('tracking_no'); ?></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '11'); ?></td> </tr> <tr> <td class="main"><b><?php echo ENTRY_SHIP_DATE;?></b><?php echo tep_draw_input_field('ship_date'); ?></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td class="main"><b><?php echo ENTRY_DELIVERY_DATE;?></b><?php echo tep_draw_input_field('delivery_date'); ?></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', '', false); ?></td> <td class="main"><b><?php echo ENTRY_NOTIFY_COMMENTS; ?></b> <?php echo tep_draw_checkbox_field('notify_comments', '', false); ?></td> </tr> </table></td> <td valign="top"><?php echo tep_image_submit('button_update.gif', IMAGE_UPDATE); ?></td> </tr> </table></td> </form></tr> <tr> <?php //begin PayPal_Shopping_Cart_IPN if (strtolower($order->info['payment_method']) == 'paypal' && isset($HTTP_GET_VARS['referer']) && $HTTP_GET_VARS['referer'] == 'ipn'){ ?> <td colspan="2" align="right"><?php echo '<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_INVOICE, 'oID=' . $HTTP_GET_VARS['oID']) . '" TARGET="_blank">' . tep_image_button('button_invoice.gif', IMAGE_ORDERS_INVOICE) . '</a>'; ?> <?php echo '<a href="http://trkcnfrm1.smi.usps.com/netdata-cgi/db2www/cbd_243.d2w/output?CAMEFROM=OK&strOrigTrackNum=' . $order->shipping['tracking_no'] . '" TARGET="_blank">' . tep_image_button('button_labeltracking.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="https://wwwapps.ups.com/WebTracking/processInputRequest?HTMLVersion=5.0&loc=en_US&Requester=UPSHome&tracknum=' . $order->shipping['tracking_no'] . '&track.x=22&track.y=12" TARGET="_blank">' . tep_image_button('button_upstrack.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="http://www.fedex.com/Tracking?tracknumbers=' . $order->shipping['tracking_no'] . '&action=track&language=english&cntry_code=us&mps=y&ascend_header=1&imageField=Track" TARGET="_blank">' . tep_image_button('button_fedextrack.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="http://track.dhl-usa.com/TrackByNbr.asp" TARGET="_blank">' . tep_image_button('button_dhltrack.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="' . tep_href_link(FILENAME_PAYPAL, tep_get_all_get_params(array('action','oID','referer'))) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td> <?php } else { ?> <td colspan="2" align="right"><?php echo '<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_INVOICE, 'oID=' . $HTTP_GET_VARS['oID']) . '" TARGET="_blank">' . tep_image_button('button_invoice.gif', IMAGE_ORDERS_INVOICE) . '</a>'; ?> <?php echo '<a href="http://trkcnfrm1.smi.usps.com/netdata-cgi/db2www/cbd_243.d2w/output?CAMEFROM=OK&strOrigTrackNum=' . $order->shipping['tracking_no'] . '" TARGET="_blank">' . tep_image_button('button_labeltracking.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="https://wwwapps.ups.com/WebTracking/processInputRequest?HTMLVersion=5.0&loc=en_US&Requester=UPSHome&tracknum=' . $order->shipping['tracking_no'] . '&track.x=22&track.y=12" TARGET="_blank">' . tep_image_button('button_upstrack.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="http://www.fedex.com/Tracking?tracknumbers=' . $order->shipping['tracking_no'] . '&action=track&language=english&cntry_code=us&mps=y&ascend_header=1&imageField=Track" TARGET="_blank">' . tep_image_button('button_fedextrack.gif', IMAGE_ORDERS_TRACKING) . '</a>'; ?> <?php echo '<a href="http://track.dhl-usa.com/TrackByNbr.asp" TARGET="_blank">' . tep_image_button('button_dhltrack.gif', IMAGE_ORDERS_TRACKING) . '</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> <?php }//else not paypal //end PayPal_Shopping_Cart_IPN ?> <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"; } $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
  18. Hey Craig, Long time no see! It has been a number of weeks since the new thread was started....has this officially become a dead project? Please let me know so I can plan accordingly (may recruit some talent). Thx, -Codi
  19. Joey, Favor: can you please give me a HINT as to what kind of code we'd want to insert into the PHP to allow a SELECT option of MULTIPLE attribute sets? Thx!
  20. Sounds good, Joey! I'll try that out and see if a simple menu-type dropdown format will allow a number of sets to show up correctly. I will make sure to post my results here in the forum thread.
  21. Joey, Hey, Codi here! Hope everything is going well on MVS. Quick Q for you re: Attribute Sets: Is there any kind of functionality that would allow for you to select MULTIPLE attribute sets from the Admin/categories.php dropdown? Obviously, that would be especially helpful for products that require more than one kind of attribute set (i.e. one for colors, another for size). Let me know your thoughts! Thx
  22. Craig, Joey, et al... Our team has pretty much modded osCommerce so much that one of our sites looks NOTHING like the barebones install: http://www.ecopeia.com/osc-ecopeia/catalog/ We plan to integrate a multi-zipcode origin Enchanced MVS in both this and our other sites. Just keep us posted! Keep it up. Thx, -Codi
  23. How we doing, guys? We just brought on a front-end design guru, but we still dont have the PHP scripting master that knows how this zipcode functionality should be integrated. However, if we encounter some talent, I'll let you know so we can help you move this code forward. Thx, -Codi
  24. Craig, Glad you like the site. :) Keep me posted on your continued conversation with Joey. We all could benefit from a more intuitive shipping cost module. thx, -Codi
×
×
  • Create New...