Jump to content
Sign in to follow this  
nate_02631

"Dynamenu" for osCommerce

Recommended Posts

Thanks Jim.

 

But I'm just a novice at PHP so I can't figure out how to do this. Maybe there's a way to blend the plain vertical menu code with the vertical flyout code?

 

How do I modify the code for the vertical flyout so that the submenus will be visible and expanded already without clicking or hovering the cursor on the main menu? And also to place the submenu right below the mainmenu.

Share this post


Link to post
Share on other sites
greetings, first of all thanks for the great contrib.

I have just one little problem, after i've installed all and using the flyout css, my submenu works well if in a little browser window, else if i expand the window in full screen the submenu appears far away from the menu... to make u understand better i post a link to the menu

 

http://www.surfmaster.altervista.org/

 

i've checked the css and seems to be all good..rly dunno how to solve this, i hope u can help

 

cheers

Paolo

 

Anyone knows how to make this works pls? the problem is that my oscommerce is closed in a wrapper then i think that there is something to change in the javascript whit the width parameters of the windows or stuffs like that...

 

If someone can look for it i'll appreciate a lot

 

thanks for any help

Paolo

Share this post


Link to post
Share on other sites

Hi,

I would like to try this contribution, but Im a little confused about which file to download for my OSC 2.2 version - ie do I download the 2006 file and then do all the bug fixes and tweeks or is there a later version? It isn't apparent on the contribution page.

 

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

Thanks for god contri:)

 

I have some problem when I try to set a java sliding show in the indexpage. The slideshow are hiding the flyout menu. I`m using sts.

What can I do if I want a slidning show in the middle of the page when I using Dynamenu?

 

(Sorry for my bad eng) :blush:

Share this post


Link to post
Share on other sites

Great cotribution, i have been playing about with it for quite a while.

 

However i have a bit of an issue i could do with peoples help on.

 

I am using the vertical fly out which works great but the sub-menu goes behind a swf that i have on my home-page, and i can't figure out why.

I have tried fiddling about with the z-index but that doesnt seem to sort anything, and it is only this one swf it is falling behind.

 

I have had to turn off the dyna menu for now as i can't have my customers using it like that, but the site can be seen at my site it is the big swf in the middle of the page.

 

thanks for any help

dan

Share this post


Link to post
Share on other sites

Hi..

 

Is there any way (I have searched the forum thead without any results) to use the category-name for a dropdown with both + and -? So the category is dropping with the subcategories if I press the 'head category'?

 

I mean somthing like this:

http://www.tdjdata.se/

 

Thanks

Share this post


Link to post
Share on other sites

I think this is some sucess...

 

I replaced line 246 in treemeny.inc.php in functions/dynamenu/lib with this:

$a_href_open = '<a onmousedown="'. $toggle_function_name . "('" . $cnt . "')\";" . $this->tree[$cnt]['parsed_title'] . ' class="' . $linkstyle . ' '. $this->tree[$cnt]['parsed_target']. '">';

 

Now I can toggle with the category-name.. But NOT open the categories.. :(

 

My mouse pointer is like this:

http://www9.speedyshare.com/data/474157826...sdasdsadasd.bmp

 

Plleaasseee help me!

Share this post


Link to post
Share on other sites

I have added a Home link and an All Products A-Z link to my dynamenu using the post information below.

I am now having a problem that the Session ID is not getting passed with either of these links. Has anyone figured out how to get the Session ID involved in the additional links?

 

What I have right now is:

$mid->setMenuStructureString($categories_string."\n.|All Products A-Z|allprods.php|All Products A-Z|||\n.|Home|index.php|Home|||");

 

Thanks!

 

That is a syntax error, you just need to recheck your quotes, dots, etc... for proper placement/syntax...

 

 

 

Basically, in the script where you are passing the menu structure string off to be generated, you can add whatever links you like, before or after the category links. The syntax outlined in the comments in tep_make_cat_dmbranch needs to be followed to specify extra menu items (It is pipe-delineated and each link is terminated by a newline \n). So around line 158 change it to add a home link for example:

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


~Tracy
 

Share this post


Link to post
Share on other sites

Hi Nate,

thanks for this contribution. It is exactly what I dreamt of. I use the horizontal drop down version which works well on standard OSC.

 

One problem:

Because of the layout of my homepage, I want to put the whole shop into a layer, so that I can put some picts + logo around it.

 

As soon as I use this layer for the 3 main colums, the horizontal menu flies out showing the submenus far away down to the right side from the main bar, which is positioned correctly.

This is the layer I use:

#innen{

position:absolute;

width:630px;

height:625px;

z-index:1;

left: 140px;

top: 250px;

overflow: visible;

bottom: 3px;

}

 

It doesn't make any difference, if I put the menu into or outside of the layer or into an extra layer. If I delete the layer above, it works properly.

 

It seems something is not compatible. Do you have any idea what I could do?

Thanks a lot!

weinhexe

Share this post


Link to post
Share on other sites

In your catalog/includes/boxes/dm_categories.php file you should have this around line 27:

  // Set to false to display the menu output only. Set to true to display in
// a regular box. The former is useful for better integrating the menu with your layout.
$show_dmcats_as_box = true;

 

Then there is also this around line 70:

	// This is the HTML that you would like to appear before/after your categories menu if *not*
// displaying in a standard "box". This is useful for reconciling tables or clearing
// floats, depending on your layout needs.	For example if not including in a box in the
// default osC template, you would need opening/closing <tr><td> tags...
$before_nobox_html = '';
 $after_nobox_html = '';

 

These bits of code should hopefully help you to set it up to run without the table so it will hopefully show how you would like it to on your div layout.

 

 

Hi Nate,

thanks for this contribution. It is exactly what I dreamt of. I use the horizontal drop down version which works well on standard OSC.

 

One problem:

Because of the layout of my homepage, I want to put the whole shop into a layer, so that I can put some picts + logo around it.

 

As soon as I use this layer for the 3 main colums, the horizontal menu flies out showing the submenus far away down to the right side from the main bar, which is positioned correctly.

This is the layer I use:

#innen{

position:absolute;

width:630px;

height:625px;

z-index:1;

left: 140px;

top: 250px;

overflow: visible;

bottom: 3px;

}

 

It doesn't make any difference, if I put the menu into or outside of the layer or into an extra layer. If I delete the layer above, it works properly.

 

It seems something is not compatible. Do you have any idea what I could do?

Thanks a lot!

weinhexe


~Tracy
 

Share this post


Link to post
Share on other sites

Hi Tracy,

thanks for those hints.

 

1. I changed this one to true:

 

In your catalog/includes/boxes/dm_categories.php file you should have this around line 27:

  // Set to false to display the menu output only. Set to true to display in
// a regular box. The former is useful for better integrating the menu with your layout.
$show_dmcats_as_box = true;

 

2. This is exactly how the script is in my file.

 

Then there is also this around line 70:

	// This is the HTML that you would like to appear before/after your categories menu if *not*
// displaying in a standard "box". This is useful for reconciling tables or clearing
// floats, depending on your layout needs.	For example if not including in a box in the
// default osC template, you would need opening/closing <tr><td> tags...
$before_nobox_html = '';
 $after_nobox_html = '';

 

These bits of code should hopefully help you to set it up to run without the table so it will hopefully show how you would like it to on your div layout.

 

Unfortunately no result. Maybe Nate will have the ultimative idea?

Kind regards,

weinhexe

Share this post


Link to post
Share on other sites

If it is set to true then it will show as a table. If it is set to false you can use <div id=whatever> and </div> tags around the menu in the second bit of code ;)

 

Hi Tracy,

thanks for those hints.

 

1. I changed this one to true:

 

 

 

Unfortunately no result. Maybe Nate will have the ultimative idea?

Kind regards,

weinhexe


~Tracy
 

Share this post


Link to post
Share on other sites

Anybody have any ideas on this?

 

I have added a Home link and an All Products A-Z link to my dynamenu using the post information below.

I am now having a problem that the Session ID is not getting passed with either of these links. Has anyone figured out how to get the Session ID involved in the additional links?

 

What I have right now is:

$mid->setMenuStructureString($categories_string."\n.|All Products A-Z|allprods.php|All Products A-Z|||\n.|Home|index.php|Home|||");

 

Thanks!


~Tracy
 

Share this post


Link to post
Share on other sites

Some of my customers who use chrome have a problem when hovering over the menu items (vertical fly out) in that when hovering the alt-text box appears and obscures the sub menu items like this:

 

click here to see

 

 

Where can I disable this feature ?

 

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

hi all, got a big problem with ie7 and dynamenu with the sub-menu positioning.

 

When the first sub-menu flies out it appears in at the right position with left:0; but appears in a random place at the top, it also seems dependant on how far down the screen you have scrolled.

 

i presume it is to do with:

 

.vertsubmenu	{   /* Behaviour of sub-menu  - leave as is for proper operation of submenus */
position: absolute;
left: 0px;
top: 0px;
visibility: hidden;

}

 

but for all the deeper levels of sub-menus they work fine.

 

it works fine in firefox and chrome, the domain is here if you want to see what it looks like, i am going to keep playing about with the css but i have the client on my back so if anybody could help me out it would be much appreciated!

thanks

Dan

Share this post


Link to post
Share on other sites

i cant be the only one with this problem so i'm wondering what i have done wrong? i thought maybe i had changed my css so i inserted the original css but the same problem occurs..

 

i have trawled through pretty much every page of this forum to no avail so i am really stumped as to the problem.

if anybody can offer me any help it would be amazing!

 

thanks

Share this post


Link to post
Share on other sites

I'm running IE7 and went to your link and I don't see any problems. I take it you got it fixed?

 

i cant be the only one with this problem so i'm wondering what i have done wrong? i thought maybe i had changed my css so i inserted the original css but the same problem occurs..

 

i have trawled through pretty much every page of this forum to no avail so i am really stumped as to the problem.

if anybody can offer me any help it would be amazing!

 

thanks


~Tracy
 

Share this post


Link to post
Share on other sites

yeah it turns out it wasnt the CSS of it, i added manual links for Home and Exclusives in the template file of dynamenu, Firefox didnt see a problem with this but it offset everything by about 100px in IE7, so i had to add the links in the STS template instead!

 

it took me until i found a working version of dynamenu in IE7 to know it couldnt be CSS!

 

Dan

Share this post


Link to post
Share on other sites

Really - this is great news for me! I have been trying to get links to Home and the All Products A-Z in the Dynamenu - which I did have the code to add it into the menu itself, however; it doesn't keep the session ID. So if someone used either of those links -they lost their cart, they weren't signed in anymore - etc...

 

Would you mind sharing how you did this in STS (I use that as well) and did it look as though it is part of the existing Dynamenu? (It did when I looked at it the other day)

 

yeah it turns out it wasnt the CSS of it, i added manual links for Home and Exclusives in the template file of dynamenu, Firefox didnt see a problem with this but it offset everything by about 100px in IE7, so i had to add the links in the STS template instead!

 

it took me until i found a working version of dynamenu in IE7 to know it couldnt be CSS!

 

Dan


~Tracy
 

Share this post


Link to post
Share on other sites

Hi Daniel,

 

I had a look at your site and you have the same problem as me with dynamenu, in that when you hover over a category the alt-text partially obscures the sub-categories.

 

See my recent question on this just above the start of your thread.

 

Does nobody else have a problem with this?

 

If they did how did they solve it ?

 

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

Anyone ?


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

To anyone new or those deciding to use this contribution, I highly recommend it. It's one of the good' ones.

I'm using it with 1080 Categories and it's working beautefully. :lol:

To everyone else, here's mine if you're looking for ideas: ;)

Dynamenu01.png

Link to the live shop

Tips for the new users:

1- Backup and change the variables stylesheet.css in dm_categories and get use to how it works.

Read the Install instructions and double check, this forum is waaay to full of repeated support questions. <_<

2- Get the spacing right, make it look nice on 1024*798 and bigger resolutions as well on widescreens.

3- New look? use .PNG files to ad some transparency

4- You can also change the background of the categories to make a small button on the left that changes or whatever.

5- Change the background & font of the category this mouse hovers over to make it suit your site.

6- I added a darker line top & bottom to give the list a ½ 3D-like look for example.

Also...

Please remember the

***CODE***

// Output the footer for Dynamenu for osCommerce

echo $GLOBALS['dmfooter'];

***CODE***

Code in your footer.php file.

 

Some (older) useful posts:

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

To make Categorie links point to external websites:

Posted by: Synd Nov 1 2006, 12:08 PM

Thanks a ton, here's a pretty IF statement to do it...

QUOTE

$output .= str_repeat(".", $level+$lvl_adjust).'|'.$divide_subcats_text.'||'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";

$this_subcat_count = 1;

$lvl_adjust ++;

}

if($cPath_new == "cPath=29") {

$this_title .= ".php";

$output .= str_repeat(".", $level+$lvl_adjust).'|'.$val.'|'.tep_href_link($this_title).'|'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";

} else {

$output .= str_repeat(".", $level+$lvl_adjust).'|'.$val.'|'.tep_href_link(FILENAME_DEFAULT, $cPath_new).'|'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";

}

[/size]

Posted by: nate_02631 Nov 1 2006, 01:26 PM

Not bad... I would have gone a slighly different way, creating a $linkvar and assigning the link portion of the $output to "blah" if a match or to the usual tep-link... if not, and then stick that var in output... A good programming practice is DRY - "Don't Repeat Yourself" ;-)

 

Posted by: nate_02631 Oct 28 2006, 05:44 PM

QUOTE (gerard @ Oct 17 2006, 10:37 AM)

Is there anyway off excluding certain cPath links and sub links from being produced in the menu?

I have a menu item called logs, which cPath=25 and I would like it not to show in the menu, it also has a sub menu called wet logs cpath=25_35

Look in the tep_make_cat_dmbranch function, where the categories are being parsed... Just before the $output is assigned, I think you could add something like

 

CODE

if ($GLOBALS['cPath_set'][0] == '25')

continue;

Assuming cat #25 is a "root" category. Otherwise, change the the zero to 1, 2, etc... depending on what sublevel the category is on... Haven't tried it, but something along those lines...

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

Can someone please just help me with something that's been bugging me? <_<

 

Dynamenu02.png

In the 2nd picture I have a level 2 subcategory containing cables. (/catalog/index.php?cPath=1_72)

I want to add a dummy subcategory to other level 3,4 & 5 subcategories like "Displays", "Networking", "etc" that displays the main Level 2 "Cables" subcategory.

 

In a nutshell:

When I hover my mouse over "Hardware" -> "Displays" -> "Cables" (cPath=1_179_193)

it shouldn't display "cPath=1_179_193" but rather "cPath=1_72".

Not the level 4 subacategory "Cables" but rather level 2 subcategory "Cables"

 

Ive downloaded this topic and read, and read and came upon a ½ working solution: :blink:

 

In dm_categories:

***CODE***

$this_subcat_count = 1;

$lvl_adjust ++;

}

 

if($cPath_new == "cPath=1_179_193") {

$this_title .= "index.php?cPath=1_72";

 

$output .= str_repeat(".", $level+$lvl_adjust).'|'.$val.'|'.tep_href_link($this_title).'|'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";

} else {

$output .= str_repeat(".", $level+$lvl_adjust).'|'.$val.'|'.tep_href_link(FILENAME_DEFAULT, $cPath_new).'|'.$this_title.'|'.$menu_icon_file.'|'.$this_selected.'|'.$this_expanded."\n";

}

if ((isset($table[$key])) AND (($maxlevel > $level + 1) OR ($maxlevel == '0'))) {

$output .= tep_make_cat_dmbranch($key,$table,$level + $lvl_adjust,$maxlevel);

}

} // End while loop

return $output;

}

?>

***CODE***

Which will only work if the last "Cables" category (193) didn't have any subdirectories.

As it is now it will take me to category 72 but still shows 193's subcategories. <_<

I realy would like a way for it to show 72's subcategories.

Edited by Stephan (VS)

"I have no special talent. I am only passionately curious"

- Albert Einstein

Share this post


Link to post
Share on other sites

My menu works fine in FireFox, but in Internet Explorer the flyout fills the entire horizontal width of the screen.. has anyone encountered this problem or have any ideas how to fix it ? Thanks.

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  

×