Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

don't like that -> in categories


porrier

Recommended Posts

Hello!

 

In the old shop I had little nice triangle-icons on the left of each categorie. A screenshot is attached.

The module to achieve this was called categoriesbox-neco_mod.

 

On the new shop 2.3.4 I see just these arrows -> on the right of the categories.

 

Is there a way to replace that -> arrows with some nice icons or something?

 

Regards

Andreas

post-196121-0-34552600-1443880569_thumb.png

Link to comment
Share on other sites

This has been discussed many times... search for -> in this forum. That's to replace -> with a graphic or proper arrow. I'm not sure how much discussion there's been on a full-fledged "twistor" like you seem to show, but I'm sure it can be done. Old add-ons to do this can probably be applied with only minor changes. Was this categoriesbox add-on something from this site?

Link to comment
Share on other sites

This has been discussed many times... search for -> in this forum. That's to replace -> with a graphic or proper arrow. I'm not sure how much discussion there's been on a full-fledged "twistor" like you seem to show, but I'm sure it can be done. Old add-ons to do this can probably be applied with only minor changes. Was this categoriesbox add-on something from this site?

I've tried some things to replace the -> but am not satisfied with it.

The add-on I had built in in the old shop was named categoriesbox-neco_mod_v1.1.zip

 

It's just one file, categories.php to <your catalog>/includes/boxes/

but includes/boxes does not exist anymore. And the three icons ofcourse.

 

I think the categories.php must be merged with the one that resides in

includes/modules/boxes/bm_categories.php. But I don't have the overview

how to do that at the moment.

 

This add-on is simply great.

 

Andreas

Link to comment
Share on other sites

@@porrier

 

I don't know how the categories box of that Addon you are talking about looks like but you can try this here.

Just use the icons from that Addon and put them as it says in the manual inside the images/categories/ folder. (blue or green color if I am not mistaken.)

Then add this to your stylesheet.css

hr.fade_top {
  color: #eee;
  background-color: #eee;
  height: 1px;
  border: none;
}

hr.fade {
  color: #eee;
  background-color: #eee;
  height: 1px;
  border: none;
  width: 80%;
}

and use this as bm_categories.php

<?php
/*
  $Id$

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

  Copyright (c) 2010 osCommerce

  Released under the GNU General Public License
*/

  class bm_categories {
    var $code = 'bm_categories';
    var $group = 'boxes';
    var $title;
    var $description;
    var $sort_order;
    var $enabled = false;

    function bm_categories() {
      $this->title = MODULE_BOXES_CATEGORIES_TITLE;
      $this->description = MODULE_BOXES_CATEGORIES_DESCRIPTION;

      if ( defined('MODULE_BOXES_CATEGORIES_STATUS') ) {
        $this->sort_order = MODULE_BOXES_CATEGORIES_SORT_ORDER;
        $this->enabled = (MODULE_BOXES_CATEGORIES_STATUS == 'True');

        $this->group = ((MODULE_BOXES_CATEGORIES_CONTENT_PLACEMENT == 'Left Column') ? 'boxes_column_left' : 'boxes_column_right');
      }
    }

    function tep_show_category($counter) {
      global $tree, $categories_string, $cPath_array;

      for ($i=0; $i<$tree[$counter]['level']; $i++) {
        $categories_string .= "   ";
      }
// ADDED ARROWS 
	if (tep_has_category_subcategories($counter)) { // if there is subcategory show arrows
		if (isset($cPath_array) && in_array($counter, $cPath_array)) { // if inside the category show arrow down
			$categories_string .= tep_image(DIR_WS_IMAGES . 'categories/arrow_down.gif', '', '9', '9') . ' ';
		} else	{ // else arrow right
			$categories_string .= tep_image(DIR_WS_IMAGES . 'categories/arrow_right.gif', '', '9', '9') . ' ';
		} 
	} else { // else show bullet
			$categories_string .= tep_image(DIR_WS_IMAGES . 'categories/arrow_bullet.gif', 'nokta', '9', '9') . ' ';
	}
      $categories_string .= '<a href="';

      if ($tree[$counter]['parent'] == 0) {
        $cPath_new = 'cPath=' . $counter;
      } else {
        $cPath_new = 'cPath=' . $tree[$counter]['path'];
      }

      $categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">';

      if (isset($cPath_array) && in_array($counter, $cPath_array)) {
        $categories_string .= '<strong>';
      }

// display category name
      $categories_string .= $tree[$counter]['name'];

      if (isset($cPath_array) && in_array($counter, $cPath_array)) {
        $categories_string .= '</strong>';
      }

      $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 />';
// ADDED SEPARETOR LINES 
		if ($tree[$counter]['parent'] == 0) { // if top category show longer line 
			$categories_string .= '<hr class="fade_top">';
		} else { // else show shorter lines
			$categories_string .= '<hr class="fade">';
		}
 
      if ($tree[$counter]['next_id'] != false) {
        $this->tep_show_category($tree[$counter]['next_id']);
      }
    }

    function getData() {
      global $categories_string, $tree, $languages_id, $cPath, $cPath_array;

      $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;
          }
        }
      }

      $this->tep_show_category($first_element);

      $data = '<div class="ui-widget infoBoxContainer">' .
              '  <div class="ui-widget-header infoBoxHeading">' . MODULE_BOXES_CATEGORIES_BOX_TITLE . '</div>' .
              '  <div class="ui-widget-content infoBoxContents">' . $categories_string . '</div>' .
              '</div>';

      return $data;
    }

    function execute() {
      global $SID, $oscTemplate;

      if ((USE_CACHE == 'true') && empty($SID)) {
        $output = tep_cache_categories_box();
      } else {
        $output = $this->getData();
      }

      $oscTemplate->addBlock($output, $this->group);
    }

    function isEnabled() {
      return $this->enabled;
    }

    function check() {
      return defined('MODULE_BOXES_CATEGORIES_STATUS');
    }

    function install() {
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Categories Module', 'MODULE_BOXES_CATEGORIES_STATUS', 'True', 'Do you want to add the module to your shop?', '6', '1', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())");
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Content Placement', 'MODULE_BOXES_CATEGORIES_CONTENT_PLACEMENT', 'Left Column', 'Should the module be loaded in the left or right column?', '6', '1', 'tep_cfg_select_option(array(\'Left Column\', \'Right Column\'), ', now())");
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_BOXES_CATEGORIES_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '0', now())");
    }

    function remove() {
      tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
    }

    function keys() {
      return array('MODULE_BOXES_CATEGORIES_STATUS', 'MODULE_BOXES_CATEGORIES_CONTENT_PLACEMENT', 'MODULE_BOXES_CATEGORIES_SORT_ORDER');
    }
  }
?>

Link to comment
Share on other sites

@@porrier

 

I don't know how the categories box of that Addon you are talking about looks like but you can try this here.

Just use the icons from that Addon and put them as it says in the manual inside the images/categories/ folder. (blue or green color if I am not mistaken.)

Then add this to your stylesheet.css

 

hr.fade_top {  color: #eee;  background-color: #eee;  height: 1px;  border: none;}hr.fade {  color: #eee;  background-color: #eee;  height: 1px;  border: none;  width: 80%;}
and use this as bm_categories.php

Oh, my god, this is exactly what I was looking for! Thank you so much!

In stylesheet.css I wrote height: 0px; instead of height: 1px;

That reduces the space between the categories. Although it's still more space than with the old bm_categories.php.

 

So glad

 

Andreas

Link to comment
Share on other sites

 


Is there a way to replace that -> arrows with some nice icons or something?

 

If you have this, then you are setting up a normal 2.3.4 site...

 

Is there a reason why you are not setting up on the Community Responsive version ?

Link to comment
Share on other sites

If you have this, then you are setting up a normal 2.3.4 site...

 

Is there a reason why you are not setting up on the Community Responsive version ?

I don't know what you mean by "Community Responsive version". Where is it to be found and what are the differences to a normal 2.3.4?

 

Andreas

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...