Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Psytanium

Members
  • Posts

    531
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by Psytanium

  1. I attached an example, for a clear menu visibility. I changed the borders color to something similar to the menu container background color, icons and font size, font weight. The content area on the right side also needs to be softer, lighter, clear and clean. Big thanks
  2. Hi, First time to check the OSC4 demo, really interesting features and integrations, can't wait to explore the core structure and codes. But i want to add my comment on the backend design / UI, this need real improvement, I suggest you change the colors, reduce text and buttons sizes, align the interface elements, etc... Good luck
  3. Found it, I used the function if ( tep_has_spec_group ($current_category_id, 'show_filter') == true ) But I moved the function from products_specification.php to general.php
  4. How can I hide the filter in a category that don't have any assigned specification ? Something like: if (Filter exist) require( DIR_WS_MODULES . 'products_filter.php' );
  5. Trying to implement the new Facebook Conversion API on OSC2.3.4. Any idea how to start ? I've already created the API in Facebook Event Manager, now how to add it in our website ?
  6. I changed this in includes/functions/general.php function tep_get_all_get_params( $exclude_array = 'allow' ) { 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 ( is_string( $value ) && ( 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; } To this function tep_get_all_get_params($exclude_array = '') { global $HTTP_GET_VARS; if ($exclude_array == '') $exclude_array = array(); $get_url = ''; reset($HTTP_GET_VARS); while (list($key, $value) = each($HTTP_GET_VARS)) { if (($key != tep_session_name()) && ($key != 'error') && (!in_array($key, $exclude_array))) { if (is_array($value)) { while (list($key2, $value2) = each($value)) { $get_url .= $key . '['.$key2.']=' . rawurlencode(stripslashes($value2)) . '&'; } } else { $get_url .= $key . '=' . $value . '&'; } } } return $get_url; } Now the filter arrays work fine when changing currency. Hopefully I didn't mess with something else.
  7. Hi, If i choose some multiple selection in the filters, then change the currency, the page load and the selected specifications are unchecked. You have a quick fix for this ? I think the default osc2.3.4 tep_get_all_get_params function can't handle arrays in the url. For example this url https://www.domain.com/products_filter.php?f28[3]=Samsung&f22[1]=Blue&cPath=220_83_97 Become like this after I change currency: https://www.woodandgas.com/products_filter.php?cPath=220_83_97&currency=EUR The filter parameters disappeared.
  8. Hi Jack, What could be the problem if I can run the script directly from browser and get the rates updated, but can't run it from Cronjob. I did set it to 1 min, nothing change. This is the cron url im using : php /home/username/public_html/backend/auto_update_currencies.php Any ideas where to look ?
  9. When i run googlefeeder.php, 2 files are placed in feed directory, the txt file have headers, while the csv file don't. Sorry for the poor explanation, OCS2.3.4 I'm trying to include the txt file in Facebook feed.
  10. Hello, The csv file i get doesn't have a header, i mean the columns titles in the first row, for example : Title, Link, Brand, etc.... is it possible to add it ? Thanks
  11. Hello, I installed feedmachine on osc2.3.4, but have some questions please: Should I fill the FTP credentials ? How do I know if the addon is working ? The google-product-search.txt file is empty, it should have some content ? When I click Generate and upload feed now, nothing happen, should i get a success message or something ? If i run the file admin/feedmachine.php i get this error: languages array built currencies array built taxes array built countries array built categories array built number of products: 1592 number of cycles: 2 Warning: mysql_num_fields() expects parameter 1 to be resource, object given in /home/macrotro/public_html/insight/feedmachine.php on line 339 The field products_id specified in the google-product-search.txt feed does not exist in any of the queried tables. Please ensure you have entered the correct field name and that it exists in one of the tables queried in $master_query (see code) Thx
  12. is it possible with this Addon to sync osc products with Facebook shop ?
  13. Yes Create_account is checked. Add Honey Pot captcha to the specified pages. Enable Honey Pot True Pages create_account.php tell_a_friend.php Sort Order 0 Email Addresses Allowed True Email Addresses Show Message True URL's Allowed True URL Show Message True Create Account Check True Create Account Count 2 Create Account Period 10 Block Names with Numbers True Block Phone with Letters True Create Account Notify None Name Length - First 2 Name Length - Last 1 Show Math Captcha False Use IP List False Bad Words google Exclude IP's Log Tracker None
  14. Hi, I installed Honeypot 1.8 on OSC2.3.4, installed the module header, enabled everything, and added the word "google" in Bad Words, because i noticed all my bot accounts have the word google as company name. But i tried to create a new account, adding the word google in the company name, but still i can easily create accounts. How can i know if its working or not Thanks
  15. I tried to upload the bm_recaptcha and activate it, then palced the keys. but the recaptcha icon is not appearing on right bottom screen. is it because Im running OSC2.3.4 on PHP 5.6.40 ?
  16. Hi, Im running OSC2.3.4 on PHP 5.6.40 Which addon version should I install ? and is there something I should consider ? Thank you for the addon
  17. Hello, I was using another addon to activate Google reCAptcha, but it require allow_url_fopen to be enable. Does this addon require us to enable allow_url_fopen ? and does it work on ocs2.3.4 ? Thank you
  18. Any suggestion please ? I can install other modules, but this one i can't.
  19. When i install this module i get this error : 1364 - Field 'configuration_title' doesn't have a default value insert into configuration ( configuration_key, configuration_group_id, sort_order, use_function, set_function ) values ( 'MODULE_SHIPPING_MZMT_LANGUAGE_FILE_TEST', '6', '0', 'tep_cfg_mzmt_language_file_check', 'tep_cfg_do_nothing(' ) On OSC2.3.4
  20. Hello, Can someone help me with the redirect problem ? I turned to False the redirect to shopping cart after add to cart, but the website redirect to home page now instead of staying in the product info page. The code in application_top is <?php /* $Id$ Open Source E-Commerce Solutions Copyright (c) 2008 Released under the GNU General Public License */ define('MAX_DESCR_MODUL_NEW_PRODS','68'); // define('MAX_DESCR_LISTING','50'); // define('MAX_DESCR_SPECIALS','50'); // define('MAX_DESCR_PRODS_NEW','150'); // define('MAX_DESCR_BESTSELLERS','16'); // define('MAX_DESCR_REVIEWS','50'); // define('MAX_DESCR_BOX','50'); // // start the timer for the page parse time log define('PAGE_PARSE_START_TIME', microtime()); // set the level of error reporting error_reporting(E_ALL & ~E_NOTICE); // check support for register_globals if (function_exists('ini_get') && (ini_get('register_globals') == false) && (PHP_VERSION < 4.3) ) { exit('Server Requirement Error: register_globals is disabled in your PHP configuration. This can be enabled in your php.ini configuration file or in the .htaccess file in your catalog directory. Please use PHP 4.3+ if register_globals cannot be enabled on the server.'); } // load server configuration parameters if (file_exists('includes/local/configure.php')) { // for developers include('includes/local/configure.php'); } else { include('includes/configure.php'); } if (strlen(DB_SERVER) < 1) { if (is_dir('install')) { header('Location: install/index.php'); } } // define the project version --- obsolete, now retrieved with tep_get_version() define('PROJECT_VERSION', 'osCommerce Online Merchant v2.3'); // some code to solve compatibility issues require(DIR_WS_FUNCTIONS . 'compatibility.php'); // set the type of request (secure or not) $request_type = (getenv('HTTPS') == 'on') ? 'SSL' : 'NONSSL'; /** * ULTIMATE Seo Urls 5 PRO by FWR Media * function to return the base filename */ function usu5_base_filename() { // Probably won't get past SCRIPT_NAME unless this is reporting cgi location $base = new ArrayIterator( array( 'SCRIPT_NAME', 'PHP_SELF', 'REQUEST_URI', 'ORIG_PATH_INFO', 'HTTP_X_ORIGINAL_URL', 'HTTP_X_REWRITE_URL' ) ); while ( $base->valid() ) { if ( array_key_exists( $base->current(), $_SERVER ) && !empty( $_SERVER[$base->current()] ) ) { if ( false !== strpos( $_SERVER[$base->current()], '.php' ) ) { preg_match( '@[a-z0-9_]+\.php@i', $_SERVER[$base->current()], $matches ); if ( is_array( $matches ) && ( array_key_exists( 0, $matches ) ) && ( substr( $matches[0], -4, 4 ) == '.php' ) && ( is_readable( $matches[0] ) ) ) { return $matches[0]; } } } $base->next(); } // Some odd server set ups return / for SCRIPT_NAME and PHP_SELF when accessed as mysite.com (no index.php) where they usually return /index.php if ( ( $_SERVER['SCRIPT_NAME'] == '/' ) || ( $_SERVER['PHP_SELF'] == '/' ) ) { return 'index.php'; } // Return the standard RC3 code $req = parse_url($HTTP_SERVER_VARS['SCRIPT_NAME']); $PHP_SELF = substr($req['path'], ($request_type == 'NONSSL') ? strlen(DIR_WS_HTTP_CATALOG) : strlen(DIR_WS_HTTPS_CATALOG)); } // End function // set php_self in the local scope $PHP_SELF = usu5_base_filename(); if ($request_type == 'NONSSL') { define('DIR_WS_CATALOG', DIR_WS_HTTP_CATALOG); } else { define('DIR_WS_CATALOG', DIR_WS_HTTPS_CATALOG); } // include the list of project filenames require(DIR_WS_INCLUDES . 'filenames.php'); // include the list of project database tables require(DIR_WS_INCLUDES . 'database_tables.php'); // customization for the design layout define('BOX_WIDTH', 125); // how wide the boxes should be in pixels (default: 125) // include the database functions require(DIR_WS_FUNCTIONS . 'database.php'); // make a connection to the database... now tep_db_connect() or die('Unable to connect to database server!'); // set the application parameters $configuration_query = tep_db_query('select configuration_key as cfgKey, configuration_value as cfgValue from ' . TABLE_CONFIGURATION); while ($configuration = tep_db_fetch_array($configuration_query)) { define($configuration['cfgKey'], $configuration['cfgValue']); } // if gzip_compression is enabled, start to buffer the output if ( (GZIP_COMPRESSION == 'true') && ($ext_zlib_loaded = extension_loaded('zlib')) && !headers_sent() ) { if (($ini_zlib_output_compression = (int)ini_get('zlib.output_compression')) < 1) { if (PHP_VERSION < '5.4' || PHP_VERSION > '5.4.5') { // see PHP bug 55544 if (PHP_VERSION >= '4.0.4') { ob_start('ob_gzhandler'); } elseif (PHP_VERSION >= '4.0.1') { include(DIR_WS_FUNCTIONS . 'gzip_compression.php'); ob_start(); ob_implicit_flush(); } } } elseif (function_exists('ini_set')) { ini_set('zlib.output_compression_level', GZIP_LEVEL); } } // set the HTTP GET parameters manually if search_engine_friendly_urls is enabled if (SEARCH_ENGINE_FRIENDLY_URLS == 'true') { if (strlen(getenv('PATH_INFO')) > 1) { $GET_array = array(); $PHP_SELF = str_replace(getenv('PATH_INFO'), '', $PHP_SELF); $vars = explode('/', substr(getenv('PATH_INFO'), 1)); do_magic_quotes_gpc($vars); for ($i=0, $n=sizeof($vars); $i<$n; $i++) { if (strpos($vars[$i], '[]')) { $GET_array[substr($vars[$i], 0, -2)][] = $vars[$i+1]; } else { $HTTP_GET_VARS[$vars[$i]] = $vars[$i+1]; } $i++; } if (sizeof($GET_array) > 0) { while (list($key, $value) = each($GET_array)) { $HTTP_GET_VARS[$key] = $value; } } } } // define general functions used application-wide require(DIR_WS_FUNCTIONS . 'general.php'); require(DIR_WS_FUNCTIONS . 'html_output.php'); // set the cookie domain $cookie_domain = (($request_type == 'NONSSL') ? HTTP_COOKIE_DOMAIN : HTTPS_COOKIE_DOMAIN); $cookie_path = (($request_type == 'NONSSL') ? HTTP_COOKIE_PATH : HTTPS_COOKIE_PATH); // include cache functions if enabled if (USE_CACHE == 'true') include(DIR_WS_FUNCTIONS . 'cache.php'); // include shopping cart class require(DIR_WS_CLASSES . 'shopping_cart.php'); // include navigation history class require(DIR_WS_CLASSES . 'navigation_history.php'); // define how the session functions will be used require(DIR_WS_FUNCTIONS . 'sessions.php'); // set the session name and save path tep_session_name('osCsid'); tep_session_save_path(SESSION_WRITE_DIRECTORY); // set the session cookie parameters if (function_exists('session_set_cookie_params')) { session_set_cookie_params(0, $cookie_path, $cookie_domain); } elseif (function_exists('ini_set')) { ini_set('session.cookie_lifetime', '0'); ini_set('session.cookie_path', $cookie_path); ini_set('session.cookie_domain', $cookie_domain); } @ini_set('session.use_only_cookies', (SESSION_FORCE_COOKIE_USE == 'True') ? 1 : 0); // set the session ID if it exists if ( SESSION_FORCE_COOKIE_USE == 'False' ) { if ( isset($HTTP_GET_VARS[tep_session_name()]) && (!isset($HTTP_COOKIE_VARS[tep_session_name()]) || ($HTTP_COOKIE_VARS[tep_session_name()] != $HTTP_GET_VARS[tep_session_name()])) ) { tep_session_id($HTTP_GET_VARS[tep_session_name()]); } elseif ( isset($HTTP_POST_VARS[tep_session_name()]) && (!isset($HTTP_COOKIE_VARS[tep_session_name()]) || ($HTTP_COOKIE_VARS[tep_session_name()] != $HTTP_POST_VARS[tep_session_name()])) ) { tep_session_id($HTTP_POST_VARS[tep_session_name()]); } } // start the session $session_started = false; if (SESSION_FORCE_COOKIE_USE == 'True') { tep_setcookie('cookie_test', 'please_accept_for_session', time()+60*60*24*30, $cookie_path, $cookie_domain); if (isset($HTTP_COOKIE_VARS['cookie_test'])) { tep_session_start(); $session_started = true; } } elseif (SESSION_BLOCK_SPIDERS == 'True') { $user_agent = strtolower(getenv('HTTP_USER_AGENT')); $spider_flag = false; if (tep_not_null($user_agent)) { $spiders = file(DIR_WS_INCLUDES . 'spiders.txt'); for ($i=0, $n=sizeof($spiders); $i<$n; $i++) { if (tep_not_null($spiders[$i])) { if (is_integer(strpos($user_agent, trim($spiders[$i])))) { $spider_flag = true; break; } } } } if ($spider_flag == false) { tep_session_start(); $session_started = true; } } else { tep_session_start(); $session_started = true; } if ( ($session_started == true) && (PHP_VERSION >= 4.3) && function_exists('ini_get') && (ini_get('register_globals') == false) ) { extract($_SESSION, EXTR_OVERWRITE+EXTR_REFS); } // initialize a session token if (!tep_session_is_registered('sessiontoken')) { $sessiontoken = md5(tep_rand() . tep_rand() . tep_rand() . tep_rand()); tep_session_register('sessiontoken'); } // set SID once, even if empty $SID = (defined('SID') ? SID : ''); // verify the ssl_session_id if the feature is enabled if ( ($request_type == 'SSL') && (SESSION_CHECK_SSL_SESSION_ID == 'True') && (ENABLE_SSL == true) && ($session_started == true) ) { $ssl_session_id = getenv('SSL_SESSION_ID'); if (!tep_session_is_registered('SSL_SESSION_ID')) { $SESSION_SSL_ID = $ssl_session_id; tep_session_register('SESSION_SSL_ID'); } if ($SESSION_SSL_ID != $ssl_session_id) { tep_session_destroy(); tep_redirect(tep_href_link(FILENAME_SSL_CHECK)); } } // verify the browser user agent if the feature is enabled if (SESSION_CHECK_USER_AGENT == 'True') { $http_user_agent = getenv('HTTP_USER_AGENT'); if (!tep_session_is_registered('SESSION_USER_AGENT')) { $SESSION_USER_AGENT = $http_user_agent; tep_session_register('SESSION_USER_AGENT'); } if ($SESSION_USER_AGENT != $http_user_agent) { tep_session_destroy(); tep_redirect(tep_href_link(FILENAME_LOGIN)); } } // verify the IP address if the feature is enabled if (SESSION_CHECK_IP_ADDRESS == 'True') { $ip_address = tep_get_ip_address(); if (!tep_session_is_registered('SESSION_IP_ADDRESS')) { $SESSION_IP_ADDRESS = $ip_address; tep_session_register('SESSION_IP_ADDRESS'); } if ($SESSION_IP_ADDRESS != $ip_address) { tep_session_destroy(); tep_redirect(tep_href_link(FILENAME_LOGIN)); } } // create the shopping cart if (!tep_session_is_registered('cart') || !is_object($cart)) { tep_session_register('cart'); $cart = new shoppingCart; } // include currencies class and create an instance require(DIR_WS_CLASSES . 'currencies.php'); $currencies = new currencies(); // include the mail classes require(DIR_WS_CLASSES . 'mime.php'); require(DIR_WS_CLASSES . 'email.php'); // set the language if (!tep_session_is_registered('language') || isset($HTTP_GET_VARS['language'])) { if (!tep_session_is_registered('language')) { tep_session_register('language'); tep_session_register('languages_id'); } include(DIR_WS_CLASSES . 'language.php'); $lng = new language(); if (isset($HTTP_GET_VARS['language']) && tep_not_null($HTTP_GET_VARS['language'])) { $lng->set_language($HTTP_GET_VARS['language']); } else { $lng->get_browser_language(); } $language = $lng->language['directory']; $languages_id = $lng->language['id']; } /** * ULTIMATE Seo Urls 5 PRO by FWR Media */ Usu_Main::i()->setVar( 'languages_id', $languages_id ) ->setVar( 'request_type', $request_type ) ->setVar( 'session_started', $session_started ) ->setVar( 'sid', $SID ) ->setVar( 'language', $language ) ->setVar( 'filename', $PHP_SELF ) ->initiate( ( isset( $lng ) && ( $lng instanceof language ) ) ? $lng : array(), $languages_id, $language ); // include the language translations $_system_locale_numeric = setlocale(LC_NUMERIC, 0); require(DIR_WS_LANGUAGES . $language . '.php'); setlocale(LC_NUMERIC, $_system_locale_numeric); // Prevent LC_ALL from setting LC_NUMERIC to a locale with 1,0 float/decimal values instead of 1.0 (see bug #634) // currency if (!tep_session_is_registered('currency') || isset($HTTP_GET_VARS['currency']) || ( (USE_DEFAULT_LANGUAGE_CURRENCY == 'true') && (LANGUAGE_CURRENCY != $currency) ) ) { if (!tep_session_is_registered('currency')) tep_session_register('currency'); if (isset($HTTP_GET_VARS['currency']) && $currencies->is_set($HTTP_GET_VARS['currency'])) { $currency = $HTTP_GET_VARS['currency']; } else { $currency = (USE_DEFAULT_LANGUAGE_CURRENCY == 'true') ? LANGUAGE_CURRENCY : DEFAULT_CURRENCY; } } // navigation history if (!tep_session_is_registered('navigation') || !is_object($navigation)) { tep_session_register('navigation'); $navigation = new navigationHistory; } $navigation->add_current_page(); // action recorder include('includes/classes/action_recorder.php'); // Shopping cart actions if (isset($HTTP_GET_VARS['action'])) { // redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled if ($session_started == false) { tep_redirect(tep_href_link(FILENAME_COOKIE_USAGE)); } if (DISPLAY_CART == 'true') { $goto = FILENAME_SHOPPING_CART; $parameters = array('action', 'cPath', 'products_id', 'pid'); /* Optional Related Products (ORP) */ } elseif ($HTTP_GET_VARS['action'] == 'rp_buy_now') { $goto = FILENAME_PRODUCT_INFO; $parameters = array('action', 'pid', 'rp_products_id'); //ORP: end } else { $goto = $PHP_SELF; if ($HTTP_GET_VARS['action'] == 'buy_now') { $parameters = array('action', 'pid', 'products_id'); } else { $parameters = array('action', 'pid'); } } switch ($HTTP_GET_VARS['action']) { // customer wants to update the product quantity in their shopping cart case 'update_product' : for ($i=0, $n=sizeof($HTTP_POST_VARS['products_id']); $i<$n; $i++) { if (in_array($HTTP_POST_VARS['products_id'][$i], (is_array($HTTP_POST_VARS['cart_delete']) ? $HTTP_POST_VARS['cart_delete'] : array()))) { $cart->remove($HTTP_POST_VARS['products_id'][$i]); } else { $attributes = ($HTTP_POST_VARS['id'][$HTTP_POST_VARS['products_id'][$i]]) ? $HTTP_POST_VARS['id'][$HTTP_POST_VARS['products_id'][$i]] : ''; $cart->add_cart($HTTP_POST_VARS['products_id'][$i], $HTTP_POST_VARS['cart_quantity'][$i], $attributes, false); } } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; // customer adds a product from the products page case 'add_product' : if (isset($HTTP_POST_VARS['products_id']) && is_numeric($HTTP_POST_VARS['products_id'])) { $attributes = isset($HTTP_POST_VARS['id']) ? $HTTP_POST_VARS['id'] : ''; $cart->add_cart($HTTP_POST_VARS['products_id'], $cart->get_quantity(tep_get_uprid($HTTP_POST_VARS['products_id'], $attributes))+1, $attributes); } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; // customer removes a product from their shopping cart case 'remove_product' : if (isset($HTTP_GET_VARS['products_id'])) { $cart->remove($HTTP_GET_VARS['products_id']); } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; // performed by the 'buy now' button in product listings and review page case 'buy_now' : if (isset($HTTP_GET_VARS['products_id'])) { if (tep_has_product_attributes($HTTP_GET_VARS['products_id'])) { tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $HTTP_GET_VARS['products_id'])); } else { $cart->add_cart($HTTP_GET_VARS['products_id'], $cart->get_quantity($HTTP_GET_VARS['products_id'])+1); } } tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $HTTP_GET_VARS['products_id'])); break; /* Optional Related Products (ORP) */ case 'rp_buy_now' : if (isset($HTTP_GET_VARS['rp_products_id'])) { if (tep_has_product_attributes($HTTP_GET_VARS['rp_products_id'])) { tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $HTTP_GET_VARS['rp_products_id'])); } else { $cart->add_cart($HTTP_GET_VARS['rp_products_id'], $cart->get_quantity($HTTP_GET_VARS['rp_products_id'])+1); } } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; //ORP: end case 'notify' : if (tep_session_is_registered('customer_id')) { if (isset($HTTP_GET_VARS['products_id'])) { $notify = $HTTP_GET_VARS['products_id']; } elseif (isset($HTTP_GET_VARS['notify'])) { $notify = $HTTP_GET_VARS['notify']; } elseif (isset($HTTP_POST_VARS['notify'])) { $notify = $HTTP_POST_VARS['notify']; } else { tep_redirect(tep_href_link($PHP_SELF, tep_get_all_get_params(array('action', 'notify')))); } if (!is_array($notify)) $notify = array($notify); for ($i=0, $n=sizeof($notify); $i<$n; $i++) { $check_query = tep_db_query("select count(*) as count from " . TABLE_PRODUCTS_NOTIFICATIONS . " where products_id = '" . (int)$notify[$i] . "' and customers_id = '" . (int)$customer_id . "'"); $check = tep_db_fetch_array($check_query); if ($check['count'] < 1) { tep_db_query("insert into " . TABLE_PRODUCTS_NOTIFICATIONS . " (products_id, customers_id, date_added) values ('" . (int)$notify[$i] . "', '" . (int)$customer_id . "', now())"); } } tep_redirect(tep_href_link($PHP_SELF, tep_get_all_get_params(array('action', 'notify')))); } else { $navigation->set_snapshot(); tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL')); } break; case 'notify_remove' : if (tep_session_is_registered('customer_id') && isset($HTTP_GET_VARS['products_id'])) { $check_query = tep_db_query("select count(*) as count from " . TABLE_PRODUCTS_NOTIFICATIONS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and customers_id = '" . (int)$customer_id . "'"); $check = tep_db_fetch_array($check_query); if ($check['count'] > 0) { tep_db_query("delete from " . TABLE_PRODUCTS_NOTIFICATIONS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and customers_id = '" . (int)$customer_id . "'"); } tep_redirect(tep_href_link($PHP_SELF, tep_get_all_get_params(array('action')))); } else { $navigation->set_snapshot(); tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL')); } break; case 'cust_order' : if (tep_session_is_registered('customer_id') && isset($HTTP_GET_VARS['pid'])) { if (tep_has_product_attributes($HTTP_GET_VARS['pid'])) { tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $HTTP_GET_VARS['pid'])); } else { $cart->add_cart($HTTP_GET_VARS['pid'], $cart->get_quantity($HTTP_GET_VARS['pid'])+1); } } tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break; } } // include the who's online functions require(DIR_WS_FUNCTIONS . 'whos_online.php'); tep_update_whos_online(); // include the password crypto functions require(DIR_WS_FUNCTIONS . 'password_funcs.php'); // include validation functions (right now only email address) require(DIR_WS_FUNCTIONS . 'validations.php'); // split-page-results require(DIR_WS_CLASSES . 'split_page_results.php'); // infobox require(DIR_WS_CLASSES . 'boxes.php'); // auto activate and expire banners require(DIR_WS_FUNCTIONS . 'banner.php'); tep_activate_banners(); tep_expire_banners(); // auto expire special products require(DIR_WS_FUNCTIONS . 'specials.php'); tep_start_specials(); tep_expire_specials(); // BOF: Featured Products require(DIR_WS_FUNCTIONS . 'featured.php'); tep_expire_featured(); require(DIR_WS_CLASSES . 'osc_template.php'); $oscTemplate = new oscTemplate(); // calculate category path if (isset($HTTP_GET_VARS['cPath'])) { $cPath = $HTTP_GET_VARS['cPath']; if (tep_not_null($cPath)) { $cPath_array = tep_parse_category_path($cPath); $categories_query = tep_db_query("select cpath from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$cPath_array[sizeof($cPath_array)-1] . "'"); if ( !tep_db_num_rows($categories_query) ) { //not found categories //redirect to $current_category_id = 0; $result = http_error_handler('302'); } else { $new = tep_db_fetch_array($categories_query); $new_cPath = $new['cpath']; if ( tep_not_null($new_cPath) ) { if ( isset($HTTP_GET_VARS['cPath']) && $HTTP_GET_VARS['cPath'] !== $new_cPath) { header("HTTP/1.0 301 Moved Permanently"); tep_redirect(tep_href_link($PHP_SELF, 'cPath=' . $new_cPath . '&' . tep_get_all_get_params(array('cPath'))) ); } } } } if ( isset($HTTP_GET_VARS['products_id']) && !tep_get_validate_product_cpath($HTTP_GET_VARS['products_id'], $cPath) ) { $cPath = tep_get_product_path($HTTP_GET_VARS['products_id']); //redirect to product base $path_link = ''; if (tep_not_null($cPath)) { $path_link = 'cPath=' . $cPath . '&'; } header("HTTP/1.0 301 Moved Permanently"); tep_redirect(tep_href_link($PHP_SELF, $path_link . tep_get_all_get_params(array('cPath'))) ); } } elseif ( isset($_GET['products_id']) && !isset($_GET['manufacturers_id']) ) { $cPath = tep_get_product_path($_GET['products_id']); } else { $cPath = ''; } if ( !empty($cPath) ) { $cPath_array = tep_parse_category_path($cPath); $cPath = implode('_', $cPath_array); $current_category_id = $cPath_array[(sizeof($cPath_array)-1)]; } else { $current_category_id = 0; } // include the breadcrumb class and start the breadcrumb trail require(DIR_WS_CLASSES . 'breadcrumb.php'); $breadcrumb = new breadcrumb; $breadcrumb->add(HEADER_TITLE_TOP, HTTP_SERVER); // add category names or the manufacturer name to the breadcrumb trail if (isset($cPath_array)) { for ($i=0, $n=sizeof($cPath_array); $i<$n; $i++) { $categories_query = tep_db_query("select categories_name from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$cPath_array[$i] . "' and language_id = '" . (int)$languages_id . "'"); if (tep_db_num_rows($categories_query) > 0) { $categories = tep_db_fetch_array($categories_query); $breadcrumb->add($categories['categories_name'], tep_href_link(FILENAME_DEFAULT, 'cPath=' . implode('_', array_slice($cPath_array, 0, ($i+1))))); } else { header("HTTP/1.0 404 Not Found"); exit; } } } elseif (isset($HTTP_GET_VARS['manufacturers_id'])) { $manufacturers_query = tep_db_query("select manufacturers_name from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'"); if (tep_db_num_rows($manufacturers_query)) { $manufacturers = tep_db_fetch_array($manufacturers_query); $breadcrumb->add($manufacturers['manufacturers_name'], tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'])); } } // add the products model to the breadcrumb trail if (isset($HTTP_GET_VARS['products_id'])) { $model_query = tep_db_query("select products_model from " . TABLE_PRODUCTS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'"); if (tep_db_num_rows($model_query)) { $model = tep_db_fetch_array($model_query); $breadcrumb->add($model['products_model'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $HTTP_GET_VARS['products_id'])); } } // added code to prepare for the title tag, description tag & keywords tag - By Gemrock // IF IT'S FIRST TIME TO RUN, THEN ADD 3 NEW FIELDS - CAN BE DELETED ONCE RUN SUCCESSFULLY if (!tep_db_query("SELECT title_tag FROM " . TABLE_PRODUCTS_DESCRIPTION)){ tep_db_query("ALTER TABLE " . TABLE_PRODUCTS_DESCRIPTION . " ADD COLUMN title_tag VARCHAR(255) NULL, ADD COLUMN desc_tag TEXT NULL, ADD COLUMN keywords_tag VARCHAR(255) NULL"); } if (!tep_db_query("SELECT title_tag FROM " . TABLE_CATEGORIES_DESCRIPTION)){ tep_db_query("ALTER TABLE " . TABLE_CATEGORIES_DESCRIPTION . " ADD COLUMN title_tag VARCHAR(255) NULL, ADD COLUMN desc_tag TEXT NULL, ADD COLUMN keywords_tag VARCHAR(255) NULL"); } // END OF CODE ADDING FIELDS if (isset($HTTP_GET_VARS['products_id'])) { $header_tags_query = tep_db_query("select products_name, products_description, title_tag, desc_tag, keywords_tag from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and language_id = '" . (int)$languages_id . "'"); if (tep_db_num_rows($header_tags_query)) { $header_tags = tep_db_fetch_array($header_tags_query); $header_tags[products_name]= trim($header_tags[products_name]); $header_tags[title_tag]= trim(strip_tags($header_tags[title_tag])); $header_tags[desc_tag]= trim(strip_tags($header_tags[desc_tag])); $header_tags[keywords_tag]= trim(strip_tags($header_tags[keywords_tag])); $header_tags[products_description] = substr(preg_replace('/\s\s+/', ' ',(strip_tags($header_tags[products_description]))),0,1000); // if a tag is less than 2 characters, then use default if (strlen($header_tags[title_tag])< 2) { //set product name as page title $header_tags[title_tag]= $header_tags[products_name]; } //add category name to page title if (strlen($categories['categories_name'])>1) $header_tags[title_tag] = $categories['categories_name'] . ' ' . $header_tags[title_tag]; if (strlen($manufacturers['manufacturers_name'])>1) $header_tags[title_tag] .= ' ' . $manufacturers['manufacturers_name'] . ' ' . $header_tags[title_tag]; if (strlen($header_tags[desc_tag])< 2) $header_tags[desc_tag] = $header_tags[products_description]; if (strlen($header_tags[keywords_tag])< 2) $header_tags[keywords_tag] = $header_tags[products_name]; } } // end of added code - By Gemrock // initialize the message stack for output messages require(DIR_WS_CLASSES . 'message_stack.php'); $messageStack = new messageStack; ?>
  21. Hello, I installed the app, but how can I apply shipping fee for a category and its sub categories ? I set a flat rate to the category but still the items are not affected. The configuration on the shipping module are: Individual Product/Category Setting : Product Use Default Rates? : Flat per item Use Individual rates with the default rates? : Yes Default Flat Rate: 4 Shipping Method for Table Rates : Qty in the catalog / shipping rates i set the following for a category: TEXT_SEPARATE_IND : Yes <- I don't know whats this Shipping method : Flat Shipping rate : 2 But still all the shipping fees of products inside this category are 4 not 2. Did i missed some configurations ? Thanks
  22. Where is the module link ? Thanks
  23. Too much bugs and wrong algorithm, at least add a function to the admin/categories so when a master product is deleted the assigned slaves are cleared. and the database structure is not logical, which make it difficult to adjust.
  24. when I edit a slave product, the list of Slaves is empty. How can I know what is the master product of a slave ?
×
×
  • Create New...