Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Error....Please help


emailanj

Recommended Posts

Posted

:'( I am a newbie for starters and am learning from trial and error. But this Error I can't fix. After clicking on the buy now button this error dpops up:

 

Warning: Cannot modify header information - headers already sent by (output started at /home/proshowe/public_html/store/includes/languages/english.php:336) in /home/proshowe/public_html/store/includes/functions/general.php on line 29

 

 

The only contributions I have installed are viaklix gateway, box shadow, and a orange box template

 

Here is the code from english.php:

<?php
/*
 $Id: english.php,v 1.114 2003/07/09 18:13:39 dgw_ Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

// look in your $PATH_LOCALE/locale directory for available locales
// or type locale -a on the server.
// Examples:
// on RedHat try 'en_US'
// on FreeBSD try 'en_US.ISO_8859-1'
// on Windows try 'en', or 'English'
@setlocale(LC_TIME, 'en_US.ISO_8859-1');

define('DATE_FORMAT_SHORT', '%m/%d/%Y');  // this is used for strftime()
define('DATE_FORMAT_LONG', '%A %d %B, %Y'); // this is used for strftime()
define('DATE_FORMAT', 'm/d/Y'); // this is used for date()
define('DATE_TIME_FORMAT', DATE_FORMAT_SHORT . ' %H:%M:%S');

////
// Return date in raw format
// $date should be in format mm/dd/yyyy
// raw date is in format YYYYMMDD, or DDMMYYYY
function tep_date_raw($date, $reverse = false) {
 if ($reverse) {
   return substr($date, 3, 2) . substr($date, 0, 2) . substr($date, 6, 4);
 } else {
   return substr($date, 6, 4) . substr($date, 0, 2) . substr($date, 3, 2);
 }
}

// if USE_DEFAULT_LANGUAGE_CURRENCY is true, use the following currency, instead of the applications default currency (used when changing language)
define('LANGUAGE_CURRENCY', 'USD');

// Global entries for the <html> tag
define('HTML_PARAMS','dir="LTR" lang="en"');

// charset for web pages and emails
define('CHARSET', 'iso-8859-1');

// page title
define('TITLE', 'Pro Show Equipment');

// header text in includes/header.php
define('HEADER_TITLE_CREATE_ACCOUNT', 'Create an Account');
define('HEADER_TITLE_MY_ACCOUNT', 'My Account');
define('HEADER_TITLE_CART_CONTENTS', 'Cart Contents');
define('HEADER_TITLE_CHECKOUT', 'Checkout');
define('HEADER_TITLE_TOP', 'Top');
define('HEADER_TITLE_CATALOG', 'Catalog');
define('HEADER_TITLE_LOGOFF', 'Log Off');
define('HEADER_TITLE_LOGIN', 'Log In');

// footer text in includes/footer.php
define('FOOTER_TEXT_REQUESTS_SINCE', 'requests since');

// text for gender
define('MALE', 'Male');
define('FEMALE', 'Female');
define('MALE_ADDRESS', 'Mr.');
define('FEMALE_ADDRESS', 'Ms.');

// text for date of birth example
define('DOB_FORMAT_STRING', 'mm/dd/yyyy');

// categories box text in includes/boxes/categories.php
define('BOX_HEADING_CATEGORIES', 'Categories');

// manufacturers box text in includes/boxes/manufacturers.php
define('BOX_HEADING_MANUFACTURERS', 'Manufacturers');

// whats_new box text in includes/boxes/whats_new.php
define('BOX_HEADING_WHATS_NEW', 'Feature Products');

// quick_find box text in includes/boxes/quick_find.php
define('BOX_HEADING_SEARCH', 'Quick Find');
define('BOX_SEARCH_TEXT', 'Use keywords to find the product you are looking for.');
define('BOX_SEARCH_ADVANCED_SEARCH', 'Advanced Search');

// specials box text in includes/boxes/specials.php
define('BOX_HEADING_SPECIALS', 'Specials');

// reviews box text in includes/boxes/reviews.php
define('BOX_HEADING_REVIEWS', 'Reviews');
define('BOX_REVIEWS_WRITE_REVIEW', 'Write a review on this product!');
define('BOX_REVIEWS_NO_REVIEWS', 'There are currently no product reviews');
define('BOX_REVIEWS_TEXT_OF_5_STARS', '%s of 5 Stars!');

// shopping_cart box text in includes/boxes/shopping_cart.php
define('BOX_HEADING_SHOPPING_CART', 'Shopping Cart');
define('BOX_SHOPPING_CART_EMPTY', '0 items');

// order_history box text in includes/boxes/order_history.php
define('BOX_HEADING_CUSTOMER_ORDERS', 'Order History');

// best_sellers box text in includes/boxes/best_sellers.php
define('BOX_HEADING_BESTSELLERS', 'Bestsellers');
define('BOX_HEADING_BESTSELLERS_IN', 'Bestsellers in<br>  ');

// notifications box text in includes/boxes/products_notifications.php
define('BOX_HEADING_NOTIFICATIONS', 'Notifications');
define('BOX_NOTIFICATIONS_NOTIFY', 'Notify me of updates to <b>%s</b>');
define('BOX_NOTIFICATIONS_NOTIFY_REMOVE', 'Do not notify me of updates to <b>%s</b>');

// manufacturer box text
define('BOX_HEADING_MANUFACTURER_INFO', 'Manufacturer Info');
define('BOX_MANUFACTURER_INFO_HOMEPAGE', '%s Homepage');
define('BOX_MANUFACTURER_INFO_OTHER_PRODUCTS', 'Other products');

// languages box text in includes/boxes/languages.php
define('BOX_HEADING_LANGUAGES', 'Languages');

// currencies box text in includes/boxes/currencies.php
define('BOX_HEADING_CURRENCIES', 'Currencies');

// information box text in includes/boxes/information.php
define('BOX_HEADING_INFORMATION', 'Information');
define('BOX_INFORMATION_PRIVACY', 'Privacy Notice');
define('BOX_INFORMATION_CONDITIONS', 'Conditions of Use');
define('BOX_INFORMATION_SHIPPING', 'Shipping & Returns');
define('BOX_INFORMATION_CONTACT', 'Contact Us');

// tell a friend box text in includes/boxes/tell_a_friend.php
define('BOX_HEADING_TELL_A_FRIEND', 'Tell A Friend');
define('BOX_TELL_A_FRIEND_TEXT', 'Tell someone you know about this product.');

// checkout procedure text
define('CHECKOUT_BAR_DELIVERY', 'Delivery Information');
define('CHECKOUT_BAR_PAYMENT', 'Payment Information');
define('CHECKOUT_BAR_CONFIRMATION', 'Confirmation');
define('CHECKOUT_BAR_FINISHED', 'Finished!');

// pull down default text
define('PULL_DOWN_DEFAULT', 'Please Select');
define('TYPE_BELOW', 'Type Below');

// javascript messages
define('JS_ERROR', 'Errors have occured during the process of your form.\n\nPlease make the following corrections:\n\n');

define('JS_REVIEW_TEXT', '* The \'Review Text\' must have at least ' . REVIEW_TEXT_MIN_LENGTH . ' characters.\n');
define('JS_REVIEW_RATING', '* You must rate the product for your review.\n');

define('JS_ERROR_NO_PAYMENT_MODULE_SELECTED', '* Please select a payment method for your order.\n');

define('JS_ERROR_SUBMITTED', 'This form has already been submitted. Please press Ok and wait for this process to be completed.');

define('ERROR_NO_PAYMENT_MODULE_SELECTED', 'Please select a payment method for your order.');

define('CATEGORY_COMPANY', 'Company Details');
define('CATEGORY_PERSONAL', 'Your Personal Details');
define('CATEGORY_ADDRESS', 'Your Address');
define('CATEGORY_CONTACT', 'Your Contact Information');
define('CATEGORY_OPTIONS', 'Options');
define('CATEGORY_PASSWORD', 'Your Password');

define('ENTRY_COMPANY', 'Company Name:');
define('ENTRY_COMPANY_ERROR', '');
define('ENTRY_COMPANY_TEXT', '');
define('ENTRY_GENDER', 'Gender:');
define('ENTRY_GENDER_ERROR', 'Please select your Gender.');
define('ENTRY_GENDER_TEXT', '*');
define('ENTRY_FIRST_NAME', 'First Name:');
define('ENTRY_FIRST_NAME_ERROR', 'Your First Name must contain a minimum of ' . ENTRY_FIRST_NAME_MIN_LENGTH . ' characters.');
define('ENTRY_FIRST_NAME_TEXT', '*');
define('ENTRY_LAST_NAME', 'Last Name:');
define('ENTRY_LAST_NAME_ERROR', 'Your Last Name must contain a minimum of ' . ENTRY_LAST_NAME_MIN_LENGTH . ' characters.');
define('ENTRY_LAST_NAME_TEXT', '*');
define('ENTRY_DATE_OF_BIRTH', 'Date of Birth:');
define('ENTRY_DATE_OF_BIRTH_ERROR', 'Your Date of Birth must be in this format: MM/DD/YYYY (eg 05/21/1970)');
define('ENTRY_DATE_OF_BIRTH_TEXT', '* (eg. 05/21/1970)');
define('ENTRY_EMAIL_ADDRESS', 'E-Mail Address:');
define('ENTRY_EMAIL_ADDRESS_ERROR', 'Your E-Mail Address must contain a minimum of ' . ENTRY_EMAIL_ADDRESS_MIN_LENGTH . ' characters.');
define('ENTRY_EMAIL_ADDRESS_CHECK_ERROR', 'Your E-Mail Address does not appear to be valid - please make any necessary corrections.');
define('ENTRY_EMAIL_ADDRESS_ERROR_EXISTS', 'Your E-Mail Address already exists in our records - please log in with the e-mail address or create an account with a different address.');
define('ENTRY_EMAIL_ADDRESS_TEXT', '*');
define('ENTRY_STREET_ADDRESS', 'Street Address:');
define('ENTRY_STREET_ADDRESS_ERROR', 'Your Street Address must contain a minimum of ' . ENTRY_STREET_ADDRESS_MIN_LENGTH . ' characters.');
define('ENTRY_STREET_ADDRESS_TEXT', '*');
define('ENTRY_SUBURB', 'Suburb:');
define('ENTRY_SUBURB_ERROR', '');
define('ENTRY_SUBURB_TEXT', '');
define('ENTRY_POST_CODE', 'Post Code:');
define('ENTRY_POST_CODE_ERROR', 'Your Post Code must contain a minimum of ' . ENTRY_POSTCODE_MIN_LENGTH . ' characters.');
define('ENTRY_POST_CODE_TEXT', '*');
define('ENTRY_CITY', 'City:');
define('ENTRY_CITY_ERROR', 'Your City must contain a minimum of ' . ENTRY_CITY_MIN_LENGTH . ' characters.');
define('ENTRY_CITY_TEXT', '*');
define('ENTRY_STATE', 'State/Province:');
define('ENTRY_STATE_ERROR', 'Your State must contain a minimum of ' . ENTRY_STATE_MIN_LENGTH . ' characters.');
define('ENTRY_STATE_ERROR_SELECT', 'Please select a state from the States pull down menu.');
define('ENTRY_STATE_TEXT', '*');
define('ENTRY_COUNTRY', 'Country:');
define('ENTRY_COUNTRY_ERROR', 'You must select a country from the Countries pull down menu.');
define('ENTRY_COUNTRY_TEXT', '*');
define('ENTRY_TELEPHONE_NUMBER', 'Telephone Number:');
define('ENTRY_TELEPHONE_NUMBER_ERROR', 'Your Telephone Number must contain a minimum of ' . ENTRY_TELEPHONE_MIN_LENGTH . ' characters.');
define('ENTRY_TELEPHONE_NUMBER_TEXT', '*');
define('ENTRY_FAX_NUMBER', 'Fax Number:');
define('ENTRY_FAX_NUMBER_ERROR', '');
define('ENTRY_FAX_NUMBER_TEXT', '');
define('ENTRY_NEWSLETTER', 'Newsletter:');
define('ENTRY_NEWSLETTER_TEXT', '');
define('ENTRY_NEWSLETTER_YES', 'Subscribed');
define('ENTRY_NEWSLETTER_NO', 'Unsubscribed');
define('ENTRY_NEWSLETTER_ERROR', '');
define('ENTRY_PASSWORD', 'Password:');
define('ENTRY_PASSWORD_ERROR', 'Your Password must contain a minimum of ' . ENTRY_PASSWORD_MIN_LENGTH . ' characters.');
define('ENTRY_PASSWORD_ERROR_NOT_MATCHING', 'The Password Confirmation must match your Password.');
define('ENTRY_PASSWORD_TEXT', '*');
define('ENTRY_PASSWORD_CONFIRMATION', 'Password Confirmation:');
define('ENTRY_PASSWORD_CONFIRMATION_TEXT', '*');
define('ENTRY_PASSWORD_CURRENT', 'Current Password:');
define('ENTRY_PASSWORD_CURRENT_TEXT', '*');
define('ENTRY_PASSWORD_CURRENT_ERROR', 'Your Password must contain a minimum of ' . ENTRY_PASSWORD_MIN_LENGTH . ' characters.');
define('ENTRY_PASSWORD_NEW', 'New Password:');
define('ENTRY_PASSWORD_NEW_TEXT', '*');
define('ENTRY_PASSWORD_NEW_ERROR', 'Your new Password must contain a minimum of ' . ENTRY_PASSWORD_MIN_LENGTH . ' characters.');
define('ENTRY_PASSWORD_NEW_ERROR_NOT_MATCHING', 'The Password Confirmation must match your new Password.');
define('PASSWORD_HIDDEN', '--HIDDEN--');

define('FORM_REQUIRED_INFORMATION', '* Required information');

// constants for use in tep_prev_next_display function
define('TEXT_RESULT_PAGE', 'Result Pages:');
define('TEXT_DISPLAY_NUMBER_OF_PRODUCTS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> products)');
define('TEXT_DISPLAY_NUMBER_OF_ORDERS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> orders)');
define('TEXT_DISPLAY_NUMBER_OF_REVIEWS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> reviews)');
define('TEXT_DISPLAY_NUMBER_OF_PRODUCTS_NEW', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> new products)');
define('TEXT_DISPLAY_NUMBER_OF_SPECIALS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> specials)');

define('PREVNEXT_TITLE_FIRST_PAGE', 'First Page');
define('PREVNEXT_TITLE_PREVIOUS_PAGE', 'Previous Page');
define('PREVNEXT_TITLE_NEXT_PAGE', 'Next Page');
define('PREVNEXT_TITLE_LAST_PAGE', 'Last Page');
define('PREVNEXT_TITLE_PAGE_NO', 'Page %d');
define('PREVNEXT_TITLE_PREV_SET_OF_NO_PAGE', 'Previous Set of %d Pages');
define('PREVNEXT_TITLE_NEXT_SET_OF_NO_PAGE', 'Next Set of %d Pages');
define('PREVNEXT_BUTTON_FIRST', '<<FIRST');
define('PREVNEXT_BUTTON_PREV', '[<< Prev]');
define('PREVNEXT_BUTTON_NEXT', '[Next >>]');
define('PREVNEXT_BUTTON_LAST', 'LAST>>');

define('IMAGE_BUTTON_ADD_ADDRESS', 'Add Address');
define('IMAGE_BUTTON_ADDRESS_BOOK', 'Address Book');
define('IMAGE_BUTTON_BACK', 'Back');
define('IMAGE_BUTTON_BUY_NOW', 'Buy Now');
define('IMAGE_BUTTON_CHANGE_ADDRESS', 'Change Address');
define('IMAGE_BUTTON_CHECKOUT', 'Checkout');
define('IMAGE_BUTTON_CONFIRM_ORDER', 'Confirm Order');
define('IMAGE_BUTTON_CONTINUE', 'Continue');
define('IMAGE_BUTTON_CONTINUE_SHOPPING', 'Continue Shopping');
define('IMAGE_BUTTON_DELETE', 'Delete');
define('IMAGE_BUTTON_EDIT_ACCOUNT', 'Edit Account');
define('IMAGE_BUTTON_HISTORY', 'Order History');
define('IMAGE_BUTTON_LOGIN', 'Sign In');
define('IMAGE_BUTTON_IN_CART', 'Add to Cart');
define('IMAGE_BUTTON_NOTIFICATIONS', 'Notifications');
define('IMAGE_BUTTON_QUICK_FIND', 'Quick Find');
define('IMAGE_BUTTON_REMOVE_NOTIFICATIONS', 'Remove Notifications');
define('IMAGE_BUTTON_REVIEWS', 'Reviews');
define('IMAGE_BUTTON_SEARCH', 'Search');
define('IMAGE_BUTTON_SHIPPING_OPTIONS', 'Shipping Options');
define('IMAGE_BUTTON_TELL_A_FRIEND', 'Tell a Friend');
define('IMAGE_BUTTON_UPDATE', 'Update');
define('IMAGE_BUTTON_UPDATE_CART', 'Update Cart');
define('IMAGE_BUTTON_WRITE_REVIEW', 'Write Review');

define('SMALL_IMAGE_BUTTON_DELETE', 'Delete');
define('SMALL_IMAGE_BUTTON_EDIT', 'Edit');
define('SMALL_IMAGE_BUTTON_VIEW', 'View');

define('ICON_ARROW_RIGHT', 'more');
define('ICON_CART', 'In Cart');
define('ICON_ERROR', 'Error');
define('ICON_SUCCESS', 'Success');
define('ICON_WARNING', 'Warning');

define('TEXT_GREETING_PERSONAL', 'Welcome back <span class="greetUser">%s!</span> Would you like to see which <a href="%s"><u>featured products</u></a> are available to purchase?');
define('TEXT_GREETING_PERSONAL_RELOGON', '<small>If you are not %s, please <a href="%s"><u>log yourself in</u></a> with your account information.</small>');
define('TEXT_GREETING_GUEST', 'Welcome <span class="greetUser">Guest!</span> Would you like to <a href="%s"><u>log yourself in</u></a>? Or would you prefer to <a href="%s"><u>create an account</u></a>?');

define('TEXT_SORT_PRODUCTS', 'Sort products ');
define('TEXT_DESCENDINGLY', 'descendingly');
define('TEXT_ASCENDINGLY', 'ascendingly');
define('TEXT_BY', ' by ');

define('TEXT_REVIEW_BY', 'by %s');
define('TEXT_REVIEW_WORD_COUNT', '%s words');
define('TEXT_REVIEW_RATING', 'Rating: %s [%s]');
define('TEXT_REVIEW_DATE_ADDED', 'Date Added: %s');
define('TEXT_NO_REVIEWS', 'There are currently no product reviews.');

define('TEXT_NO_NEW_PRODUCTS', 'There are currently no products.');

define('TEXT_UNKNOWN_TAX_RATE', 'Unknown tax rate');

define('TEXT_REQUIRED', '<span class="errorText">Required</span>');

define('ERROR_TEP_MAIL', '<font face="Verdana, Arial" size="2" color="#ff0000"><b><small>TEP ERROR:</small> Cannot send the email through the specified SMTP server. Please check your php.ini setting and correct the SMTP server if necessary.</b></font>');
define('WARNING_INSTALL_DIRECTORY_EXISTS', 'Warning: Installation directory exists at: ' . dirname($HTTP_SERVER_VARS['SCRIPT_FILENAME']) . '/install. Please remove this directory for security reasons.');
define('WARNING_CONFIG_FILE_WRITEABLE', 'Warning: I am able to write to the configuration file: ' . dirname($HTTP_SERVER_VARS['SCRIPT_FILENAME']) . '/includes/configure.php. This is a potential security risk - please set the right user permissions on this file.');
define('WARNING_SESSION_DIRECTORY_NON_EXISTENT', 'Warning: The sessions directory does not exist: ' . tep_session_save_path() . '. Sessions will not work until this directory is created.');
define('WARNING_SESSION_DIRECTORY_NOT_WRITEABLE', 'Warning: I am not able to write to the sessions directory: ' . tep_session_save_path() . '. Sessions will not work until the right user permissions are set.');
define('WARNING_SESSION_AUTO_START', 'Warning: session.auto_start is enabled - please disable this php feature in php.ini and restart the web server.');
define('WARNING_DOWNLOAD_DIRECTORY_NON_EXISTENT', 'Warning: The downloadable products directory does not exist: ' . DIR_FS_DOWNLOAD . '. Downloadable products will not work until this directory is valid.');

define('TEXT_CCVAL_ERROR_INVALID_DATE', 'The expiry date entered for the credit card is invalid.<br>Please check the date and try again.');
define('TEXT_CCVAL_ERROR_INVALID_NUMBER', 'The credit card number entered is invalid.<br>Please check the number and try again.');
define('TEXT_CCVAL_ERROR_UNKNOWN_CARD', 'The first four digits of the number entered are: %s<br>If that number is correct, we do not accept that type of credit card.<br>If it is wrong, please try again.');

/*
 The following copyright announcement can only be
 appropriately modified or removed if the layout of
 the site theme has been modified to distinguish
 itself from the default osCommerce-copyrighted
 theme.

 For more information please read the following
 Frequently Asked Questions entry on the osCommerce
 support site:

 http://www.oscommerce.com/community.php/faq,26/q,50

 Please leave this comment intact together with the
 following copyright announcement.
*/
define('FOOTER_TEXT_BODY', 'Copyright © 2003 <a href="http://www.ProShowEquipment.com" target="_blank">ProShowEquioment</a><br>Powered by <a href="http://www.oscommerce.com" target="_blank">osCommerce</a>');
?>

 

 

Here is the code from: general.php:

 

<?php

/*

 $Id: general.php,v 1.231 2003/07/09 01:15:48 hpdl Exp $

 

 osCommerce, Open Source E-Commerce Solutions

 http://www.oscommerce.com

 

 Copyright (c) 2003 osCommerce

 

 Released under the GNU General Public License

*/

 

////

// Stop from parsing any further PHP code

 function tep_exit() {

  tep_session_close();

  exit();

 }

 

////

// Redirect to another page or site

 function tep_redirect($url) {

   if ( (ENABLE_SSL == true) && (getenv('HTTPS') == 'on') ) { // We are loading an SSL page

     if (substr($url, 0, strlen(HTTP_SERVER)) == HTTP_SERVER) { // NONSSL url

       $url = HTTPS_SERVER . substr($url, strlen(HTTP_SERVER)); // Change it to SSL

     }

   }

 

   header('Location: ' . $url);

 

   tep_exit();

 }

 

////

// Parse the data used in the html tags to ensure the tags will not break

 function tep_parse_input_field_data($data, $parse) {

   return strtr(trim($data), $parse);

 }

 

 function tep_output_string($string, $translate = false, $protected = false) {

   if ($protected == true) {

     return htmlspecialchars($string);

   } else {

     if ($translate == false) {

       return tep_parse_input_field_data($string, array('"' => '"'));

     } else {

       return tep_parse_input_field_data($string, $translate);

     }

   }

 }

 

 function tep_output_string_protected($string) {

   return tep_output_string($string, false, true);

 }

 

 function tep_sanitize_string($string) {

   $string = ereg_replace(' +', ' ', trim($string));

 

   return preg_replace("/[<>]/", '_', $string);

 }

 

////

// Return a random row from a database query

 function tep_random_select($query) {

   $random_product = '';

   $random_query = tep_db_query($query);

   $num_rows = tep_db_num_rows($random_query);

   if ($num_rows > 0) {

     $random_row = tep_rand(0, ($num_rows - 1));

     tep_db_data_seek($random_query, $random_row);

     $random_product = tep_db_fetch_array($random_query);

   }

 

   return $random_product;

 }

 

////

// Return a product's name

// TABLES: products

 function tep_get_products_name($product_id, $language = '') {

   global $languages_id;

 

   if (empty($language)) $language = $languages_id;

 

   $product_query = tep_db_query("select products_name from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$product_id . "' and language_id = '" . (int)$language . "'");

   $product = tep_db_fetch_array($product_query);

 

   return $product['products_name'];

 }

 

////

// Return a product's special price (returns nothing if there is no offer)

// TABLES: products

 function tep_get_products_special_price($product_id) {

   $product_query = tep_db_query("select specials_new_products_price from " . TABLE_SPECIALS . " where products_id = '" . (int)$product_id . "' and status");

   $product = tep_db_fetch_array($product_query);

 

   return $product['specials_new_products_price'];

 }

 

////

// Return a product's stock

// TABLES: products

 function tep_get_products_stock($products_id) {

   $products_id = tep_get_prid($products_id);

   $stock_query = tep_db_query("select products_quantity from " . TABLE_PRODUCTS . " where products_id = '" . (int)$products_id . "'");

   $stock_values = tep_db_fetch_array($stock_query);

 

   return $stock_values['products_quantity'];

 }

 

////

// Check if the required stock is available

// If insufficent stock is available return an out of stock message

 function tep_check_stock($products_id, $products_quantity) {

   $stock_left = tep_get_products_stock($products_id) - $products_quantity;

   $out_of_stock = '';

 

   if ($stock_left < 0) {

     $out_of_stock = '<span class="markProductOutOfStock">' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . '</span>';

   }

 

   return $out_of_stock;

 }

 

////

// Break a word in a string if it is longer than a specified length ($len)

 function tep_break_string($string, $len, $break_char = '-') {

   $l = 0;

   $output = '';

   for ($i=0, $n=strlen($string); $i<$n; $i++) {

     $char = substr($string, $i, 1);

     if ($char != ' ') {

       $l++;

     } else {

       $l = 0;

     }

     if ($l > $len) {

       $l = 1;

       $output .= $break_char;

     }

     $output .= $char;

   }

 

   return $output;

 }

 

////

// Return all HTTP GET variables, except those passed as a parameter

 function tep_get_all_get_params($exclude_array = '') {

   global $HTTP_GET_VARS;

 

   if (!is_array($exclude_array)) $exclude_array = array();

 

   $get_url = '';

   if (is_array($HTTP_GET_VARS) && (sizeof($HTTP_GET_VARS) > 0)) {

     reset($HTTP_GET_VARS);

     while (list($key, $value) = each($HTTP_GET_VARS)) {

       if ( (strlen($value) > 0) && ($key != tep_session_name()) && ($key != 'error') && (!in_array($key, $exclude_array)) && ($key != 'x') && ($key != 'y') ) {

         $get_url .= $key . '=' . rawurlencode(stripslashes($value)) . '&';

       }

     }

   }

 

   return $get_url;

 }

 

////

// Returns an array with countries

// TABLES: countries

 function tep_get_countries($countries_id = '', $with_iso_codes = false) {

   $countries_array = array();

   if (tep_not_null($countries_id)) {

     if ($with_iso_codes == true) {

       $countries = tep_db_query("select countries_name, countries_iso_code_2, countries_iso_code_3 from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "' order by countries_name");

       $countries_values = tep_db_fetch_array($countries);

       $countries_array = array('countries_name' => $countries_values['countries_name'],

                                'countries_iso_code_2' => $countries_values['countries_iso_code_2'],

                                'countries_iso_code_3' => $countries_values['countries_iso_code_3']);

     } else {

       $countries = tep_db_query("select countries_name from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "'");

       $countries_values = tep_db_fetch_array($countries);

       $countries_array = array('countries_name' => $countries_values['countries_name']);

     }

   } else {

     $countries = tep_db_query("select countries_id, countries_name from " . TABLE_COUNTRIES . " order by countries_name");

     while ($countries_values = tep_db_fetch_array($countries)) {

       $countries_array[] = array('countries_id' => $countries_values['countries_id'],

                                  'countries_name' => $countries_values['countries_name']);

     }

   }

 

   return $countries_array;

 }

 

////

// Alias function to tep_get_countries, which also returns the countries iso codes

 function tep_get_countries_with_iso_codes($countries_id) {

   return tep_get_countries($countries_id, true);

 }

 

////

// Generate a path to categories

 function tep_get_path($current_category_id = '') {

   global $cPath_array;

 

   if (tep_not_null($current_category_id)) {

     $cp_size = sizeof($cPath_array);

     if ($cp_size == 0) {

       $cPath_new = $current_category_id;

     } else {

       $cPath_new = '';

       $last_category_query = tep_db_query("select parent_id from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$cPath_array[($cp_size-1)] . "'");

       $last_category = tep_db_fetch_array($last_category_query);

 

       $current_category_query = tep_db_query("select parent_id from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");

       $current_category = tep_db_fetch_array($current_category_query);

 

       if ($last_category['parent_id'] == $current_category['parent_id']) {

         for ($i=0; $i<($cp_size-1); $i++) {

           $cPath_new .= '_' . $cPath_array[$i];

         }

       } else {

         for ($i=0; $i<$cp_size; $i++) {

           $cPath_new .= '_' . $cPath_array[$i];

         }

       }

       $cPath_new .= '_' . $current_category_id;

 

       if (substr($cPath_new, 0, 1) == '_') {

         $cPath_new = substr($cPath_new, 1);

       }

     }

   } else {

     $cPath_new = implode('_', $cPath_array);

   }

 

   return 'cPath=' . $cPath_new;

 }

 

////

// Returns the clients browser

 function tep_browser_detect($component) {

   global $HTTP_USER_AGENT;

 

   return stristr($HTTP_USER_AGENT, $component);

 }

 

////

// Alias function to tep_get_countries()

 function tep_get_country_name($country_id) {

   $country_array = tep_get_countries($country_id);

 

   return $country_array['countries_name'];

 }

 

////

// Returns the zone (State/Province) name

// TABLES: zones

 function tep_get_zone_name($country_id, $zone_id, $default_zone) {

   $zone_query = tep_db_query("select zone_name from " . TABLE_ZONES . " where zone_country_id = '" . (int)$country_id . "' and zone_id = '" . (int)$zone_id . "'");

   if (tep_db_num_rows($zone_query)) {

     $zone = tep_db_fetch_array($zone_query);

     return $zone['zone_name'];

   } else {

     return $default_zone;

   }

 }

 

////

// Returns the zone (State/Province) code

// TABLES: zones

 function tep_get_zone_code($country_id, $zone_id, $default_zone) {

   $zone_query = tep_db_query("select zone_code from " . TABLE_ZONES . " where zone_country_id = '" . (int)$country_id . "' and zone_id = '" . (int)$zone_id . "'");

   if (tep_db_num_rows($zone_query)) {

     $zone = tep_db_fetch_array($zone_query);

     return $zone['zone_code'];

   } else {

     return $default_zone;

   }

 }

 

////

// Wrapper function for round()

 function tep_round($number, $precision) {

   if (strpos($number, '.') && (strlen(substr($number, strpos($number, '.')+1)) > $precision)) {

     $number = substr($number, 0, strpos($number, '.') + 1 + $precision + 1);

 

     if (substr($number, -1) >= 5) {

       if ($precision > 1) {

         $number = substr($number, 0, -1) + ('0.' . str_repeat(0, $precision-1) . '1');

       } elseif ($precision == 1) {

         $number = substr($number, 0, -1) + 0.1;

       } else {

         $number = substr($number, 0, -1) + 1;

       }

     } else {

       $number = substr($number, 0, -1);

     }

   }

 

   return $number;

 }

 

////

// Returns the tax rate for a zone / class

// TABLES: tax_rates, zones_to_geo_zones

 function tep_get_tax_rate($class_id, $country_id = -1, $zone_id = -1) {

   global $customer_zone_id, $customer_country_id;

 

   if ( ($country_id == -1) && ($zone_id == -1) ) {

     if (!tep_session_is_registered('customer_id')) {

       $country_id = STORE_COUNTRY;

       $zone_id = STORE_ZONE;

     } else {

       $country_id = $customer_country_id;

       $zone_id = $customer_zone_id;

     }

   }

 

   $tax_query = tep_db_query("select sum(tax_rate) as tax_rate from " . TABLE_TAX_RATES . " tr left join " . TABLE_ZONES_TO_GEO_ZONES . " za on (tr.tax_zone_id = za.geo_zone_id) left join " . TABLE_GEO_ZONES . " tz on (tz.geo_zone_id = tr.tax_zone_id) where (za.zone_country_id is null or za.zone_country_id = '0' or za.zone_country_id = '" . (int)$country_id . "') and (za.zone_id is null or za.zone_id = '0' or za.zone_id = '" . (int)$zone_id . "') and tr.tax_class_id = '" . (int)$class_id . "' group by tr.tax_priority");

   if (tep_db_num_rows($tax_query)) {

     $tax_multiplier = 1.0;

     while ($tax = tep_db_fetch_array($tax_query)) {

       $tax_multiplier *= 1.0 + ($tax['tax_rate'] / 100);

     }

     return ($tax_multiplier - 1.0) * 100;

   } else {

     return 0;

   }

 }

 

////

// Return the tax description for a zone / class

// TABLES: tax_rates;

 function tep_get_tax_description($class_id, $country_id, $zone_id) {

   $tax_query = tep_db_query("select tax_description from " . TABLE_TAX_RATES . " tr left join " . TABLE_ZONES_TO_GEO_ZONES . " za on (tr.tax_zone_id = za.geo_zone_id) left join " . TABLE_GEO_ZONES . " tz on (tz.geo_zone_id = tr.tax_zone_id) where (za.zone_country_id is null or za.zone_country_id = '0' or za.zone_country_id = '" . (int)$country_id . "') and (za.zone_id is null or za.zone_id = '0' or za.zone_id = '" . (int)$zone_id . "') and tr.tax_class_id = '" . (int)$class_id . "' order by tr.tax_priority");

   if (tep_db_num_rows($tax_query)) {

     $tax_description = '';

     while ($tax = tep_db_fetch_array($tax_query)) {

       $tax_description .= $tax['tax_description'] . ' + ';

     }

     $tax_description = substr($tax_description, 0, -3);

 

     return $tax_description;

   } else {

     return TEXT_UNKNOWN_TAX_RATE;

   }

 }

 

////

// Add tax to a products price

 function tep_add_tax($price, $tax) {

   global $currencies;

 

   if ( (DISPLAY_PRICE_WITH_TAX == 'true') && ($tax > 0) ) {

     return tep_round($price, $currencies->currencies[DEFAULT_CURRENCY]['decimal_places']) + tep_calculate_tax($price, $tax);

   } else {

     return tep_round($price, $currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);

   }

 }

 

// Calculates Tax rounding the result

 function tep_calculate_tax($price, $tax) {

   global $currencies;

 

   return tep_round($price * $tax / 100, $currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);

 }

 

////

// Return the number of products in a category

// TABLES: products, products_to_categories, categories

 function tep_count_products_in_category($category_id, $include_inactive = false) {

   $products_count = 0;

   if ($include_inactive == true) {

     $products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$category_id . "'");

   } else {

     $products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = p2c.products_id and p.products_status = '1' and p2c.categories_id = '" . (int)$category_id . "'");

   }

   $products = tep_db_fetch_array($products_query);

   $products_count += $products['total'];

 

   $child_categories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$category_id . "'");

   if (tep_db_num_rows($child_categories_query)) {

     while ($child_categories = tep_db_fetch_array($child_categories_query)) {

       $products_count += tep_count_products_in_category($child_categories['categories_id'], $include_inactive);

     }

   }

 

   return $products_count;

 }

 

////

// Return true if the category has subcategories

// TABLES: categories

 function tep_has_category_subcategories($category_id) {

   $child_category_query = tep_db_query("select count(*) as count from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$category_id . "'");

   $child_category = tep_db_fetch_array($child_category_query);

 

   if ($child_category['count'] > 0) {

     return true;

   } else {

     return false;

   }

 }

 

////

// Returns the address_format_id for the given country

// TABLES: countries;

 function tep_get_address_format_id($country_id) {

   $address_format_query = tep_db_query("select address_format_id as format_id from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$country_id . "'");

   if (tep_db_num_rows($address_format_query)) {

     $address_format = tep_db_fetch_array($address_format_query);

     return $address_format['format_id'];

   } else {

     return '1';

   }

 }

 

////

// Return a formatted address

// TABLES: address_format

 function tep_address_format($address_format_id, $address, $html, $boln, $eoln) {

   $address_format_query = tep_db_query("select address_format as format from " . TABLE_ADDRESS_FORMAT . " where address_format_id = '" . (int)$address_format_id . "'");

   $address_format = tep_db_fetch_array($address_format_query);

 

   $company = tep_output_string_protected($address['company']);

   if (isset($address['firstname']) && tep_not_null($address['firstname'])) {

     $firstname = tep_output_string_protected($address['firstname']);

     $lastname = tep_output_string_protected($address['lastname']);

   } elseif (isset($address['name']) && tep_not_null($address['name'])) {

     $firstname = tep_output_string_protected($address['name']);

     $lastname = '';

   } else {

     $firstname = '';

     $lastname = '';

   }

   $street = tep_output_string_protected($address['street_address']);

   $suburb = tep_output_string_protected($address['suburb']);

   $city = tep_output_string_protected($address['city']);

   $state = tep_output_string_protected($address['state']);

   if (isset($address['country_id']) && tep_not_null($address['country_id'])) {

     $country = tep_get_country_name($address['country_id']);

 

     if (isset($address['zone_id']) && tep_not_null($address['zone_id'])) {

       $state = tep_get_zone_code($address['country_id'], $address['zone_id'], $state);

     }

   } elseif (isset($address['country']) && tep_not_null($address['country'])) {

     $country = tep_output_string_protected($address['country']);

   } else {

     $country = '';

   }

   $postcode = tep_output_string_protected($address['postcode']);

   $zip = $postcode;

 

   if ($html) {

// HTML Mode

     $HR = '<hr>';

     $hr = '<hr>';

     if ( ($boln == '') && ($eoln == "\n") ) { // Values not specified, use rational defaults

       $CR = '<br>';

       $cr = '<br>';

       $eoln = $cr;

     } else { // Use values supplied

       $CR = $eoln . $boln;

       $cr = $CR;

     }

   } else {

// Text Mode

     $CR = $eoln;

     $cr = $CR;

     $HR = '----------------------------------------';

     $hr = '----------------------------------------';

   }

 

   $statecomma = '';

   $streets = $street;

   if ($suburb != '') $streets = $street . $cr . $suburb;

   if ($country == '') $country = tep_output_string_protected($address['country']);

   if ($state != '') $statecomma = $state . ', ';

 

   $fmt = $address_format['format'];

   eval("\$address = \"$fmt\";");

 

   if ( (ACCOUNT_COMPANY == 'true') && (tep_not_null($company)) ) {

     $address = $company . $cr . $address;

   }

 

   return $address;

 }

 

////

// Return a formatted address

// TABLES: customers, address_book

 function tep_address_label($customers_id, $address_id = 1, $html = false, $boln = '', $eoln = "\n") {

   $address_query = tep_db_query("select entry_firstname as firstname, entry_lastname as lastname, entry_company as company, entry_street_address as street_address, entry_suburb as suburb, entry_city as city, entry_postcode as postcode, entry_state as state, entry_zone_id as zone_id, entry_country_id as country_id from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customers_id . "' and address_book_id = '" . (int)$address_id . "'");

   $address = tep_db_fetch_array($address_query);

 

   $format_id = tep_get_address_format_id($address['country_id']);

 

   return tep_address_format($format_id, $address, $html, $boln, $eoln);

 }

 

 function tep_row_number_format($number) {

   if ( ($number < 10) && (substr($number, 0, 1) != '0') ) $number = '0' . $number;

 

   return $number;

 }

 

 function tep_get_categories($categories_array = '', $parent_id = '0', $indent = '') {

   global $languages_id;

 

   if (!is_array($categories_array)) $categories_array = array();

 

   $categories_query = tep_db_query("select c.categories_id, cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where parent_id = '" . (int)$parent_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");

   while ($categories = tep_db_fetch_array($categories_query)) {

     $categories_array[] = array('id' => $categories['categories_id'],

                                 'text' => $indent . $categories['categories_name']);

 

     if ($categories['categories_id'] != $parent_id) {

       $categories_array = tep_get_categories($categories_array, $categories['categories_id'], $indent . '  ');

     }

   }

 

   return $categories_array;

 }

 

 function tep_get_manufacturers($manufacturers_array = '') {

   if (!is_array($manufacturers_array)) $manufacturers_array = array();

 

   $manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name");

   while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {

     $manufacturers_array[] = array('id' => $manufacturers['manufacturers_id'], 'text' => $manufacturers['manufacturers_name']);

   }

 

   return $manufacturers_array;

 }

 

////

// Return all subcategory IDs

// TABLES: categories

 function tep_get_subcategories(&$subcategories_array, $parent_id = 0) {

   $subcategories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$parent_id . "'");

   while ($subcategories = tep_db_fetch_array($subcategories_query)) {

     $subcategories_array[sizeof($subcategories_array)] = $subcategories['categories_id'];

     if ($subcategories['categories_id'] != $parent_id) {

       tep_get_subcategories($subcategories_array, $subcategories['categories_id']);

     }

   }

 }

 

// Output a raw date string in the selected locale date format

// $raw_date needs to be in this format: YYYY-MM-DD HH:MM:SS

 function tep_date_long($raw_date) {

   if ( ($raw_date == '0000-00-00 00:00:00') || ($raw_date == '') ) return false;

 

   $year = (int)substr($raw_date, 0, 4);

   $month = (int)substr($raw_date, 5, 2);

   $day = (int)substr($raw_date, 8, 2);

   $hour = (int)substr($raw_date, 11, 2);

   $minute = (int)substr($raw_date, 14, 2);

   $second = (int)substr($raw_date, 17, 2);

 

   return strftime(DATE_FORMAT_LONG, mktime($hour,$minute,$second,$month,$day,$year));

 }

 

////

// Output a raw date string in the selected locale date format

// $raw_date needs to be in this format: YYYY-MM-DD HH:MM:SS

// NOTE: Includes a workaround for dates before 01/01/1970 that fail on windows servers

 function tep_date_short($raw_date) {

   if ( ($raw_date == '0000-00-00 00:00:00') || empty($raw_date) ) return false;

 

   $year = substr($raw_date, 0, 4);

   $month = (int)substr($raw_date, 5, 2);

   $day = (int)substr($raw_date, 8, 2);

   $hour = (int)substr($raw_date, 11, 2);

   $minute = (int)substr($raw_date, 14, 2);

   $second = (int)substr($raw_date, 17, 2);

 

   if (@date('Y', mktime($hour, $minute, $second, $month, $day, $year)) == $year) {

     return date(DATE_FORMAT, mktime($hour, $minute, $second, $month, $day, $year));

   } else {

  &nb

Posted

Please, can someone take pity on me :'( I am hesitant in trying to fix it my self, I am afraid of making it worse. Please won't some one give me guidance?

 

Thank you

anj

 

 

:'( I am a newbie for starters and am learning from trial and error. But this Error I can't fix.  After clicking on the buy now button this error dpops up:

 

Warning: Cannot modify header information - headers already sent by (output started at /home/proshowe/public_html/store/includes/languages/english.php:336) in /home/proshowe/public_html/store/includes/functions/general.php on line 29

The only contributions I have installed are viaklix gateway, box shadow, and a orange box template

 

Here is the code from english.php:

<?php
/*
?$Id: english.php,v 1.114 2003/07/09 18:13:39 dgw_ Exp $

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

?Copyright (c) 2003 osCommerce

?Released under the GNU General Public License
*/

// look in your $PATH_LOCALE/locale directory for available locales
// or type locale -a on the server.
// Examples:
// on RedHat try 'en_US'
// on FreeBSD try 'en_US.ISO_8859-1'
// on Windows try 'en', or 'English'
@setlocale(LC_TIME, 'en_US.ISO_8859-1');

define('DATE_FORMAT_SHORT', '%m/%d/%Y'); ?// this is used for strftime()
define('DATE_FORMAT_LONG', '%A %d %B, %Y'); // this is used for strftime()
define('DATE_FORMAT', 'm/d/Y'); // this is used for date()
define('DATE_TIME_FORMAT', DATE_FORMAT_SHORT . ' %H:%M:%S');

////
// Return date in raw format
// $date should be in format mm/dd/yyyy
// raw date is in format YYYYMMDD, or DDMMYYYY
function tep_date_raw($date, $reverse = false) {
?if ($reverse) {
? ?return substr($date, 3, 2) . substr($date, 0, 2) . substr($date, 6, 4);
?} else {
? ?return substr($date, 6, 4) . substr($date, 0, 2) . substr($date, 3, 2);
?}
}

// if USE_DEFAULT_LANGUAGE_CURRENCY is true, use the following currency, instead of the applications default currency (used when changing language)
define('LANGUAGE_CURRENCY', 'USD');

// Global entries for the <html> tag
define('HTML_PARAMS','dir="LTR" lang="en"');

// charset for web pages and emails
define('CHARSET', 'iso-8859-1');

// page title
define('TITLE', 'Pro Show Equipment');

// header text in includes/header.php
define('HEADER_TITLE_CREATE_ACCOUNT', 'Create an Account');
define('HEADER_TITLE_MY_ACCOUNT', 'My Account');
define('HEADER_TITLE_CART_CONTENTS', 'Cart Contents');
define('HEADER_TITLE_CHECKOUT', 'Checkout');
define('HEADER_TITLE_TOP', 'Top');
define('HEADER_TITLE_CATALOG', 'Catalog');
define('HEADER_TITLE_LOGOFF', 'Log Off');
define('HEADER_TITLE_LOGIN', 'Log In');

// footer text in includes/footer.php
define('FOOTER_TEXT_REQUESTS_SINCE', 'requests since');

// text for gender
define('MALE', 'Male');
define('FEMALE', 'Female');
define('MALE_ADDRESS', 'Mr.');
define('FEMALE_ADDRESS', 'Ms.');

// text for date of birth example
define('DOB_FORMAT_STRING', 'mm/dd/yyyy');

// categories box text in includes/boxes/categories.php
define('BOX_HEADING_CATEGORIES', 'Categories');

// manufacturers box text in includes/boxes/manufacturers.php
define('BOX_HEADING_MANUFACTURERS', 'Manufacturers');

// whats_new box text in includes/boxes/whats_new.php
define('BOX_HEADING_WHATS_NEW', 'Feature Products');

// quick_find box text in includes/boxes/quick_find.php
define('BOX_HEADING_SEARCH', 'Quick Find');
define('BOX_SEARCH_TEXT', 'Use keywords to find the product you are looking for.');
define('BOX_SEARCH_ADVANCED_SEARCH', 'Advanced Search');

// specials box text in includes/boxes/specials.php
define('BOX_HEADING_SPECIALS', 'Specials');

// reviews box text in includes/boxes/reviews.php
define('BOX_HEADING_REVIEWS', 'Reviews');
define('BOX_REVIEWS_WRITE_REVIEW', 'Write a review on this product!');
define('BOX_REVIEWS_NO_REVIEWS', 'There are currently no product reviews');
define('BOX_REVIEWS_TEXT_OF_5_STARS', '%s of 5 Stars!');

// shopping_cart box text in includes/boxes/shopping_cart.php
define('BOX_HEADING_SHOPPING_CART', 'Shopping Cart');
define('BOX_SHOPPING_CART_EMPTY', '0 items');

// order_history box text in includes/boxes/order_history.php
define('BOX_HEADING_CUSTOMER_ORDERS', 'Order History');

// best_sellers box text in includes/boxes/best_sellers.php
define('BOX_HEADING_BESTSELLERS', 'Bestsellers');
define('BOX_HEADING_BESTSELLERS_IN', 'Bestsellers in<br>  ');

// notifications box text in includes/boxes/products_notifications.php
define('BOX_HEADING_NOTIFICATIONS', 'Notifications');
define('BOX_NOTIFICATIONS_NOTIFY', 'Notify me of updates to <b>%s</b>');
define('BOX_NOTIFICATIONS_NOTIFY_REMOVE', 'Do not notify me of updates to <b>%s</b>');

// manufacturer box text
define('BOX_HEADING_MANUFACTURER_INFO', 'Manufacturer Info');
define('BOX_MANUFACTURER_INFO_HOMEPAGE', '%s Homepage');
define('BOX_MANUFACTURER_INFO_OTHER_PRODUCTS', 'Other products');

// languages box text in includes/boxes/languages.php
define('BOX_HEADING_LANGUAGES', 'Languages');

// currencies box text in includes/boxes/currencies.php
define('BOX_HEADING_CURRENCIES', 'Currencies');

// information box text in includes/boxes/information.php
define('BOX_HEADING_INFORMATION', 'Information');
define('BOX_INFORMATION_PRIVACY', 'Privacy Notice');
define('BOX_INFORMATION_CONDITIONS', 'Conditions of Use');
define('BOX_INFORMATION_SHIPPING', 'Shipping & Returns');
define('BOX_INFORMATION_CONTACT', 'Contact Us');

// tell a friend box text in includes/boxes/tell_a_friend.php
define('BOX_HEADING_TELL_A_FRIEND', 'Tell A Friend');
define('BOX_TELL_A_FRIEND_TEXT', 'Tell someone you know about this product.');

// checkout procedure text
define('CHECKOUT_BAR_DELIVERY', 'Delivery Information');
define('CHECKOUT_BAR_PAYMENT', 'Payment Information');
define('CHECKOUT_BAR_CONFIRMATION', 'Confirmation');
define('CHECKOUT_BAR_FINISHED', 'Finished!');

// pull down default text
define('PULL_DOWN_DEFAULT', 'Please Select');
define('TYPE_BELOW', 'Type Below');

// javascript messages
define('JS_ERROR', 'Errors have occured during the process of your form.\n\nPlease make the following corrections:\n\n');

define('JS_REVIEW_TEXT', '* The \'Review Text\' must have at least ' . REVIEW_TEXT_MIN_LENGTH . ' characters.\n');
define('JS_REVIEW_RATING', '* You must rate the product for your review.\n');

define('JS_ERROR_NO_PAYMENT_MODULE_SELECTED', '* Please select a payment method for your order.\n');

define('JS_ERROR_SUBMITTED', 'This form has already been submitted. Please press Ok and wait for this process to be completed.');

define('ERROR_NO_PAYMENT_MODULE_SELECTED', 'Please select a payment method for your order.');

define('CATEGORY_COMPANY', 'Company Details');
define('CATEGORY_PERSONAL', 'Your Personal Details');
define('CATEGORY_ADDRESS', 'Your Address');
define('CATEGORY_CONTACT', 'Your Contact Information');
define('CATEGORY_OPTIONS', 'Options');
define('CATEGORY_PASSWORD', 'Your Password');

define('ENTRY_COMPANY', 'Company Name:');
define('ENTRY_COMPANY_ERROR', '');
define('ENTRY_COMPANY_TEXT', '');
define('ENTRY_GENDER', 'Gender:');
define('ENTRY_GENDER_ERROR', 'Please select your Gender.');
define('ENTRY_GENDER_TEXT', '*');
define('ENTRY_FIRST_NAME', 'First Name:');
define('ENTRY_FIRST_NAME_ERROR', 'Your First Name must contain a minimum of ' . ENTRY_FIRST_NAME_MIN_LENGTH . ' characters.');
define('ENTRY_FIRST_NAME_TEXT', '*');
define('ENTRY_LAST_NAME', 'Last Name:');
define('ENTRY_LAST_NAME_ERROR', 'Your Last Name must contain a minimum of ' . ENTRY_LAST_NAME_MIN_LENGTH . ' characters.');
define('ENTRY_LAST_NAME_TEXT', '*');
define('ENTRY_DATE_OF_BIRTH', 'Date of Birth:');
define('ENTRY_DATE_OF_BIRTH_ERROR', 'Your Date of Birth must be in this format: MM/DD/YYYY (eg 05/21/1970)');
define('ENTRY_DATE_OF_BIRTH_TEXT', '* (eg. 05/21/1970)');
define('ENTRY_EMAIL_ADDRESS', 'E-Mail Address:');
define('ENTRY_EMAIL_ADDRESS_ERROR', 'Your E-Mail Address must contain a minimum of ' . ENTRY_EMAIL_ADDRESS_MIN_LENGTH . ' characters.');
define('ENTRY_EMAIL_ADDRESS_CHECK_ERROR', 'Your E-Mail Address does not appear to be valid - please make any necessary corrections.');
define('ENTRY_EMAIL_ADDRESS_ERROR_EXISTS', 'Your E-Mail Address already exists in our records - please log in with the e-mail address or create an account with a different address.');
define('ENTRY_EMAIL_ADDRESS_TEXT', '*');
define('ENTRY_STREET_ADDRESS', 'Street Address:');
define('ENTRY_STREET_ADDRESS_ERROR', 'Your Street Address must contain a minimum of ' . ENTRY_STREET_ADDRESS_MIN_LENGTH . ' characters.');
define('ENTRY_STREET_ADDRESS_TEXT', '*');
define('ENTRY_SUBURB', 'Suburb:');
define('ENTRY_SUBURB_ERROR', '');
define('ENTRY_SUBURB_TEXT', '');
define('ENTRY_POST_CODE', 'Post Code:');
define('ENTRY_POST_CODE_ERROR', 'Your Post Code must contain a minimum of ' . ENTRY_POSTCODE_MIN_LENGTH . ' characters.');
define('ENTRY_POST_CODE_TEXT', '*');
define('ENTRY_CITY', 'City:');
define('ENTRY_CITY_ERROR', 'Your City must contain a minimum of ' . ENTRY_CITY_MIN_LENGTH . ' characters.');
define('ENTRY_CITY_TEXT', '*');
define('ENTRY_STATE', 'State/Province:');
define('ENTRY_STATE_ERROR', 'Your State must contain a minimum of ' . ENTRY_STATE_MIN_LENGTH . ' characters.');
define('ENTRY_STATE_ERROR_SELECT', 'Please select a state from the States pull down menu.');
define('ENTRY_STATE_TEXT', '*');
define('ENTRY_COUNTRY', 'Country:');
define('ENTRY_COUNTRY_ERROR', 'You must select a country from the Countries pull down menu.');
define('ENTRY_COUNTRY_TEXT', '*');
define('ENTRY_TELEPHONE_NUMBER', 'Telephone Number:');
define('ENTRY_TELEPHONE_NUMBER_ERROR', 'Your Telephone Number must contain a minimum of ' . ENTRY_TELEPHONE_MIN_LENGTH . ' characters.');
define('ENTRY_TELEPHONE_NUMBER_TEXT', '*');
define('ENTRY_FAX_NUMBER', 'Fax Number:');
define('ENTRY_FAX_NUMBER_ERROR', '');
define('ENTRY_FAX_NUMBER_TEXT', '');
define('ENTRY_NEWSLETTER', 'Newsletter:');
define('ENTRY_NEWSLETTER_TEXT', '');
define('ENTRY_NEWSLETTER_YES', 'Subscribed');
define('ENTRY_NEWSLETTER_NO', 'Unsubscribed');
define('ENTRY_NEWSLETTER_ERROR', '');
define('ENTRY_PASSWORD', 'Password:');
define('ENTRY_PASSWORD_ERROR', 'Your Password must contain a minimum of ' . ENTRY_PASSWORD_MIN_LENGTH . ' characters.');
define('ENTRY_PASSWORD_ERROR_NOT_MATCHING', 'The Password Confirmation must match your Password.');
define('ENTRY_PASSWORD_TEXT', '*');
define('ENTRY_PASSWORD_CONFIRMATION', 'Password Confirmation:');
define('ENTRY_PASSWORD_CONFIRMATION_TEXT', '*');
define('ENTRY_PASSWORD_CURRENT', 'Current Password:');
define('ENTRY_PASSWORD_CURRENT_TEXT', '*');
define('ENTRY_PASSWORD_CURRENT_ERROR', 'Your Password must contain a minimum of ' . ENTRY_PASSWORD_MIN_LENGTH . ' characters.');
define('ENTRY_PASSWORD_NEW', 'New Password:');
define('ENTRY_PASSWORD_NEW_TEXT', '*');
define('ENTRY_PASSWORD_NEW_ERROR', 'Your new Password must contain a minimum of ' . ENTRY_PASSWORD_MIN_LENGTH . ' characters.');
define('ENTRY_PASSWORD_NEW_ERROR_NOT_MATCHING', 'The Password Confirmation must match your new Password.');
define('PASSWORD_HIDDEN', '--HIDDEN--');

define('FORM_REQUIRED_INFORMATION', '* Required information');

// constants for use in tep_prev_next_display function
define('TEXT_RESULT_PAGE', 'Result Pages:');
define('TEXT_DISPLAY_NUMBER_OF_PRODUCTS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> products)');
define('TEXT_DISPLAY_NUMBER_OF_ORDERS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> orders)');
define('TEXT_DISPLAY_NUMBER_OF_REVIEWS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> reviews)');
define('TEXT_DISPLAY_NUMBER_OF_PRODUCTS_NEW', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> new products)');
define('TEXT_DISPLAY_NUMBER_OF_SPECIALS', 'Displaying <b>%d</b> to <b>%d</b> (of <b>%d</b> specials)');

define('PREVNEXT_TITLE_FIRST_PAGE', 'First Page');
define('PREVNEXT_TITLE_PREVIOUS_PAGE', 'Previous Page');
define('PREVNEXT_TITLE_NEXT_PAGE', 'Next Page');
define('PREVNEXT_TITLE_LAST_PAGE', 'Last Page');
define('PREVNEXT_TITLE_PAGE_NO', 'Page %d');
define('PREVNEXT_TITLE_PREV_SET_OF_NO_PAGE', 'Previous Set of %d Pages');
define('PREVNEXT_TITLE_NEXT_SET_OF_NO_PAGE', 'Next Set of %d Pages');
define('PREVNEXT_BUTTON_FIRST', '<<FIRST');
define('PREVNEXT_BUTTON_PREV', '[<< Prev]');
define('PREVNEXT_BUTTON_NEXT', '[Next >>]');
define('PREVNEXT_BUTTON_LAST', 'LAST>>');

define('IMAGE_BUTTON_ADD_ADDRESS', 'Add Address');
define('IMAGE_BUTTON_ADDRESS_BOOK', 'Address Book');
define('IMAGE_BUTTON_BACK', 'Back');
define('IMAGE_BUTTON_BUY_NOW', 'Buy Now');
define('IMAGE_BUTTON_CHANGE_ADDRESS', 'Change Address');
define('IMAGE_BUTTON_CHECKOUT', 'Checkout');
define('IMAGE_BUTTON_CONFIRM_ORDER', 'Confirm Order');
define('IMAGE_BUTTON_CONTINUE', 'Continue');
define('IMAGE_BUTTON_CONTINUE_SHOPPING', 'Continue Shopping');
define('IMAGE_BUTTON_DELETE', 'Delete');
define('IMAGE_BUTTON_EDIT_ACCOUNT', 'Edit Account');
define('IMAGE_BUTTON_HISTORY', 'Order History');
define('IMAGE_BUTTON_LOGIN', 'Sign In');
define('IMAGE_BUTTON_IN_CART', 'Add to Cart');
define('IMAGE_BUTTON_NOTIFICATIONS', 'Notifications');
define('IMAGE_BUTTON_QUICK_FIND', 'Quick Find');
define('IMAGE_BUTTON_REMOVE_NOTIFICATIONS', 'Remove Notifications');
define('IMAGE_BUTTON_REVIEWS', 'Reviews');
define('IMAGE_BUTTON_SEARCH', 'Search');
define('IMAGE_BUTTON_SHIPPING_OPTIONS', 'Shipping Options');
define('IMAGE_BUTTON_TELL_A_FRIEND', 'Tell a Friend');
define('IMAGE_BUTTON_UPDATE', 'Update');
define('IMAGE_BUTTON_UPDATE_CART', 'Update Cart');
define('IMAGE_BUTTON_WRITE_REVIEW', 'Write Review');

define('SMALL_IMAGE_BUTTON_DELETE', 'Delete');
define('SMALL_IMAGE_BUTTON_EDIT', 'Edit');
define('SMALL_IMAGE_BUTTON_VIEW', 'View');

define('ICON_ARROW_RIGHT', 'more');
define('ICON_CART', 'In Cart');
define('ICON_ERROR', 'Error');
define('ICON_SUCCESS', 'Success');
define('ICON_WARNING', 'Warning');

define('TEXT_GREETING_PERSONAL', 'Welcome back <span class="greetUser">%s!</span> Would you like to see which <a href="%s"><u>featured products</u></a> are available to purchase?');
define('TEXT_GREETING_PERSONAL_RELOGON', '<small>If you are not %s, please <a href="%s"><u>log yourself in</u></a> with your account information.</small>');
define('TEXT_GREETING_GUEST', 'Welcome <span class="greetUser">Guest!</span> Would you like to <a href="%s"><u>log yourself in</u></a>? Or would you prefer to <a href="%s"><u>create an account</u></a>?');

define('TEXT_SORT_PRODUCTS', 'Sort products ');
define('TEXT_DESCENDINGLY', 'descendingly');
define('TEXT_ASCENDINGLY', 'ascendingly');
define('TEXT_BY', ' by ');

define('TEXT_REVIEW_BY', 'by %s');
define('TEXT_REVIEW_WORD_COUNT', '%s words');
define('TEXT_REVIEW_RATING', 'Rating: %s [%s]');
define('TEXT_REVIEW_DATE_ADDED', 'Date Added: %s');
define('TEXT_NO_REVIEWS', 'There are currently no product reviews.');

define('TEXT_NO_NEW_PRODUCTS', 'There are currently no products.');

define('TEXT_UNKNOWN_TAX_RATE', 'Unknown tax rate');

define('TEXT_REQUIRED', '<span class="errorText">Required</span>');

define('ERROR_TEP_MAIL', '<font face="Verdana, Arial" size="2" color="#ff0000"><b><small>TEP ERROR:</small> Cannot send the email through the specified SMTP server. Please check your php.ini setting and correct the SMTP server if necessary.</b></font>');
define('WARNING_INSTALL_DIRECTORY_EXISTS', 'Warning: Installation directory exists at: ' . dirname($HTTP_SERVER_VARS['SCRIPT_FILENAME']) . '/install. Please remove this directory for security reasons.');
define('WARNING_CONFIG_FILE_WRITEABLE', 'Warning: I am able to write to the configuration file: ' . dirname($HTTP_SERVER_VARS['SCRIPT_FILENAME']) . '/includes/configure.php. This is a potential security risk - please set the right user permissions on this file.');
define('WARNING_SESSION_DIRECTORY_NON_EXISTENT', 'Warning: The sessions directory does not exist: ' . tep_session_save_path() . '. Sessions will not work until this directory is created.');
define('WARNING_SESSION_DIRECTORY_NOT_WRITEABLE', 'Warning: I am not able to write to the sessions directory: ' . tep_session_save_path() . '. Sessions will not work until the right user permissions are set.');
define('WARNING_SESSION_AUTO_START', 'Warning: session.auto_start is enabled - please disable this php feature in php.ini and restart the web server.');
define('WARNING_DOWNLOAD_DIRECTORY_NON_EXISTENT', 'Warning: The downloadable products directory does not exist: ' . DIR_FS_DOWNLOAD . '. Downloadable products will not work until this directory is valid.');

define('TEXT_CCVAL_ERROR_INVALID_DATE', 'The expiry date entered for the credit card is invalid.<br>Please check the date and try again.');
define('TEXT_CCVAL_ERROR_INVALID_NUMBER', 'The credit card number entered is invalid.<br>Please check the number and try again.');
define('TEXT_CCVAL_ERROR_UNKNOWN_CARD', 'The first four digits of the number entered are: %s<br>If that number is correct, we do not accept that type of credit card.<br>If it is wrong, please try again.');

/*
?The following copyright announcement can only be
?appropriately modified or removed if the layout of
?the site theme has been modified to distinguish
?itself from the default osCommerce-copyrighted
?theme.

?For more information please read the following
?Frequently Asked Questions entry on the osCommerce
?support site:

?http://www.oscommerce.com/community.php/faq,26/q,50

?Please leave this comment intact together with the
?following copyright announcement.
*/
define('FOOTER_TEXT_BODY', 'Copyright © 2003 <a href="http://www.ProShowEquipment.com" target="_blank">ProShowEquioment</a><br>Powered by <a href="http://www.oscommerce.com" target="_blank">osCommerce</a>');
?>

Here is the code from: general.php:

 

<?php

/*

?$Id: general.php,v 1.231 2003/07/09 01:15:48 hpdl Exp $

 

?osCommerce, Open Source E-Commerce Solutions

?http://www.oscommerce.com

 

?Copyright © 2003 osCommerce

 

?Released under the GNU General Public License

*/

 

////

// Stop from parsing any further PHP code

?function tep_exit() {

? tep_session_close();

? exit();

?}

 

////

// Redirect to another page or site

?function tep_redirect($url) {

? ?if ( (ENABLE_SSL == true) && (getenv('HTTPS') == 'on') ) { // We are loading an SSL page

? ? ?if (substr($url, 0, strlen(HTTP_SERVER)) == HTTP_SERVER) { // NONSSL url

? ? ? ?$url = HTTPS_SERVER . substr($url, strlen(HTTP_SERVER)); // Change it to SSL

? ? ?}

? ?}

 

? ?header('Location: ' . $url);

 

? ?tep_exit();

?}

 

////

// Parse the data used in the html tags to ensure the tags will not break

?function tep_parse_input_field_data($data, $parse) {

? ?return strtr(trim($data), $parse);

?}

 

?function tep_output_string($string, $translate = false, $protected = false) {

? ?if ($protected == true) {

? ? ?return htmlspecialchars($string);

? ?} else {

? ? ?if ($translate == false) {

? ? ? ?return tep_parse_input_field_data($string, array('"' => '"'));

? ? ?} else {

? ? ? ?return tep_parse_input_field_data($string, $translate);

? ? ?}

? ?}

?}

 

?function tep_output_string_protected($string) {

? ?return tep_output_string($string, false, true);

?}

 

?function tep_sanitize_string($string) {

? ?$string = ereg_replace(' +', ' ', trim($string));

 

? ?return preg_replace("/[<>]/", '_', $string);

?}

 

////

// Return a random row from a database query

?function tep_random_select($query) {

? ?$random_product = '';

? ?$random_query = tep_db_query($query);

? ?$num_rows = tep_db_num_rows($random_query);

? ?if ($num_rows > 0) {

? ? ?$random_row = tep_rand(0, ($num_rows - 1));

? ? ?tep_db_data_seek($random_query, $random_row);

? ? ?$random_product = tep_db_fetch_array($random_query);

? ?}

 

? ?return $random_product;

?}

 

////

// Return a product's name

// TABLES: products

?function tep_get_products_name($product_id, $language = '') {

? ?global $languages_id;

 

? ?if (empty($language)) $language = $languages_id;

 

? ?$product_query = tep_db_query("select products_name from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$product_id . "' and language_id = '" . (int)$language . "'");

? ?$product = tep_db_fetch_array($product_query);

 

? ?return $product['products_name'];

?}

 

////

// Return a product's special price (returns nothing if there is no offer)

// TABLES: products

?function tep_get_products_special_price($product_id) {

? ?$product_query = tep_db_query("select specials_new_products_price from " . TABLE_SPECIALS . " where products_id = '" . (int)$product_id . "' and status");

? ?$product = tep_db_fetch_array($product_query);

 

? ?return $product['specials_new_products_price'];

?}

 

////

// Return a product's stock

// TABLES: products

?function tep_get_products_stock($products_id) {

? ?$products_id = tep_get_prid($products_id);

? ?$stock_query = tep_db_query("select products_quantity from " . TABLE_PRODUCTS . " where products_id = '" . (int)$products_id . "'");

? ?$stock_values = tep_db_fetch_array($stock_query);

 

? ?return $stock_values['products_quantity'];

?}

 

////

// Check if the required stock is available

// If insufficent stock is available return an out of stock message

?function tep_check_stock($products_id, $products_quantity) {

? ?$stock_left = tep_get_products_stock($products_id) - $products_quantity;

? ?$out_of_stock = '';

 

? ?if ($stock_left < 0) {

? ? ?$out_of_stock = '<span class="markProductOutOfStock">' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . '</span>';

? ?}

 

? ?return $out_of_stock;

?}

 

////

// Break a word in a string if it is longer than a specified length ($len)

?function tep_break_string($string, $len, $break_char = '-') {

? ?$l = 0;

? ?$output = '';

? ?for ($i=0, $n=strlen($string); $i<$n; $i++) {

? ? ?$char = substr($string, $i, 1);

? ? ?if ($char != ' ') {

? ? ? ?$l++;

? ? ?} else {

? ? ? ?$l = 0;

? ? ?}

? ? ?if ($l > $len) {

? ? ? ?$l = 1;

? ? ? ?$output .= $break_char;

? ? ?}

? ? ?$output .= $char;

? ?}

 

? ?return $output;

?}

 

////

// Return all HTTP GET variables, except those passed as a parameter

?function tep_get_all_get_params($exclude_array = '') {

? ?global $HTTP_GET_VARS;

 

? ?if (!is_array($exclude_array)) $exclude_array = array();

 

? ?$get_url = '';

? ?if (is_array($HTTP_GET_VARS) && (sizeof($HTTP_GET_VARS) > 0)) {

? ? ?reset($HTTP_GET_VARS);

? ? ?while (list($key, $value) = each($HTTP_GET_VARS)) {

? ? ? ?if ( (strlen($value) > 0) && ($key != tep_session_name()) && ($key != 'error') && (!in_array($key, $exclude_array)) && ($key != 'x') && ($key != 'y') ) {

? ? ? ? ?$get_url .= $key . '=' . rawurlencode(stripslashes($value)) . '&';

? ? ? ?}

? ? ?}

? ?}

 

? ?return $get_url;

?}

 

////

// Returns an array with countries

// TABLES: countries

?function tep_get_countries($countries_id = '', $with_iso_codes = false) {

? ?$countries_array = array();

? ?if (tep_not_null($countries_id)) {

? ? ?if ($with_iso_codes == true) {

? ? ? ?$countries = tep_db_query("select countries_name, countries_iso_code_2, countries_iso_code_3 from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "' order by countries_name");

? ? ? ?$countries_values = tep_db_fetch_array($countries);

? ? ? ?$countries_array = array('countries_name' => $countries_values['countries_name'],

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 'countries_iso_code_2' => $countries_values['countries_iso_code_2'],

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 'countries_iso_code_3' => $countries_values['countries_iso_code_3']);

? ? ?} else {

? ? ? ?$countries = tep_db_query("select countries_name from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$countries_id . "'");

? ? ? ?$countries_values = tep_db_fetch_array($countries);

? ? ? ?$countries_array = array('countries_name' => $countries_values['countries_name']);

? ? ?}

? ?} else {

? ? ?$countries = tep_db_query("select countries_id, countries_name from " . TABLE_COUNTRIES . " order by countries_name");

? ? ?while ($countries_values = tep_db_fetch_array($countries)) {

? ? ? ?$countries_array[] = array('countries_id' => $countries_values['countries_id'],

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 'countries_name' => $countries_values['countries_name']);

? ? ?}

? ?}

 

? ?return $countries_array;

?}

 

////

// Alias function to tep_get_countries, which also returns the countries iso codes

?function tep_get_countries_with_iso_codes($countries_id) {

? ?return tep_get_countries($countries_id, true);

?}

 

////

// Generate a path to categories

?function tep_get_path($current_category_id = '') {

? ?global $cPath_array;

 

? ?if (tep_not_null($current_category_id)) {

? ? ?$cp_size = sizeof($cPath_array);

? ? ?if ($cp_size == 0) {

? ? ? ?$cPath_new = $current_category_id;

? ? ?} else {

? ? ? ?$cPath_new = '';

? ? ? ?$last_category_query = tep_db_query("select parent_id from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$cPath_array[($cp_size-1)] . "'");

? ? ? ?$last_category = tep_db_fetch_array($last_category_query);

 

? ? ? ?$current_category_query = tep_db_query("select parent_id from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");

? ? ? ?$current_category = tep_db_fetch_array($current_category_query);

 

? ? ? ?if ($last_category['parent_id'] == $current_category['parent_id']) {

? ? ? ? ?for ($i=0; $i<($cp_size-1); $i++) {

? ? ? ? ? ?$cPath_new .= '_' . $cPath_array[$i];

? ? ? ? ?}

? ? ? ?} else {

? ? ? ? ?for ($i=0; $i<$cp_size; $i++) {

? ? ? ? ? ?$cPath_new .= '_' . $cPath_array[$i];

? ? ? ? ?}

? ? ? ?}

? ? ? ?$cPath_new .= '_' . $current_category_id;

 

? ? ? ?if (substr($cPath_new, 0, 1) == '_') {

? ? ? ? ?$cPath_new = substr($cPath_new, 1);

? ? ? ?}

? ? ?}

? ?} else {

? ? ?$cPath_new = implode('_', $cPath_array);

? ?}

 

? ?return 'cPath=' . $cPath_new;

?}

 

////

// Returns the clients browser

?function tep_browser_detect($component) {

? ?global $HTTP_USER_AGENT;

 

? ?return stristr($HTTP_USER_AGENT, $component);

?}

 

////

// Alias function to tep_get_countries()

?function tep_get_country_name($country_id) {

? ?$country_array = tep_get_countries($country_id);

 

? ?return $country_array['countries_name'];

?}

 

////

// Returns the zone (State/Province) name

// TABLES: zones

?function tep_get_zone_name($country_id, $zone_id, $default_zone) {

? ?$zone_query = tep_db_query("select zone_name from " . TABLE_ZONES . " where zone_country_id = '" . (int)$country_id . "' and zone_id = '" . (int)$zone_id . "'");

? ?if (tep_db_num_rows($zone_query)) {

? ? ?$zone = tep_db_fetch_array($zone_query);

? ? ?return $zone['zone_name'];

? ?} else {

? ? ?return $default_zone;

? ?}

?}

 

////

// Returns the zone (State/Province) code

// TABLES: zones

?function tep_get_zone_code($country_id, $zone_id, $default_zone) {

? ?$zone_query = tep_db_query("select zone_code from " . TABLE_ZONES . " where zone_country_id = '" . (int)$country_id . "' and zone_id = '" . (int)$zone_id . "'");

? ?if (tep_db_num_rows($zone_query)) {

? ? ?$zone = tep_db_fetch_array($zone_query);

? ? ?return $zone['zone_code'];

? ?} else {

? ? ?return $default_zone;

? ?}

?}

 

////

// Wrapper function for round()

?function tep_round($number, $precision) {

? ?if (strpos($number, '.') && (strlen(substr($number, strpos($number, '.')+1)) > $precision)) {

? ? ?$number = substr($number, 0, strpos($number, '.') + 1 + $precision + 1);

 

? ? ?if (substr($number, -1) >= 5) {

? ? ? ?if ($precision > 1) {

? ? ? ? ?$number = substr($number, 0, -1) + ('0.' . str_repeat(0, $precision-1) . '1');

? ? ? ?} elseif ($precision == 1) {

? ? ? ? ?$number = substr($number, 0, -1) + 0.1;

? ? ? ?} else {

? ? ? ? ?$number = substr($number, 0, -1) + 1;

? ? ? ?}

? ? ?} else {

? ? ? ?$number = substr($number, 0, -1);

? ? ?}

? ?}

 

? ?return $number;

?}

 

////

// Returns the tax rate for a zone / class

// TABLES: tax_rates, zones_to_geo_zones

?function tep_get_tax_rate($class_id, $country_id = -1, $zone_id = -1) {

? ?global $customer_zone_id, $customer_country_id;

 

? ?if ( ($country_id == -1) && ($zone_id == -1) ) {

? ? ?if (!tep_session_is_registered('customer_id')) {

? ? ? ?$country_id = STORE_COUNTRY;

? ? ? ?$zone_id = STORE_ZONE;

? ? ?} else {

? ? ? ?$country_id = $customer_country_id;

? ? ? ?$zone_id = $customer_zone_id;

? ? ?}

? ?}

 

? ?$tax_query = tep_db_query("select sum(tax_rate) as tax_rate from " . TABLE_TAX_RATES . " tr left join " . TABLE_ZONES_TO_GEO_ZONES . " za on (tr.tax_zone_id = za.geo_zone_id) left join " . TABLE_GEO_ZONES . " tz on (tz.geo_zone_id = tr.tax_zone_id) where (za.zone_country_id is null or za.zone_country_id = '0' or za.zone_country_id = '" . (int)$country_id . "') and (za.zone_id is null or za.zone_id = '0' or za.zone_id = '" . (int)$zone_id . "') and tr.tax_class_id = '" . (int)$class_id . "' group by tr.tax_priority");

? ?if (tep_db_num_rows($tax_query)) {

? ? ?$tax_multiplier = 1.0;

? ? ?while ($tax = tep_db_fetch_array($tax_query)) {

? ? ? ?$tax_multiplier *= 1.0 + ($tax['tax_rate'] / 100);

? ? ?}

? ? ?return ($tax_multiplier - 1.0) * 100;

? ?} else {

? ? ?return 0;

? ?}

?}

 

////

// Return the tax description for a zone / class

// TABLES: tax_rates;

?function tep_get_tax_description($class_id, $country_id, $zone_id) {

? ?$tax_query = tep_db_query("select tax_description from " . TABLE_TAX_RATES . " tr left join " . TABLE_ZONES_TO_GEO_ZONES . " za on (tr.tax_zone_id = za.geo_zone_id) left join " . TABLE_GEO_ZONES . " tz on (tz.geo_zone_id = tr.tax_zone_id) where (za.zone_country_id is null or za.zone_country_id = '0' or za.zone_country_id = '" . (int)$country_id . "') and (za.zone_id is null or za.zone_id = '0' or za.zone_id = '" . (int)$zone_id . "') and tr.tax_class_id = '" . (int)$class_id . "' order by tr.tax_priority");

? ?if (tep_db_num_rows($tax_query)) {

? ? ?$tax_description = '';

? ? ?while ($tax = tep_db_fetch_array($tax_query)) {

? ? ? ?$tax_description .= $tax['tax_description'] . ' + ';

? ? ?}

? ? ?$tax_description = substr($tax_description, 0, -3);

 

? ? ?return $tax_description;

? ?} else {

? ? ?return TEXT_UNKNOWN_TAX_RATE;

? ?}

?}

 

////

// Add tax to a products price

?function tep_add_tax($price, $tax) {

? ?global $currencies;

 

? ?if ( (DISPLAY_PRICE_WITH_TAX == 'true') && ($tax > 0) ) {

? ? ?return tep_round($price, $currencies->currencies[DEFAULT_CURRENCY]['decimal_places']) + tep_calculate_tax($price, $tax);

? ?} else {

? ? ?return tep_round($price, $currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);

? ?}

?}

 

// Calculates Tax rounding the result

?function tep_calculate_tax($price, $tax) {

? ?global $currencies;

 

? ?return tep_round($price * $tax / 100, $currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);

?}

 

////

// Return the number of products in a category

// TABLES: products, products_to_categories, categories

?function tep_count_products_in_category($category_id, $include_inactive = false) {

? ?$products_count = 0;

? ?if ($include_inactive == true) {

? ? ?$products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$category_id . "'");

? ?} else {

? ? ?$products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = p2c.products_id and p.products_status = '1' and p2c.categories_id = '" . (int)$category_id . "'");

? ?}

? ?$products = tep_db_fetch_array($products_query);

? ?$products_count += $products['total'];

 

? ?$child_categories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$category_id . "'");

? ?if (tep_db_num_rows($child_categories_query)) {

? ? ?while ($child_categories = tep_db_fetch_array($child_categories_query)) {

? ? ? ?$products_count += tep_count_products_in_category($child_categories['categories_id'], $include_inactive);

? ? ?}

? ?}

 

? ?return $products_count;

?}

 

////

// Return true if the category has subcategories

// TABLES: categories

?function tep_has_category_subcategories($category_id) {

? ?$child_category_query = tep_db_query("select count(*) as count from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$category_id . "'");

? ?$child_category = tep_db_fetch_array($child_category_query);

 

? ?if ($child_category['count'] > 0) {

? ? ?return true;

? ?} else {

? ? ?return false;

? ?}

?}

 

////

// Returns the address_format_id for the given country

// TABLES: countries;

?function tep_get_address_format_id($country_id) {

? ?$address_format_query = tep_db_query("select address_format_id as format_id from " . TABLE_COUNTRIES . " where countries_id = '" . (int)$country_id . "'");

? ?if (tep_db_num_rows($address_format_query)) {

? ? ?$address_format = tep_db_fetch_array($address_format_query);

? ? ?return $address_format['format_id'];

? ?} else {

? ? ?return '1';

? ?}

?}

 

////

// Return a formatted address

// TABLES: address_format

?function tep_address_format($address_format_id, $address, $html, $boln, $eoln) {

? ?$address_format_query = tep_db_query("select address_format as format from " . TABLE_ADDRESS_FORMAT . " where address_format_id = '" . (int)$address_format_id . "'");

? ?$address_format = tep_db_fetch_array($address_format_query);

 

? ?$company = tep_output_string_protected($address['company']);

? ?if (isset($address['firstname']) && tep_not_null($address['firstname'])) {

? ? ?$firstname = tep_output_string_protected($address['firstname']);

? ? ?$lastname = tep_output_string_protected($address['lastname']);

? ?} elseif (isset($address['name']) && tep_not_null($address['name'])) {

? ? ?$firstname = tep_output_string_protected($address['name']);

? ? ?$lastname = '';

? ?} else {

? ? ?$firstname = '';

? ? ?$lastname = '';

? ?}

? ?$street = tep_output_string_protected($address['street_address']);

? ?$suburb = tep_output_string_protected($address['suburb']);

? ?$city = tep_output_string_protected($address['city']);

? ?$state = tep_output_string_protected($address['state']);

? ?if (isset($address['country_id']) && tep_not_null($address['country_id'])) {

? ? ?$country = tep_get_country_name($address['country_id']);

 

? ? ?if (isset($address['zone_id']) && tep_not_null($address['zone_id'])) {

? ? ? ?$state = tep_get_zone_code($address['country_id'], $address['zone_id'], $state);

? ? ?}

? ?} elseif (isset($address['country']) && tep_not_null($address['country'])) {

? ? ?$country = tep_output_string_protected($address['country']);

? ?} else {

? ? ?$country = '';

? ?}

? ?$postcode = tep_output_string_protected($address['postcode']);

? ?$zip = $postcode;

 

? ?if ($html) {

// HTML Mode

? ? ?$HR = '<hr>';

? ? ?$hr = '<hr>';

? ? ?if ( ($boln == '') && ($eoln == "\n") ) { // Values not specified, use rational defaults

? ? ? ?$CR = '<br>';

? ? ? ?$cr = '<br>';

? ? ? ?$eoln = $cr;

? ? ?} else { // Use values supplied

? ? ? ?$CR = $eoln . $boln;

? ? ? ?$cr = $CR;

? ? ?}

? ?} else {

// Text Mode

? ? ?$CR = $eoln;

? ? ?$cr = $CR;

? ? ?$HR = '----------------------------------------';

? ? ?$hr = '----------------------------------------';

? ?}

 

? ?$statecomma = '';

? ?$streets = $street;

? ?if ($suburb != '') $streets = $street . $cr . $suburb;

? ?if ($country == '') $country = tep_output_string_protected($address['country']);

? ?if ($state != '') $statecomma = $state . ', ';

 

? ?$fmt = $address_format['format'];

? ?eval("\$address = \"$fmt\";");

 

? ?if ( (ACCOUNT_COMPANY == 'true') && (tep_not_null($company)) ) {

? ? ?$address = $company . $cr . $address;

? ?}

 

? ?return $address;

?}

 

////

// Return a formatted address

// TABLES: customers, address_book

?function tep_address_label($customers_id, $address_id = 1, $html = false, $boln = '', $eoln = "\n") {

? ?$address_query = tep_db_query("select entry_firstname as firstname, entry_lastname as lastname, entry_company as company, entry_street_address as street_address, entry_suburb as suburb, entry_city as city, entry_postcode as postcode, entry_state as state, entry_zone_id as zone_id, entry_country_id as country_id from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customers_id . "' and address_book_id = '" . (int)$address_id . "'");

? ?$address = tep_db_fetch_array($address_query);

 

? ?$format_id = tep_get_address_format_id($address['country_id']);

 

? ?return tep_address_format($format_id, $address, $html, $boln, $eoln);

?}

 

?function tep_row_number_format($number) {

? ?if ( ($number < 10) && (substr($number, 0, 1) != '0') ) $number = '0' . $number;

 

? ?return $number;

?}

 

?function tep_get_categories($categories_array = '', $parent_id = '0', $indent = '') {

? ?global $languages_id;

 

? ?if (!is_array($categories_array)) $categories_array = array();

 

? ?$categories_query = tep_db_query("select c.categories_id, cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where parent_id = '" . (int)$parent_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");

? ?while ($categories = tep_db_fetch_array($categories_query)) {

? ? ?$categories_array[] = array('id' => $categories['categories_id'],

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?'text' => $indent . $categories['categories_name']);

 

? ? ?if ($categories['categories_id'] != $parent_id) {

? ? ? ?$categories_array = tep_get_categories($categories_array, $categories['categories_id'], $indent . '  ');

? ? ?}

? ?}

 

? ?return $categories_array;

?}

 

?function tep_get_manufacturers($manufacturers_array = '') {

? ?if (!is_array($manufacturers_array)) $manufacturers_array = array();

 

? ?$manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name");

? ?while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {

? ? ?$manufacturers_array[] = array('id' => $manufacturers['manufacturers_id'], 'text' => $manufacturers['manufacturers_name']);

? ?}

 

? ?return $manufacturers_array;

?}

 

////

// Return all subcategory IDs

// TABLES: categories

?function tep_get_subcategories(&$subcategories_array, $parent_id = 0) {

? ?$subcategories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$parent_id . "'");

? ?while ($subcategories = tep_db_fetch_array($subcategories_query)) {

? ? ?$subcategories_array[sizeof($subcategories_array)] = $subcategories['categories_id'];

? ? ?if ($subcategories['categories_id'] != $parent_id) {

? ? ? ?tep_get_subcategories($subcategories_array, $subcategories['categories_id']);

? ? ?}

? ?}

?}

 

// Output a raw date string in the selected locale date format

// $raw_date needs to be in this format: YYYY-MM-DD HH:MM:SS

?function tep_date_long($raw_date) {

? ?if ( ($raw_date == '0000-00-00 00:00:00') || ($raw_date == '') ) return false;

 

? ?$year = (int)substr($raw_date, 0, 4);

? ?$month = (int)substr($raw_date, 5, 2);

? ?$day = (int)substr($raw_date, 8, 2);

? ?$hour = (int)substr($raw_date, 11, 2);

? ?$minute = (int)substr($raw_date, 14, 2);

? ?$second = (int)substr($raw_date, 17, 2);

 

? ?return strftime(DATE_FORMAT_LONG, mktime($hour,$minute,$second,$month,$day,$year));

?}

 

////

// Output a raw date string in the selected locale date format

// $raw_date needs to be in this format: YYYY-MM-DD HH:MM:SS

// NOTE: Includes a workaround for dates before 01/01/1970 that fail on windows servers

?function tep_date_short($raw_date) {

? ?if ( ($raw_date == '0000-00-00 00:00:00') || empty($raw_date) ) return false;

 

? ?$year = substr($raw_date, 0, 4);

? ?$month = (int)substr($raw_date, 5, 2);

? ?$day = (int)substr($raw_date, 8, 2);

? ?$hour = (int)substr($raw_date, 11, 2);

? ?$minute = (int)substr($raw_date, 14, 2);

? ?$second = (int)substr($raw_date, 17, 2);

 

? ?if (@date('Y', mktime($hour, $minute, $second, $month, $day, $year)) == $year) {

? ? ?return date(DATE_FORMAT, mktime($hour, $minute, $second, $month, $day, $year));

? ?} else {

? &nb

[right][post=674181]<{POST_SNAPBACK}>[/post][/right]

Posted

YES!!!!! That was it. Thanks soooo much!!! I feel so honored to be with mentors like yourself, Thanks for saving me many days of trying to trouble shoot this by my self and for teaching me what I need to look out for. Because of you and so many others I <b>can do this myself<b> (with a little help) Thanks again for your time and for helping me fix my delemia!

 

Anj

 

You probably have white space at the end of the following file.

 

/home/proshowe/public_html/store/includes/languages/english.php

 

Delete the spaces and/or newlines per

 

http://www.oscommerce.info/docs/english/e_...ready_sent.html

 

and you should be good to go.

 

HTH

Tom

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...