Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Recommended Posts

Posted

Hello (i'm french, sorry for my bad english),

 

 

I am null in programming, therefore I do not know too much how to take to me there… I turn under oscommerce, and I installed a script java to have a dynamic horizontal menu, I will like to be able to add to it mitres such as for example on this site: http://www.fnac.com" target="_blank"> http://www.fnac.com bus for the moment I have only rectangle of color… I a capture of my site puts to you herewith, with a short explanation of what I want to do…

 

test.JPG

 

Voici le script que j'utilise :

 

<script LANGUAGE="JavaScript1.2" SRC="includes/menu_animation.js"></SCRIPT>

 

Le code du header relatif a ce script :

 

<table border="0" width="100%" cellspacing="0" cellpadding="1">
 <tr class="headerNavigation">
<td class="headerNavigation">  <?php echo $breadcrumb->trail(' » '); ?></td>
<td align="right" class="headerNavigation"><?php if (tep_session_is_registered('customer_id')) { ?><a href="<?php echo tep_href_link(FILENAME_LOGOFF, '', 'SSL'); ?>" class="headerNavigation"><?php echo HEADER_TITLE_LOGOFF; ?></a>  |  <?php } ?><a href="<?php echo tep_href_link(FILENAME_ACCOUNT, '', 'SSL'); ?>" class="headerNavigation"><?php echo HEADER_TITLE_MY_ACCOUNT; ?></a>  </td>
 </tr>
</table>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr><td width="100%" align=center>
<?php
if ((USE_CACHE == 'true') && empty($SID)) {
echo tep_cache_categories_box();
 } else {
//include(DIR_WS_BOXES . 'categories.php');
include(DIR_WS_BOXES . 'coolmenu.php');
 }
?>
</td></tr>
</table>

 

Et pour finir le code du fichier coolmenu.php (celui qui génère les tableaux)

 

<?php

/* ------------------------------------------------

 coolMenu for osCommerce

 author:	Andreas Kothe 
 url:		http://www.oddbyte.de

 modified by: PinkCrow
 url: http://www.pinkcrow.net

 Released under the GNU General Public License

 ------------------------------------------------ 
*/




// --- CONFIG ---

define('SHOW_COUNT','false');
define('SUB_CATEGORIES','4');





if (MAX_MANUFACTURERS_LIST < 2) {
$cat_choose = array(array('id' => '', 'text' => BOX_CATEGORIES_CHOOSE));
} else {
$cat_choose = '';
}

?>



	  <!-- 	Copyright 2002 www.dhtmlcentral.com  --  modified for PHP and osCommerce by Andreas Kothe - www.oddbyte.de	-->

	<script>

	oCMenu=new makeCM("oCMenu") //Making the menu object. Argument: menuname

	//Menu properties
	oCMenu.pxBetween=0
	oCMenu.fromLeft=220 //réglage gauche ou droite
	oCMenu.fromTop=64 //réglage haut ou bas
	oCMenu.rows=1
	oCMenu.menuPlacement="left"

	oCMenu.offlineRoot=""
	oCMenu.onlineRoot=""
	oCMenu.resizeCheck=1
	oCMenu.wait=300
	oCMenu.fillImg="cm_fill.gif"
	oCMenu.zIndex=0

	//Background bar properties
	oCMenu.useBar=1
	oCMenu.barWidth="menu"
	oCMenu.barHeight="menu"
	oCMenu.barClass="clBar"
	oCMenu.barX="menu"
	oCMenu.barY="menu"
	oCMenu.barBorderX=0
	oCMenu.barBorderY=0
	oCMenu.barBorderClass=""

	oCMenu.level[0]=new cm_makeLevel()
	oCMenu.level[0].width=90  //réglage hauteur largeur case catégorie
	oCMenu.level[0].height=20
	oCMenu.level[0].regClass="clLevel0"
	oCMenu.level[0].overClass="clLevel0over"
	oCMenu.level[0].borderX=1
	oCMenu.level[0].borderY=1
	oCMenu.level[0].borderClass="clLevel0border"
	oCMenu.level[0].offsetX=0
	oCMenu.level[0].offsetY=20
	oCMenu.level[0].rows=0
	//oCMenu.level[0].arrow="images/arrow.gif"
	oCMenu.level[0].arrow=""
	oCMenu.level[0].arrowWidth=0
	oCMenu.level[0].arrowHeight=0
	oCMenu.level[0].align="center"
	oCMenu.level[0].filter="progid:DXImageTransform.Microsoft.Fade(duration=0.2)"
<?php
for ($i=1; $i<SUB_CATEGORIES; $i++) {
	echo'	
		oCMenu.level[' . $i . ']=new cm_makeLevel()
		oCMenu.level[' . $i . '].width=150 	//réglage hauteur largeur case article
		oCMenu.level[' . $i . '].height=22
		oCMenu.level[' . $i . '].regClass="clLevel1"
		oCMenu.level[' . $i . '].overClass="clLevel1over"
		oCMenu.level[' . $i . '].borderX=1
		oCMenu.level[' . $i . '].borderY=1
		oCMenu.level[' . $i . '].align="right"
		oCMenu.level[' . $i . '].offsetX=0
		oCMenu.level[' . $i . '].offsetY=0
		oCMenu.level[' . $i . '].borderClass="clLevel1border"
		oCMenu.level[' . $i . '].align="right"
		oCMenu.level[' . $i . '].filter="progid:DXImageTransform.Microsoft.Fade(duration=0.2)"


	';

} // end for




// ---

function blank_length($text) {
	$count = 0;
	while(substr($text, 0,12) == "  ") {
		$text = substr($text, 12);
		$count++;
	}
	return $count;
}




// ---


function print_menu_line($categories, $depth_size,$depth_parentid, $depth) {

	$size=0;
	for($i=0; $depth_size[$i]!=0; $i++) {
		$size++;
	}


	echo "oCMenu.makeMenu('";

	if ($depth == 0) {
		echo "top" . '_'.$depth_size[0] . "','','";
	} else if ($depth == 1) {
		echo "sub" .'_'.$depth_size[0] .'_'. $depth_size[1] . "','top" .'_'. $depth_size[0] . "','";
	} else { // $depth < 1
		echo "sub";
		for ($i=0; $i<$size; $i++) {
			echo ($depth_size[$i] != 0) ? '_'.$depth_size[$i] : '_';
		}
		echo "','sub";
		for ($i=0; $i<$size-1; $i++) {
			echo ($depth_size[$i] != 0) ? '_'.$depth_size[$i] : '_';
		}
		echo "','";
	}
	echo $categories['text'];
	if (SHOW_COUNT == 'true') {
		$products_in_category = tep_count_products_in_category($categories['id']);
		if ($products_in_category > 0) {
			echo "<FONT COLOR=\"#c0c0c0\">  (" . $products_in_category . ")</FONT>";
		}
	}

	$cPathNew = "cPath=";
	for ($i=0; $i<$size-1; $i++) {
		$cPathNew .= ($depth_size[$i] != 0) ? $depth_parentid[$i].'_':'';
	}
	$cPathNew .= $categories['id'];
	echo "','" . tep_href_link(FILENAME_DEFAULT,$cPathNew) . "')\n";
}



// ---


$categories = tep_get_categories('');

//$height.= 2.65*count($categories);
$height.= 0;

$depth=0;
$blank_length;
$depth_size;
$depth_parentid;

for($i=0; $i<count($categories); $i++) {	// don't insert 1st entry ("please choose ...")
	$blank_length = blank_length($categories[$i]['text']);

	if($blank_length == $depth) {
		$categories[$i]['depth'] = $depth;
		$depth_size[$depth]++;
	} else if ($blank_length > $depth) {
		$depth++;
		$categories[$i]['depth'] = $depth;
		$depth_size[$depth]++;
	} else if ($blank_length < $depth) {
		for ($j=$depth; $j>$blank_length; $j--) {
			$depth_size[$j] = 0;
			$depth--;
		}
		$categories[$i]['depth'] = $depth;
		$depth_size[$depth]++;

	}
		$depth_parentid[$categories[$i]['depth']] = $categories[$i]['id'];

	// remove blanks
	$categories[$i]['text'] = substr($categories[$i]['text'], 12*$blank_length);

	print_menu_line($categories[$i], $depth_size,$depth_parentid, $depth);
}



?>	

	// create menu
	oCMenu.construct()

	  <!-- 	Copyright 2002 www.dhtmlcentral.com  --  modified for PHP and osCommerce by Andreas Kothe - www.oddbyte.de	-->

	</SCRIPT>

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...