JonathanH Posted September 21, 2005 Posted September 21, 2005 I've installed the contrib "categories with dropdown". It looks good. My problem is that sometimes when I go to the site, it shows the original category layout and sometimes the enhanced version. I'm not sure why it goes back and forth. I can't identify what's causing it. I've tried refreshing the page and deleting the temporary files in the browser. Is there a cache file on the server that I should clear? Could my ISP be caching something? my site is at http://lab-suppliesonline.com Is there any info I could post here that would help the troubleshooting? maybe categories.php (I'll include that at the bottom) Any help would be appreciated. <?php /* $Id: categories.php,v 1.25 2003/07/09 01:13:58 hpdl Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright © 2003 osCommerce Released under the GNU General Public License changed August 2003, by Nils Petersson contribution "Category Box Enhancement", version 1.1 */ function tep_show_category($counter) { // BoF - Contribution Category Box Enhancement 1.1 global $tree, $categories_string, $cPath_array, $cat_name; for ($i=0; $i<$tree[$counter]['level']; $i++) { $categories_string .= " "; } $cPath_new = 'cPath=' . $tree[$counter]['path']; if (isset($cPath_array) && in_array($counter, $cPath_array) && $cat_name == $tree[$counter]['name']) { //Link nicht anklickbar, wenn angew?hlt $categories_string .= '<a href="'; $categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">'; //Link nicht anklickbar, wenn angew?hlt } else { //Link nicht anklickbar, wenn angew?hlt $categories_string .= '<a href="'; $categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">'; } //Link nicht anklickbar, wenn angew?hlt if (tep_has_category_subcategories($counter)) { $categories_string .= tep_image(DIR_WS_IMAGES . 'pointer_blue.gif', ''); } else { $categories_string .= tep_image(DIR_WS_IMAGES . 'pointer_blue_light.gif', ''); } if (isset($cPath_array) && in_array($counter, $cPath_array)) { $categories_string .= '<b>'; } if ($cat_name == $tree[$counter]['name']) { $categories_string .= '<span class="errorText">'; } // display category name $categories_string .= $tree[$counter]['name']; if ($cat_name == $tree[$counter]['name']) { $categories_string .= '</span>'; } if (isset($cPath_array) && in_array($counter, $cPath_array)) { $categories_string .= '</b>'; } $categories_string .= '</a>'; if (SHOW_COUNTS == 'true') { $products_in_category = tep_count_products_in_category($counter); if ($products_in_category > 0) { $categories_string .= ' (' . $products_in_category . ')'; } } $categories_string .= '<br>'; if ($tree[$counter]['next_id'] != false) { tep_show_category($tree[$counter]['next_id']); } } ?> <!-- categories //--> <tr> <td> <?php // BoF - Contribution Category Box Enhancement 1.1 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); } $cat_name = $categories['categories_name']; } // EoF Category Box Enhancement // display category name $info_box_contents = array(); // $info_box_contents[] = array('text' => BOX_HEADING_CATEGORIES); $info_box_contents[] = array('text' => '<a href="' . tep_href_link(FILENAME_ALL_PRODUCTS) . '" class="headerNavigation">' . BOX_HEADING_CATEGORIES . '</a><br>' ); new infoBoxHeading($info_box_contents, true, false); $categories_string = ''; $tree = array(); $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' 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)) { $tree[$categories['categories_id']] = array('name' => $categories['categories_name'], 'parent' => $categories['parent_id'], 'level' => 0, 'path' => $categories['categories_id'], 'next_id' => false); if (isset($parent_id)) { $tree[$parent_id]['next_id'] = $categories['categories_id']; } $parent_id = $categories['categories_id']; if (!isset($first_element)) { $first_element = $categories['categories_id']; } } //------------------------ if (tep_not_null($cPath)) { $new_path = ''; reset($cPath_array); while (list($key, $value) = each($cPath_array)) { unset($parent_id); unset($first_id); $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$value . "' and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name"); if (tep_db_num_rows($categories_query)) { $new_path .= $value; while ($row = tep_db_fetch_array($categories_query)) { $tree[$row['categories_id']] = array('name' => $row['categories_name'], 'parent' => $row['parent_id'], 'level' => $key+1, 'path' => $new_path . '_' . $row['categories_id'], 'next_id' => false); if (isset($parent_id)) { $tree[$parent_id]['next_id'] = $row['categories_id']; } $parent_id = $row['categories_id']; if (!isset($first_id)) { $first_id = $row['categories_id']; } $last_id = $row['categories_id']; } $tree[$last_id]['next_id'] = $tree[$value]['next_id']; $tree[$value]['next_id'] = $first_id; $new_path .= '_'; } else { break; } } } tep_show_category($first_element); $info_box_contents = array(); $info_box_contents[] = array('text' => $categories_string); //jjh dropdown stuff if ( (basename($PHP_SELF) != FILENAME_PRODUCTS_NEW)) { $info_box_contents[] = array('align' => 'left', 'text' => '<font size=-2><b><a href="' . tep_href_link(FILENAME_PRODUCTS_NEW, '', 'NONSSL') . '">' . BOX_INFORMATION_PRODUCTS_NEW . '</a></b></font>'); }else{ $info_box_contents[] = array('align' => 'left', 'text' => '<font size=-2><b><a href="' . tep_href_link(FILENAME_PRODUCTS_NEW, '', 'NONSSL') . '"><span class="errorText">' . BOX_INFORMATION_PRODUCTS_NEW . '</a></b></font></span>'); } function tep_get_paths($categories_array = '', $parent_id = '0', $indent = '', $path='') { 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)) { if ($parent_id=='0'){ $categories_array[] = array('id' => $categories['categories_id'], 'text' => $indent . $categories['categories_name']); } else{ $categories_array[] = array('id' => $path . $parent_id . '_' .$categories['categories_id'], 'text' => $indent . $categories['categories_name']); } if ($categories['categories_id'] != $parent_id) { $this_path=$path; if ($parent_id != '0') $this_path = $path . $parent_id . '_'; $categories_array = tep_get_paths($categories_array, $categories['categories_id'], $indent . ' ', $this_path); } } return $categories_array; } $info_box_contents[] = array('form' => '<form action="' . tep_href_link(FILENAME_DEFAULT) . '" method="get">' . tep_hide_session_id(), 'align' => 'left', 'text' => '<b>' . 'Go to..' . '<br>' . tep_draw_pull_down_menu('cPath', tep_get_paths(array(array('id' => '', 'text' => PULL_DOWN_DEFAULT))), $cPath, 'onchange="this.form.submit();" style="width: 100%"') ); //jjh end new infoBox($info_box_contents); ?> </td> </tr> <!-- categories_eof //--> Quote Just learning OSC, but loving it so far.
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.