redbugweb Posted April 23, 2008 Posted April 23, 2008 My cart was working great earlier today. Then I installed an add-on to take off a % discount based on order total. Tested it and the discount works great. Problem is now my orders don't show up under the customer history when the customer is logged in or under admin orders. The only way to see the order in admin is to enter the order # and then it does bring it up. I can't get it to show at all logged in as a customer. The order rec'd emails go to the customer and to the email I specified for a copy to go to. Any idea what happened and how I can fix it?? Thanks!
markg-uk Posted April 24, 2008 Posted April 24, 2008 Well - a start would be to say what contribution you have installed. First thing would be to go through the contribution instatuctions to make sure you've not missed anything or made a mistake. Maybe there is a support thread for it Maybe look at the database (orders and orders_products tables) to see if there is anything different for entries that do show on your order history to ones that don't
redbugweb Posted April 24, 2008 Author Posted April 24, 2008 Price Sensitive Discount http://addons.oscommerce.com/info/204 How do I look at the database?
redbugweb Posted April 24, 2008 Author Posted April 24, 2008 Ok the orders are showing in the database and nothing looks different. I uninstalled the add-on and it still didn't work. This is pretty frustrating as the discount was the last thing I needed to fix. Then I got that working and now my orders don't show up. Grr...Help!
ruizerwin Posted April 24, 2008 Posted April 24, 2008 Price Sensitive Discount http://addons.oscommerce.com/info/204How do I look at the database? Yuo need to login into you mysql... If you using phpmyadmin their will show you all your database. If don't know you need to specify the type of system you running Erwin D. Padilla Web Developer and Linux Admin
redbugweb Posted April 24, 2008 Author Posted April 24, 2008 Thanks, I did figure that part out. And the orders are showing in the database, but not in my admin or my customer history. Help!
ruizerwin Posted April 24, 2008 Posted April 24, 2008 Maybe you can give me the code I will show you what wrong... Did you edit or add something on the DB??? Erwin D. Padilla Web Developer and Linux Admin
redbugweb Posted April 24, 2008 Author Posted April 24, 2008 I didn't do anything to the DB. The add-on only had me add two files to install. I didn't change any existing code from any other files.
ruizerwin Posted April 24, 2008 Posted April 24, 2008 I will like to help you. But if i can c the file i can't give you an answer. Some contribution update function on the configure table in the DB. You need to know what exactly the contribution do. On the contribution I need to know the file that you download. Erwin D. Padilla Web Developer and Linux Admin
redbugweb Posted April 24, 2008 Author Posted April 24, 2008 This is the code from the file that went into the languages/english/modules/order total directory <?php /* $Id: ot_lev_discount.php,v 1.1 2002/08/30 21:05:04 wilt Exp $ osCommerce, Open Source E-Commerce Solutions [url="http://www.oscommerce.com"]http://www.oscommerce.com[/url] Copyright © 2002 osCommerce Released under the GNU General Public License */ define('MODULE_LEV_DISCOUNT_TITLE', 'Price break Discount'); define('MODULE_LEV_DISCOUNT_DESCRIPTION', 'Price break Discount'); define('SHIPPING_NOT_INCLUDED', ' [shipping not included]'); define('TAX_NOT_INCLUDED', ' [Tax not included]'); ?> This code went into modules/order total <?php /* <<<<<<< ot_lev_discount.php $Id: ot_lev_discount.php,v 1.0 2002/04/08 01:13:43 hpdl Exp $ ======= $Id: ot_lev_discount.php,v 1.3 2002/09/04 22:49:11 wilt Exp $ $Id: ot_lev_discount.php,v 2.4 2006/02/28 12:10:01 maniac101 Exp $ modified to calc discount correctly when tax is included in discount >>>>>>> 2.4 osCommerce, Open Source E-Commerce Solutions [url="http://www.oscommerce.com"]http://www.oscommerce.com[/url] Copyright © 2002 osCommerce Released under the GNU General Public License */ class ot_lev_discount { var $title, $output; function ot_lev_discount() { $this->code = 'ot_lev_discount'; $this->title = MODULE_LEV_DISCOUNT_TITLE; $this->description = MODULE_LEV_DISCOUNT_DESCRIPTION; $this->enabled = MODULE_LEV_DISCOUNT_STATUS; $this->sort_order = MODULE_LEV_DISCOUNT_SORT_ORDER; $this->include_shipping = MODULE_LEV_DISCOUNT_INC_SHIPPING; $this->include_tax = MODULE_LEV_DISCOUNT_INC_TAX; $this->calculate_tax = MODULE_LEV_DISCOUNT_CALC_TAX; $this->table = MODULE_LEV_DISCOUNT_TABLE; // $this->credit_class = true; $this->output = array(); } function process() { global $order, $ot_subtotal, $currencies; $od_amount = $this->calculate_credit($this->get_order_total()); if ($od_amount>0) { $this->deduction = $od_amount; $this->output[] = array('title' => $this->title . ':', 'text' => '<b>' . $currencies->format($od_amount) . '</b>', 'value' => $od_amount); $order->info['total'] = $order->info['total'] - $od_amount; if ($this->sort_order < $ot_subtotal->sort_order) { $order->info['subtotal'] = $order->info['subtotal'] - $od_amount; } } } function calculate_credit($amount) { global $order; $od_amount=0; $table_cost = split("[:,]" , MODULE_LEV_DISCOUNT_TABLE); for ($i = 0; $i < count($table_cost); $i+=2) { if ($amount >= $table_cost[$i]) { $od_pc = $table_cost[$i+1]; } } // Calculate tax reduction if necessary if($this->calculate_tax == 'true') { // Calculate main tax reduction $tod_amount = round($order->info['tax']*10)/10*$od_pc/100; $order->info['tax'] = $order->info['tax'] - $tod_amount; // Calculate tax group deductions reset($order->info['tax_groups']); while (list($key, $value) = each($order->info['tax_groups'])) { $god_amount = round($value*10)/10*$od_pc/100; $order->info['tax_groups'][$key] = $order->info['tax_groups'][$key] - $god_amount; } } $od_amount = round($amount*10)/10*$od_pc/100; // $od_amount = $od_amount + $tod_amount; // maniac101 above line was adding tax back into discount incorrectly for me return $od_amount; } function get_order_total() { global $order, $cart; $order_total = $order->info['total']; // Check if gift voucher is in cart and adjust total $products = $cart->get_products(); for ($i=0; $i<sizeof($products); $i++) { $t_prid = tep_get_prid($products[$i]['id']); $gv_query = tep_db_query("select products_price, products_tax_class_id, products_model from " . TABLE_PRODUCTS . " where products_id = '" . $t_prid . "'"); $gv_result = tep_db_fetch_array($gv_query); if (ereg('^GIFT', addslashes($gv_result['products_model']))) { $qty = $cart->get_quantity($t_prid); $products_tax = tep_get_tax_rate($gv_result['products_tax_class_id']); if ($this->include_tax =='false') { $gv_amount = $gv_result['products_price'] * $qty; } else { $gv_amount = ($gv_result['products_price'] + tep_calculate_tax($gv_result['products_price'],$products_tax)) * $qty; } $order_total=$order_total - $gv_amount; } } if ($this->include_tax == 'false') $order_total=$order_total-$order->info['tax']; if ($this->include_shipping == 'false') $order_total=$order_total-$order->info['shipping_cost']; return $order_total; } function check() { if (!isset($this->check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_LEV_DISCOUNT_STATUS'"); $this->check = tep_db_num_rows($check_query); } return $this->check; } function keys() { return array('MODULE_LEV_DISCOUNT_STATUS', 'MODULE_LEV_DISCOUNT_SORT_ORDER','MODULE_LEV_DISCOUNT_TABLE', 'MODULE_LEV_DISCOUNT_INC_SHIPPING', 'MODULE_LEV_DISCOUNT_INC_TAX','MODULE_LEV_DISCOUNT_CALC_TAX'); } function install() { tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Display Total', 'MODULE_LEV_DISCOUNT_STATUS', 'true', 'Do you want to enable the Order Discount?', '6', '1','tep_cfg_select_option(array(\'true\', \'false\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_LEV_DISCOUNT_SORT_ORDER', '999', 'Sort order of display.', '6', '2', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function ,date_added) values ('Include Shipping', 'MODULE_LEV_DISCOUNT_INC_SHIPPING', 'true', 'Include Shipping in calculation', '6', '3', 'tep_cfg_select_option(array(\'true\', \'false\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function ,date_added) values ('Include Tax', 'MODULE_LEV_DISCOUNT_INC_TAX', 'true', 'Include Tax in calculation.', '6', '4','tep_cfg_select_option(array(\'true\', \'false\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function ,date_added) values ('Calculate Tax', 'MODULE_LEV_DISCOUNT_CALC_TAX', 'false', 'Re-calculate Tax on discounted amount.', '6', '5','tep_cfg_select_option(array(\'true\', \'false\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Discount Percentage', 'MODULE_LEV_DISCOUNT_TABLE', '100:7.5,250:10,500:12.5,1000:15', 'Set the price breaks and discount percentages', '6', '6', now())"); } function remove() { $keys = ''; $keys_array = $this->keys(); for ($i=0; $i<sizeof($keys_array); $i++) { $keys .= "'" . $keys_array[$i] . "',"; } $keys = substr($keys, 0, -1); tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in (" . $keys . ")"); } } ?> Thanks so much!! I really do appreciate this!
ruizerwin Posted April 24, 2008 Posted April 24, 2008 Look like you need to replace your table configuration. Try to make a backup of your table. (just change the name) Hi recomend to change your total file and put the default one. And start over. Also verify that your contribution have all the file Somethimes you download only the file that as being update Create the new table. And try it. I c a problem with the discount contribution (Look like you need more file). :thumbsup: Also your configuration on the table have enable discount and insert many information. Good luck Erwin D. Padilla Web Developer and Linux Admin
redbugweb Posted April 24, 2008 Author Posted April 24, 2008 What you said to do to the table made no sense to me. LOL And which total file are you referring to? I checked the add-on again and I installed the only two files that were there. Thanks!
markg-uk Posted April 25, 2008 Posted April 25, 2008 Not sure its your database either - the files appear to add data to the configuration table but not much else. Easiest way to prove it isn't the database is if you have a recent backup (i.e. generated before you installed this mod) you can restore - do you?
Guest Posted August 27, 2010 Posted August 27, 2010 Ok the orders are showing in the database and nothing looks different. I uninstalled the add-on and it still didn't work. This is pretty frustrating as the discount was the last thing I needed to fix. Then I got that working and now my orders don't show up. Grr...Help! I had the same issue. I transferred my website from one domain to another, copied all files, and sql database, nothing was changed apart from a few cosmetic things. Then the orders in the back end didnt show up. I solved this by adding order statuses in Localization > Orders Status The list was empty, which is why the orders weren't showing up. When I added the statuses that come default with OSC everything worked fine. Pending (default) Processing Delivered Canceled Preparing [PayPal Standard] And i tried this after hours of messing around with code and phpMyAdmin <_<
Recommended Posts
Archived
This topic is now archived and is closed to further replies.