Milonic provide full featured pull down web menus for some of the worlds largest companies
click here to see what it can do for you

Download Milonic DHTML Menu
Buy Milonic DHTML Menu

Back To Start Of Archive
Taken From The Forum: Help & Support for DHTML Menu Version 5+
Forum Topic: Click to view post
Last Updated: Saturday July 14 2012 - 06:07:13

Possible Limitation in this 5.x menu.


Poster: djliquidice
Dated: Thursday August 26 2004 - 14:22:55 BST

First i have to say that i absolutely LOVE this menu. I love the fact that the author(s?) have allowed the menu to be scrollable if they are too big for the window. I love the ability to place nicely created icons on the menus.

But (and this saddens me) i think i found a sever limitation in this product. Someone PLEASE correct me if i'm wrong.

Basically you can't have two menu items w/ the exact same name. That kinds sux. Suppose if you want to have the following menu structure:

Menu1,
----|___Procedures
----|---------|____Procedure 1
----|---------|____Procedure 2
----|___Diagrams
--------------|____Diagram 1
--------------|____Diagram 2
--------------------------|_____Diagram 1,1

Menu 2,
----|___Procedures
----|---------|____Procedure 1
----|---------|____Procedure 2
----|___Samples
--------------|____Sample 1
--------------|____Sample 2

Because you can't have two things /w the name Procedures, coding in this menu can be a pain in the rump. :(


Code:
with(milonic=new menuname("Links")){
style=menuStyle;
aI("text=Apache Web Server;url=http://www.apache.org/;status=Apache Web Server, the basis of Milonic's Web Site;");
aI("text=MySQL Database Server;url=http://ww.mysql.com/;status=MySQL, Milonic's Prefered Choice of Database Server;");
aI("text=PHP - Development;url=http://www.php.net/;status=PHP - Web Server Scripting as used by Milonic;");
aI("text=phpBB Web Forum System;url=http://www.phpbb.net/;status=PHP Based Web Forum, Milonic's Recommended Forum Software;");
aI("text=Anti Spam Tools;showmenu=Anti Spam;status=Anti Spam Solutions, as used by Milonic;");
aI("text=Test Test;showmenu=Test Test;status=Anti Spam Solutions, as used by Milonic;");

}

with(milonic=new menuname("Anti Spam")){
style=menuStyle;
aI("text=Spam Cop;url=http://www.spamcop.net/;");
aI("text=Mime Defang;url=http://www.mimedefang.org/;");
aI("text=Spam Assassin;url=http://www.spamassassin.org/;");
}

with(milonic=new menuname("Test Test")){
style=menuStyle;
aI("text=Spam Cop;showmenu=Spam Cop;");
aI("text=Mime Defang;url=http://www.mimedefang.org/;");
aI("text=Spam Assassin;url=http://www.spamassassin.org/;");
}

with(milonic=new menuname("Spam Cop")){
style=menuStyle;
aI("text=Spam Cops;showmenu=Spam Cops;");
aI("text=Mime Defang;url=http://www.mimedefang.org/;");
aI("text=Spam Assassin;url=http://www.spamassassin.org/;");
}


with(milonic=new menuname("My Milonic")){
style=menuStyle;
aI("text=Login;url=http://www.milonic.co.uk/login.php;");
aI("text=Licenses;url=http://www.milonic.co.uk/mylicenses.php;");
aI("text=Invoices;url=http:/www.milonic.com/myinvoices.php;");
aI("text=Make Support Request;url=http://www.milonic.co.uk/reqsupport.php;");
aI("text=View Support Requests;url=http://www.milonic.co.uk/mysupport.php;");
aI("text=Test Test;showmenu=Test Test;");
}

with(milonic=new menuname("Test Test")){
style=menuStyle;
aI("text=Spam Cop;showmenu=Spam Cop;");
aI("text=Mime Defang;url=http://www.mimedefang.org/;");
aI("text=Spam Assassin;url=http://www.spamassassin.org/;");


Poster: John
Dated: Thursday August 26 2004 - 14:51:52 BST

Thank you for the kind words. Most appreciated by the entire Team.

OK, maybe I'm missing something, but is it really so hard to just modify the name a bit? Following your example, Procedure1, Procedure 2, or ProcedureTest, ProcedureSpam, etc. For Menu 2, Procedure1-2, Procedure 2-2, etc.

I would hope you can understand why names cannot be the same - how would the program know which 'Procedure 1' to use if you had more than one with the same name? It follows the rules of any other programming language I know about.


Poster: djliquidice
Dated: Thursday August 26 2004 - 19:54:27 BST

John, thanks for the fast reply.

See the issue right now, is we're using "Cool menu 4". While it's a very good menu system, the programmer(s) neglected to setup the menu system to undrestand the bottom of a web page. Basically, I'm looking for a better solution for our group website. I think this will work, but I am not too sure how many characters each line is limited to. I have a perl script that generates the Java menu code on demand based on a singular Directory structure.

How many Characters are these lines limited to?
Code:
aI("text=Test Test;showmenu=How_Many_Chrs?;status=Anti Spam Solutions, as used by Milonic;");


Poster: djliquidice
Dated: Thursday August 26 2004 - 20:01:28 BST

Here is a snippet on the current data structure. I know That your menu system is FAR superior than coolmenu. But.... :-\ I suppose i gotta make it work for my specific needs.

I think it's awesome that you guys have a support forum btw.


[Snapshot]
Code:
oM.makeMenu('m1','','AF Operator','','')
oM.makeMenu('m2','m1','Reports','','')
oM.makeMenu('m3','m1','Procedures','','')
oM.makeMenu('m4','m3','<li> AFOResourceMgr','http://www.mysite/cgi/website.pl?LC&/content/01_AF_Operator/Procedures/AFOResourceMgr.htm','')
oM.makeMenu('m5','m3','<li> new AFOResourceMgr','http://www.mysite/cgi/website.pl?LC&/content/01_AF_Operator/Procedures/new_AFOResourceMgr.htm','')
oM.makeMenu('m6','m1','Diagrams','','')
oM.makeMenu('m7','m1','Overviews','','')
oM.makeMenu('m8','','Asset Insight','','')
oM.makeMenu('m9','m8','Reports','','')
oM.makeMenu('m10','m8','Procedures','','')
oM.makeMenu('m11','m8','Overviews','','')
oM.makeMenu('m12','m8','Diagrams','','')
oM.makeMenu('m13','','BMC Patrol','','')
oM.makeMenu('m14','m13','Reports','','')
oM.makeMenu('m15','m13','Procedures','','')
oM.makeMenu('m16','m15','<li> patrol cleanup','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/patrol-cleanup.htm','')
oM.makeMenu('m17','m15','<li> stoppingpatrol','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/stoppingpatrol.html','')
oM.makeMenu('m18','m15','<li> Patrol Install','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/Patrol_Install.htm','')
oM.makeMenu('m19','m15','<li> SDC network scan','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/SDC_network_scan.html','')
oM.makeMenu('m20','m15','<li> Changing Patrol Passwords','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/Changing Patrol Passwords.htm','')
oM.makeMenu('m21','m15','<li> patrol agent config','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/patrol_agent_config.html','')
oM.makeMenu('m22','m15','MQ Series','','')
oM.makeMenu('m23','m22','<li> MQ Series Alarming','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/MQ_Series/MQ_Series_Alarming.html','')
oM.makeMenu('m24','m22','<li> MQ Series KM Notes','http://www.mysite/cgi/website.pl?LC&/content/03_BMC_Patrol/Procedures/MQ_Series/MQ_Series_KM_Notes.html','')


Poster: John
Dated: Thursday August 26 2004 - 20:03:21 BST

There is no limit that I am aware of. Of course, Andy may step in and correct me on that, but I've seen some pretty extreme statements.

Basically, you can't go wrong with this DHTML menu system from Milonic. The flexibility is amazing!


Poster: John
Dated: Thursday August 26 2004 - 20:05:26 BST

I see we're cross-posting.

The code you posted is well within reach of this system. Actually, those lines are pretty short.


Poster: Ruth
Dated: Thursday August 26 2004 - 23:18:21 BST

I may have totally misunderstood what you're asking, but there's no reason you can't have the 'text' of an item the same, so you can have Procedures as the text on Menu 1 and Procedure 1 Procedure 2 as the items on the submenu that Procedures calls on mouseover, and you can have the same thing on Menu 2. What you can't have is the showmenu= be the same name if you are trying to call different submenus. So in Menu 1 you might do showmenu="procedures_menu1" and in Menu 2 you might do showmenu="procedures_menu2"; and then of course make the submenus accordingly for menu 1 and menu 2.

Ruth


Poster: Andy
Dated: Thursday August 26 2004 - 23:35:44 BST

Hi,

Athough I'm not an expert on DHTMLCentral's Coolmenu, from looking at the above data, the name of the menus are m1, m2, m3, m4, m5 and so on.

There's no reason why you couldn't do the same with the Milonic DHTML Menu?

Hope this helps
Andy


Poster: kevin3442
Dated: Thursday August 26 2004 - 23:59:04 BST

Hi,

My two cents:

I agree with Ruth. I'm certain I have used menus before where the text= parameter was the same in multiple menu items across different submenus. Shouldn't be a problem.

As for length limits: depends. The parameter passed ti aI() to make a menu item is a string. I have a foggy memory of earlier implementations of javascript, in very old browsers, imposing a length limit in strings of 255 characters. If you exceeded that length, you'd get an "unterminated string costant" error (or some such). I'm pretty sure that limitation was shed long ago, although I don't know exactly when (circa NS3?). And if there is a current limit, I don't know what it is (although a little Googling should tell). Also don't know if there are still short limitations in various browsers still in use (IE/Mac). Some testing would tell, but I doubt that you'll hit a practical limit for menu item definitions.

Cheers,

Kevin


Poster: John
Dated: Friday August 27 2004 - 4:05:32 BST

"...can't have two menu items w/ the exact same name" can be looked at either way, of course. I could have gone down the path (yes, Kevin - age :!: :D ), but Ruth got the other side of the coin covered well.