KJ666 Posted November 4, 2009 Share Posted November 4, 2009 I have placed the order editter on my site but when i go to edit page i get this: Fatal error: Call to undefined function tep_get_categories_name() in /home/kjexotic/public_html/euro/includes/modules/shipping/rmsecondrec.php on line 85 This is my rmsecondrec.php file <?php /* $Id: Royal Mail Second Class Recorded by Stuart Newton 21 August 2006 Demo: http://www.almatcomputers.co.uk Rates: .1:1.52,.25:1.77,.5:2.07,.75:2.45,1:2.8 Limits Applied: 3.00Kg orders over this value will not be shown this method. */ /* Release date: 29th of May 2009 Modified contribution by: Alexander Dimelow Email: [email protected] Website: http://oscommerce.web-project.co.uk */ class rmsecondrec { var $code, $title, $description, $enabled, $num_zones; // class constructor function rmsecondrec() { global $order, $total_weight; $this->code = 'rmsecondrec'; $this->title = MODULE_SHIPPING_RMSECONDREC_TEXT_TITLE; $this->description = MODULE_SHIPPING_RMSECONDREC_TEXT_DESCRIPTION; $this->sort_order = MODULE_SHIPPING_RMSECONDREC_SORT_ORDER; $this->icon = DIR_WS_ICONS . ''; // upload icon to catalog/images/icon directory $this->tax_class = MODULE_SHIPPING_RMSECONDREC_TAX_CLASS; $this->enabled = ((MODULE_SHIPPING_RMSECONDREC_STATUS == 'True') ? true : false); $this->num_zones = 1; } // class methods function quote($method = '') { global $cart, $order, $shipping_weight, $shipping_num_boxes; $dest_country = $order->delivery['country']['iso_code_2']; $dest_zone = 0; $error = false; if ($order->delivery['country']['iso_code_2'] == 'GB') { // Only UK Customers to see shipping method. Hide everbody else. for ($i=1; $i<=$this->num_zones; $i++) { $countries_table = constant('MODULE_SHIPPING_RMSECONDREC_COUNTRIES_' . $i); $country_zones = split("[,]", $countries_table); if (in_array($dest_country, $country_zones)) { $dest_zone = $i; break; } } if ($dest_zone == 0) { $error = true; } else { $shipping = -1; $zones_cost = constant('MODULE_SHIPPING_RMSECONDREC_COST_' . $dest_zone); $zones_table = split("[:,]" , $zones_cost); $size = sizeof($zones_table); for ($i=0; $i<$size; $i+=2) { if ($shipping_weight <= $zones_table[$i]) { $shipping = $zones_table[$i+1]; if(tep_not_null($method) ) // Text shown on Checkout_Confirmation $shipping_method = ''; // Leaving this entry blank causes only the shipping title to show i.e Royal Mail 1st Class Rec else // Text shown on Checkout_shipping - Delivery Weight : 0.7 Kg's (Ships normally within 1 to 3 days) $shipping_method = MODULE_SHIPPING_RMSECONDREC_DELIVERY_TIMES; break; } } if ($shipping == -1) { $shipping_cost = 0; $shipping_method = MODULE_SHIPPING_RMSECONDREC_UNDEFINED_RATE; } else { $shipping_cost = ($shipping * $shipping_num_boxes) + constant('MODULE_SHIPPING_RMSECONDREC_HANDLING_' . $dest_zone); } } //extra $cats_array = explode(',',MODULE_SHIPPING_RMSECONDREC_PER_CATS_CATEGORIES); $cat_names = ''; for($i=0, $x=sizeof($cats_array); $i<$x; $i++){ $cats_array[$i] = (int)$cats_array[$i]; $cat_names .= tep_get_categories_name($cats_array[$i]).', '; } $cat_names = substr($cat_names, 0,-2); $pID_list = $cart->get_product_id_list(); $pID_list = explode(',',$pID_list); for($i=0, $x=sizeof($pID_list); $i<$x; $i++){ $pID_list[$i] = (int)$pID_list[$i]; } $pID_list = implode(',',$pID_list); if (MODULE_SHIPPING_RMSECONDREC_PER_CATS_ALL_OR_ONE == 'One'){ $products = $cart->get_products(); for($i=0, $x=sizeof($products); $i<$x; $i++){ $check_query = tep_db_query('select * from '.TABLE_PRODUCTS_TO_CATEGORIES.' where categories_id in ('.implode(',',$cats_array).') and products_id="'.(int)$products[$i]['id'].'"'); if (tep_db_num_rows($check_query)) $enable_rates = 1; } } elseif (MODULE_SHIPPING_RMSECONDREC_PER_CATS_ALL_OR_ONE == 'All'){ $count = 0; for($i=0, $x=sizeof($cats_array); $i<$x; $i++){ $check_query = tep_db_query('select * from '.TABLE_PRODUCTS_TO_CATEGORIES.' where categories_id="'.$cats_array[$i].'" and products_id in ('.$pID_list.')'); if (tep_db_num_rows($check_query)) $count++; } if ($count == sizeof($cats_array)) $enable_rates = 1; } else { $this->enabled = false; return false; } if ( MODULE_SHIPPING_RMSECONDREC_PER_CATS_ONLY_OR_ANY == 'Only' ){ $check_query = tep_db_query('select * from '.TABLE_PRODUCTS_TO_CATEGORIES.' where categories_id not in ('.MODULE_SHIPPING_RMSECONDREC_PER_CATS_CATEGORIES.') and products_id in ('.$pID_list.')'); if (tep_db_num_rows($check_query)) $enable_rates = 0; } //end extra if($enable_rates==1){ $this->quotes = array('id' => $this->code, 'module' => MODULE_SHIPPING_RMSECONDREC_TEXT_TITLE, 'methods' => array(array('id' => $this->code, 'title' => $shipping_method, 'cost' => $shipping_cost))); if ($this->tax_class > 0) { $this->quotes['tax'] = tep_get_tax_rate($this->tax_class, $order->delivery['country']['id'], $order->delivery['zone_id']); } if (tep_not_null($this->icon)) $this->quotes['icon'] = tep_image($this->icon, $this->title); if ($error == true) $this->quotes['error'] = MODULE_SHIPPING_RMSECONDREC_INVALID_ZONE; return $this->quotes; } }} function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_SHIPPING_RMSECONDREC_STATUS'"); $this->_check = tep_db_num_rows($check_query); } return $this->_check; } 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 ('Enable RM Second Class Recorded Postage', 'MODULE_SHIPPING_RMSECONDREC_STATUS', 'True', 'Do you want to offer this shipping option?', '6', '0', '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, use_function, set_function, date_added) values ('Tax Class', 'MODULE_SHIPPING_RMSECONDREC_TAX_CLASS', '0', 'Use the following tax class on the shipping fee.', '6', '0', 'tep_get_tax_class_title', 'tep_cfg_pull_down_tax_classes(', 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_SHIPPING_RMSECONDREC_SORT_ORDER', '4', 'Sort order of display (1 shown first 99 etc shown last to customer)', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Categories List', 'MODULE_SHIPPING_RMSECONDREC_PER_CATS_CATEGORIES', '', 'For what categories do you want to offer shipping?<br />NOTE! not recurcive - select all subcategories if you need it.', '6', '0', 'tep_cfg_show_multicategories', 'tep_cfg_select_multicategories(', 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 ('All or One', 'MODULE_SHIPPING_RMSECONDREC_PER_CATS_ALL_OR_ONE', 'All', 'Do you want to offer a shipping for orders with products from all mentioned categories, or with at least from one of them?', '6', '0', 'tep_cfg_select_option(array(\'All\', \'One\'), ', 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 ('Only or Any', 'MODULE_SHIPPING_RMSECONDREC_PER_CATS_ONLY_OR_ANY', 'Only', 'Do you want to offer a shipping for orders with products only from mentioned categories, or with products from any categories (including mentioned)?', '6', '0', 'tep_cfg_select_option(array(\'Only\', \'Any\'), ', now())"); for ($i = 1; $i <= $this->num_zones; $i++) { $default_countries = ''; if ($i == 1) { $default_countries = 'GB'; } tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('ISO Country Code', 'MODULE_SHIPPING_RMSECONDREC_COUNTRIES_" . $i ."', '" . $default_countries . "', 'Enter the two digit ISO code for which this shipping method applies too. (Default: GB)', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('RM FSecond Class Recorded Rates', 'MODULE_SHIPPING_RMSECONDREC_COST_" . $i ."', '.1:1.52,.25:1.77,.5:2.07,.75:2.45,1:2.8', 'Enter values upto 5,2 decimal places. (12345.67) Example: .1:1,.25:1.27 - Weights less than or equal to 0.1Kg would cost £1.52, Weights less than or equal to 0.25g but more than 0.1Kg will cost £1.77. Do not enter KG or £ symbols.', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Packaging / Handling Fee', 'MODULE_SHIPPING_RMSECONDREC_HANDLING_" . $i."', '0', 'If you want to add extra costs to customers for jiffy bags etc, the cost can be entered below (eg enter 1.50 for a value of £1.50)', '6', '0', now())"); } } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { $keys = array('MODULE_SHIPPING_RMSECONDREC_STATUS', 'MODULE_SHIPPING_RMSECONDREC_TAX_CLASS', 'MODULE_SHIPPING_RMSECONDREC_SORT_ORDER', 'MODULE_SHIPPING_RMSECONDREC_PER_CATS_CATEGORIES', 'MODULE_SHIPPING_RMSECONDREC_PER_CATS_ALL_OR_ONE', 'MODULE_SHIPPING_RMSECONDREC_PER_CATS_ONLY_OR_ANY'); for ($i=1; $i<=$this->num_zones; $i++) { $keys[] = 'MODULE_SHIPPING_RMSECONDREC_COUNTRIES_' . $i; $keys[] = 'MODULE_SHIPPING_RMSECONDREC_COST_' . $i; $keys[] = 'MODULE_SHIPPING_RMSECONDREC_HANDLING_' . $i; } return $keys; } } ?> The shipping i use is: http://addons.oscommerce.com/info/5979 THe part of the code on that line is: $cat_names .= tep_get_categories_name($cats_array[$i]).', '; } Any help on this ? 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.