Jump to content
Latest News: (loading..)
Sign in to follow this  
nate_02631

"Dynamenu" for osCommerce

Recommended Posts

Anyone have any input on #2 and #3 - for #2 I could resize the box and will probably do so to get rid of this bug but an actual solution would be much better. And and regards #3 this is really a problem - I have actually searched the site for the gray color (hex numbers) and there is nothing I can find. I can't figure out where the style is that is affecting this (I have changed the new styles added in the contribution)

 

I maybe have a solution for #3:

Look for

.dmselected {   /* Style override for selected category tree */
background-color: #ccc;
 font-weight: bold;
}

in your *.css file

If you have used the whole *.css file then be aware of that this is used in two places in the *.css file. (I deleted one of them)


---------------

regards

sijo

---------------

 

Contrib: JMrating10 - Rate your products / osCommerce VTS - Virus & Threat Scanner

 

(osCommerce VTS now also checks for leading and trailing whitespace and also have a grep function)

Share this post


Link to post
Share on other sites

Looks to me like you got all but the resize on Guns upgrade and Accessories resolved.

 

For the resize, I am guessing it has to do with the padding or margin settings in the stylesheet for .vertitem or one of the .vertitem a, hover, active, etc... sytles.

 

I installed and am having 3 problems and really hoping someone can help on both.

 

visit https://www.paintballwarehouseny.com/airsoft-c-148.html and you can see all of the problems (I hope)

 

1. if you hover over Clothing and apparel in the menu you will see that hover goes under the image of the item to the left. How can I get the menu to be on top of anything in the products listing? (I also have Enhanced product listing installed and an having hover over problems with that too where you will see that the hovers of the product images also appear under the original in firefox, but this hover over problem with the menu is in Firefox and IE)

 

2. hover over Guns upgrade and Accessories and you will see the categories box resize a bit larger? any solution to this?

 

3. If you select a category, the active category highlights is a gray color, this is true in the sub categories, even though the stylesheet is a color as shown below

 

.vertitem a:active { /* Font style & color, background menu color of main menu item when clicked */

color: #ffffff;

background-color: #021379;

text-decoration: none;

font-weight: bold;

}

and

 

.vertsubitem a:active { /* Font style & color, background submenu color of submenu item when clicked */

color: #ffff00;

background-color: #666666;

text-decoration: none;

}

 

 

Here's hopeing for a solution!

 

Sue


~Tracy
 

Share this post


Link to post
Share on other sites

$mid->setMenuStructureString(".|Home|index.php|Home|||\n".$categories_string."\n.|Contact|contact_us.php|Contact|||");

Worked (tested myself)

 

1 More thing if I click exampe on "HOME" it is working and opening. BUT it doesn't get a class ACTIVE?

 

Hello? Is there a way? Thanks in advance,

Share this post


Link to post
Share on other sites

Yes - you were both correct. Had to change active and hover attribute from bold to stop the movement in the box edge. And the stylesheet change corrected the color

 

Thanks

Sue

 

PS _ client loves this feature - thanks for the contribution!

Edited by designbysue

Share this post


Link to post
Share on other sites

Have you looked at the source through your browser to see what style setting (if any) is governing the "Home" link?

That would be a good start - then you would know what style setting needs the "active" addition in your stylesheet.

 

Hello? Is there a way? Thanks in advance,


~Tracy
 

Share this post


Link to post
Share on other sites

Hi,

 

Does anyone know why, when I turn on the Cache feature I lose functionality of the fly-out vertical menue?

 

I dont use Sts or anything like that.

 

Thanks


Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.

Share this post


Link to post
Share on other sites

I'm trying to validate my catalog/index.php but code from Dynamenu gives me 12 errors bacause of the <div... tags:

**********

Line 814, Column 84: document type does not allow element "DIV" here …id="L1" class="vertsubmenu" onmouseover="clearLMTO();" onmouseout="setLMTO();">The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

 

One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).

**********

The actual line looks like this:

<div id="L1" class="vertsubmenu" onmouseover="clearLMTO();" onmouseout="setLMTO();">

These div tags are used in the template files.

 

Is there any way to fix this?


---------------

regards

sijo

---------------

 

Contrib: JMrating10 - Rate your products / osCommerce VTS - Virus & Threat Scanner

 

(osCommerce VTS now also checks for leading and trailing whitespace and also have a grep function)

Share this post


Link to post
Share on other sites

I'm trying to validate my catalog/index.php but code from Dynamenu gives me 12 errors bacause of the <div... tags:

**********

Line 814, Column 84: document type does not allow element "DIV" here …id="L1" class="vertsubmenu" onmouseover="clearLMTO();" onmouseout="setLMTO();">The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

 

One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).

**********

The actual line looks like this:

<div id="L1" class="vertsubmenu" onmouseover="clearLMTO();" onmouseout="setLMTO();">

These div tags are used in the template files.

 

Is there any way to fix this?


---------------

regards

sijo

---------------

 

Contrib: JMrating10 - Rate your products / osCommerce VTS - Virus & Threat Scanner

 

(osCommerce VTS now also checks for leading and trailing whitespace and also have a grep function)

Share this post


Link to post
Share on other sites

Hiya

 

 

I'll be wanting a nested/hidden drop-down category menu like this one: http://www.illustratedliving.co.uk/

 

Is this approximately achievable by the "drop-down" mode of Dynamenu?

 

Forgive me for asking, but it's confusing working through the updates History. Are the original contributions by nate_02631 in May 2006 all I need to approximately achieve this, still? I'm using 2.2rc2a

 

 

Thanks someone!

 

.

Edited by MattReid

Share this post


Link to post
Share on other sites

Ok first of all congratulations for nate for this contribution.

 

I have a couple of questions that i'm sure have been replied somewhere and/or due to their degree of difficult being so simple could even be in the manual (i have read manual and tryed to find in forums but haven't found), so would highly appreciate answers.

 

1st Question:

How do i insert in the classic category infobox in leftcolumn, the dinamenu above the standard listing?

 

I mean this would allow users the normal display and above it a drop down quick navigation to any category.

 

 

2nd Question:

How can i just remove the classic categories infobox (in this case i would go for dinamenu tree view)?

 

I tryed to comment out in includes/column_left.php:

 

//BOF code add dinamenu for categories

include(DIR_WS_BOXES . 'dm_categories.php');

//EOF code add dinamenu for categories

 

/* BOF code comment out for categories infobox

if ((USE_CACHE == 'true') && empty($SID)) {

echo tep_cache_categories_box();

} else {

include(DIR_WS_BOXES . 'categories.php');

}

EOF Code comment out for categories infobox */

 

if ((USE_CACHE == 'true') && empty($SID)) {

echo tep_cache_manufacturers_box();

} else {

include(DIR_WS_BOXES . 'manufacturers.php');

}

 

this only works on starting page after it doesn't (is it because legacy files in my cache??)

 

thanks in advance

Share this post


Link to post
Share on other sites

Hi,

 

Does anyone know why, when I turn on the Cache feature I lose functionality of the fly-out vertical menue?

 

I dont use Sts or anything like that.

 

Thanks

 

For me it works in both cases, with cache on or off

Share this post


Link to post
Share on other sites

Hiya

 

 

I'll be wanting a nested/hidden drop-down category menu like this one: http://www.illustratedliving.co.uk/

 

Is this approximately achievable by the "drop-down" mode of Dynamenu?

 

Forgive me for asking, but it's confusing working through the updates History. Are the original contributions by nate_02631 in May 2006 all I need to approximately achieve this, still? I'm using 2.2rc2a

 

 

Thanks someone!

Share this post


Link to post
Share on other sites

...some simple questions which may already have been answered (i havent read through this whole thread)

 

i'd like to adjust the following:

 

1. width of the menu (to match infoboxes width ; i have chosen to put the menu - vertical fly-out option - into a regular infobox)

 

2. to remove the numbering next to the menu items.

 

that's it, thanks for any help.

Share this post


Link to post
Share on other sites

...some simple questions which may already have been answered (i havent read through this whole thread)

 

i'd like to adjust the following:

 

1. width of the menu (to match infoboxes width ; i have chosen to put the menu - vertical fly-out option - into a regular infobox)

 

2. to remove the numbering next to the menu items.

 

that's it, thanks for any help.

 

Item 2. is show category counts in the config section of osc... i had already disabled the display of that in the regular info box...

 

 

surely there must be a away to alter the dynamic menu background size?

Share this post


Link to post
Share on other sites

Item 2. is show category counts in the config section of osc... i had already disabled the display of that in the regular info box...

 

 

surely there must be a away to alter the dynamic menu background size?

edit:---^ i solved the prob; just had to use negative integer values for the positioning of the arrow icons (in the stylesheet ".vertsubitem") and in the dm_categories.php file configuration options section: "$menu_layer_offset = array (-50,-100,0);" for the positioning of the fly-out menus...

 

cheers lads ;)

Share this post


Link to post
Share on other sites

I am using Dynamenu for some time as categories-menu, but now I want to use the same add-on for displaying a (statiuc) top menu on my site.

I am stuck on how setting this up, and going through the 44 pages, I didn't find any answer on this question.

 

Has anyone succeeded in setting up several (more than one) menu's on a page?

What's the logic for setting up a static horizontal menu?

 

reg,

 

Jan

Share this post


Link to post
Share on other sites

I am using Dynamenu for some time as categories-menu, but now I want to use the same add-on for displaying a (statiuc) top menu on my site.

I am stuck on how setting this up, and going through the 44 pages, I didn't find any answer on this question.

 

Has anyone succeeded in setting up several (more than one) menu's on a page?

What's the logic for setting up a static horizontal menu?

 

reg,

 

Jan

 

If you check back in the download page, you'll see that there is an upload to use a second dynamenu, thats adjusted for the articles manager addon by Jack

 

However, if you want a static menu, independent from any categories etc, then you don't need dynamenu for this, you can create one in the same way you would do in plain html, only difference is that for the links you need to use the tep_ref_link format to keep the session id, there is a post in tips and tricks about

 

As for how to create a static menu, you can search in google for "css menu" there are many tutorials

Share this post


Link to post
Share on other sites

I have a few questions that I hope can be finally answered about this contribution.

 

1) I'm using a vertical fly out menu. I have the mouseover color adjusted the way I would like, however when clicked (visited) the color turns to a specific color. I can't for the life of me figure out why I cannot change this!

 

Line

.vertitem a:link, .vertitem a:visited	{   /* Default font style & color of main menu items */

for whatever reason does not change the color for me!

 

2) Is there a way to edit the subcategories in the menu? I would like to remove the top level SUB-category from the menu and nothing more. The rest of the sub-categories beneath need to be shown still.

 

Thanks for any help in solving these issues!

Edited by christianbright

Share this post


Link to post
Share on other sites

I figured my first issue out finally.

 

.dmselected { /* Style override for selected category tree */

background-color: #ccc;

font-weight: bold;

}

 

.verbar .dmselected { /* Style override for selected root category */

background-color: #999;

}

 

These lines are necessary for vert flyout menus, and control the visited link color. This I had not figured out before. I still do need help with my second issue however...

 

Also...I would guess there is a way to change the offset of vert flyouts so that the submenus are below the main category?

Edited by christianbright

Share this post


Link to post
Share on other sites

I have installed this great contribution and work

but i have another script that now are not working

 

This is the script

 


var checkboxHeight = "25";
var radioHeight = "25";
var selectWidth = "154";
var selectWidth1 = "50";

/* No need to change anything after this */


document.write('<style type="text/css">input.styled { display: none; } select.styled { position: relative; width: ' + selectWidth + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; } input.styled1 { display: none; } select.styled1 { position: relative; width: ' + selectWidth1 + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; }.disabled { opacity: 0.5; filter: alpha(opacity=50); }</style>');

var Custom = {
init: function() {
	var inputs = document.getElementsByTagName("input"), span = Array(), textnode, option, active;
	for(a = 0; a < inputs.length; a++) {
		if((inputs[a].type == "checkbox" || inputs[a].type == "radio") && inputs[a].className == "styled") {
			span[a] = document.createElement("span");
			span[a].className = inputs[a].type;

			if(inputs[a].checked == true) {
				if(inputs[a].type == "checkbox") {
					position = "0 -" + (checkboxHeight*2) + "px";
					span[a].style.backgroundPosition = position;
				} else {
					position = "0 -" + (radioHeight*2) + "px";
					span[a].style.backgroundPosition = position;
				}
			}
			inputs[a].parentNode.insertBefore(span[a], inputs[a]);
			inputs[a].onchange = Custom.clear;
			if(!inputs[a].getAttribute("disabled")) {
				span[a].onmousedown = Custom.pushed;
				span[a].onmouseup = Custom.check;
			} else {
				span[a].className = span[a].className += " disabled";
			}
		}
	}
	inputs = document.getElementsByTagName("select");
	for(a = 0; a < inputs.length; a++) {
		if(inputs[a].className == "styled") {
			option = inputs[a].getElementsByTagName("option");
			active = option[0].childNodes[0].nodeValue;
			textnode = document.createTextNode(active);
			for(b = 0; b < option.length; b++) {
				if(option[b].selected == true) {
					textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
				}
			}
			span[a] = document.createElement("span");
			span[a].className = "select";
			span[a].id = "select" + inputs[a].name;
			span[a].appendChild(textnode);
			inputs[a].parentNode.insertBefore(span[a], inputs[a]);
			if(!inputs[a].getAttribute("disabled")) {
				inputs[a].onchange = Custom.choose;
			} else {
				inputs[a].previousSibling.className = inputs[a].previousSibling.className += " disabled";
			}
		}
		if(inputs[a].className == "styled1") {
			option = inputs[a].getElementsByTagName("option");
			active = option[0].childNodes[0].nodeValue;
			textnode = document.createTextNode(active);
			for(b = 0; b < option.length; b++) {
				if(option[b].selected == true) {
					textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
				}
			}
			span[a] = document.createElement("span");
			span[a].className = "select1";
			span[a].id = "select" + inputs[a].name;
			span[a].appendChild(textnode);
			inputs[a].parentNode.insertBefore(span[a], inputs[a]);
			if(!inputs[a].getAttribute("disabled")) {
				inputs[a].onchange = Custom.choose;
			} else {
				inputs[a].previousSibling.className = inputs[a].previousSibling.className += " disabled";
			}
		}
	}
	document.onmouseup = Custom.clear;
},
pushed: function() {
	element = this.nextSibling;
	if(element.checked == true && element.type == "checkbox") {
		this.style.backgroundPosition = "0 -" + checkboxHeight*3 + "px";
	} else if(element.checked == true && element.type == "radio") {
		this.style.backgroundPosition = "0 -" + radioHeight*3 + "px";
	} else if(element.checked != true && element.type == "checkbox") {
		this.style.backgroundPosition = "0 -" + checkboxHeight + "px";
	} else {
		this.style.backgroundPosition = "0 -" + radioHeight + "px";
	}
},
check: function() {
	element = this.nextSibling;
	if(element.checked == true && element.type == "checkbox") {
		this.style.backgroundPosition = "0 0";
		element.checked = false;
	} else {
		if(element.type == "checkbox") {
			this.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
		} else {
			this.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
			group = this.nextSibling.name;
			inputs = document.getElementsByTagName("input");
			for(a = 0; a < inputs.length; a++) {
				if(inputs[a].name == group && inputs[a] != this.nextSibling) {
					inputs[a].previousSibling.style.backgroundPosition = "0 0";
				}
			}
		}
		element.checked = true;
	}
},
clear: function() {
	inputs = document.getElementsByTagName("input");
	for(var b = 0; b < inputs.length; b++) {
		if(inputs[b].type == "checkbox" && inputs[b].checked == true && inputs[b].className == "styled") {
			inputs[b].previousSibling.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
		} else if(inputs[b].type == "checkbox" && inputs[b].className == "styled") {
			inputs[b].previousSibling.style.backgroundPosition = "0 0";
		} else if(inputs[b].type == "radio" && inputs[b].checked == true && inputs[b].className == "styled") {
			inputs[b].previousSibling.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
		} else if(inputs[b].type == "radio" && inputs[b].className == "styled") {
			inputs[b].previousSibling.style.backgroundPosition = "0 0";
		}
	}
},
choose: function() {
	option = this.getElementsByTagName("option");
	for(d = 0; d < option.length; d++) {
		if(option[d].selected == true) {
			document.getElementById("select" + this.name).childNodes[0].nodeValue = option[d].childNodes[0].nodeValue;
		}
	}
}
}
window.onload = Custom.init;

 

What i need to change for no conflicts

 

Thanks

Edited by danut82

Share this post


Link to post
Share on other sites

Ok first of all congratulations for nate for this contribution.

 

I have a couple of questions that i'm sure have been replied somewhere and/or due to their degree of difficult being so simple could even be in the manual (i have read manual and tryed to find in forums but haven't found), so would highly appreciate answers.

 

1st Question:

How do i insert in the classic category infobox in leftcolumn, the dinamenu above the standard listing?

 

I mean this would allow users the normal display and above it a drop down quick navigation to any category.

 

 

2nd Question:

How can i just remove the classic categories infobox (in this case i would go for dinamenu tree view)?

 

I tryed to comment out in includes/column_left.php:

 

//BOF code add dinamenu for categories

include(DIR_WS_BOXES . 'dm_categories.php');

//EOF code add dinamenu for categories

 

/* BOF code comment out for categories infobox

if ((USE_CACHE == 'true') && empty($SID)) {

echo tep_cache_categories_box();

} else {

include(DIR_WS_BOXES . 'categories.php');

}

EOF Code comment out for categories infobox */

 

if ((USE_CACHE == 'true') && empty($SID)) {

echo tep_cache_manufacturers_box();

} else {

include(DIR_WS_BOXES . 'manufacturers.php');

}

 

this only works on starting page after it doesn't (is it because legacy files in my cache??)

 

thanks in advance

 

replyes are appreciated, if you can feel free, thanks

Share this post


Link to post
Share on other sites

I have installed this great contribution and work

but i have another script that now are not working

 

This is the script

 


var checkboxHeight = "25";
var radioHeight = "25";
var selectWidth = "154";
var selectWidth1 = "50";

/* No need to change anything after this */


document.write('<style type="text/css">input.styled { display: none; } select.styled { position: relative; width: ' + selectWidth + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; } input.styled1 { display: none; } select.styled1 { position: relative; width: ' + selectWidth1 + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; }.disabled { opacity: 0.5; filter: alpha(opacity=50); }</style>');

.......

.......

window.onload = Custom.init;

 

What i need to change for no conflicts

 

Thanks

 

i have resolved thhis conflict

i have added in header.php :

<body onLoad="Custom.init() ; loadHandler()">

 

Good Luck

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×