function drilldownmenu(setting){this.sublevelarrow={src:setting.sublevelarrow,width:"8px",top:"3px",left:"6px"};this.breadcrumbarrow="right.gif";this.loadingimage="loader.gif";this.homecrumbtext=homeCrumbAllText;this.titlelength=35;this.backarrow="leftarrow.gif";this.breadcrumbarrow=setting.breadcrumbarrow;this.backarrow=setting.backarrow;this.menuid=setting.menuid;this.$menudiv=null;this.mainul=null;this.$uls=null;this.navdivs={};this.menuheight=setting.menuheight||"auto";this.selectedul=setting.selectedul||null;this.speed=setting.speed||70;this.persist=setting.persist||{enable:false,overrideselectedurl:false};this.$arrowimgs=null;this.currentul=0;this.filesetting=setting.filesetting||{url:null,targetElement:null};this.zIndexvalue=100;this.arrowposx=0;var thisdrill=this;thisdrill.init($,setting)}drilldownmenu.prototype.init=function($,setting){var thisdrill=this;var $maindiv=$("#"+setting.menuid).css({position:"relative"});var $uls=$maindiv.find("ul");$uls.css({position:"absolute",left:0,top:0,visibility:"hidden"});this.$maindiv=$maindiv;this.$uls=$uls;this.navdivs.$crumb=$("#"+setting.breadcrumbid);this.navdivs.$backbuttons=$('a[rel^="drillback-'+setting.menuid+'"]').css({outline:"none"}).click(function(e){thisdrill.back();e.preventDefault()});this.buildmenu($);$(window).bind("unload",function(){thisdrill.uninit()});setting=null};drilldownmenu.prototype.buildmenu=function($){var miscoResize=0;var thisdrill=this;this.$uls.each(function(i){if(miscoResize<$(this).children().size()){miscoResize=$(this).children().size()}var $thisul=$(this);if(i==0){thisdrill.$maindiv.css({height:(thisdrill.menuheight=="auto")?$thisul.outerHeight():parseInt(thisdrill.menuheight),overflow:"hidden"}).data("h",parseInt(thisdrill.$maindiv.css("height")))}else{var $parentul=$thisul.parents("ul:eq(0)");var $parentli=$thisul.parents("li:eq(0)");var $anchorlink=$parentli.children("a:eq(0)").css({outline:"none"}).data("control",{order:i});var $arrowimg=$(thisdrill.sublevelarrow.src).css({position:"absolute",borderWidth:0,paddingTop:thisdrill.sublevelarrow.top,left:$parentli.width()-parseInt(thisdrill.sublevelarrow.width)-parseInt(thisdrill.sublevelarrow.left)}).prependTo($anchorlink);$anchorlink.click(function(e){thisdrill.slidemenu(jQuery(this).data("control").order);e.preventDefault()})}thisdrill.$maindiv.css({height:miscoResize*25});var ulheight=($thisul.outerHeight()<thisdrill.$maindiv.data("h"))?thisdrill.$maindiv.data("h"):"auto";$thisul.css({visibility:"visible",width:"100%",height:ulheight,left:(i==0)?"auto":$parentli.outerWidth(),top:0});$thisul.data("specs",{w:$thisul.outerWidth(),h:$thisul.outerHeight(),order:i,parentorder:(i==0)?-1:$anchorlink.parents("ul:eq(0)").data("specs").order,x:(i==0)?$thisul.position().left:$parentul.data("specs").x+$parentul.data("specs").w,title:(i==0)?thisdrill.homecrumbtext:$parentli.find("a:eq(0)").text().substring(0,thisdrill.titlelength)})});var selectedulcheck=this.selectedul&&$(this.selectedul).length>0;this.$arrowimgs=this.$maindiv.find("img.arrowclass");this.arrowposx=parseInt(this.$arrowimgs.eq(0).css("left"));if(window.opera){this.$uls.eq(0).css({zIndex:this.zIndexvalue})}if(this.persist.enable&&(this.persist.overrideselectedul||!this.persist.overrideselectedul&&!selectedulcheck)&&drilldownmenu.routines.getCookie(this.menuid)){var ulorder=parseInt(drilldownmenu.routines.getCookie(this.menuid));this.slidemenu(ulorder,true)}else{if(selectedulcheck){var childCount=$(this.selectedul).children().size();if(childCount==1){var ulorder=$(this.selectedul).parents("ul:eq(0)").data("specs").order;this.slidemenu(ulorder,true)}else{var ulorder=$(this.selectedul).children("ul:eq(0)").data("specs").order;this.slidemenu(ulorder,true)}}else{this.slidemenu(0,true)}}this.navdivs.$crumb.click(function(e){if(e.target.tagName=="A"){var order=parseInt(e.target.getAttribute("rel"));if(!isNaN(order)){thisdrill.slidemenu(order);e.preventDefault()}}})};drilldownmenu.prototype.slidemenu=function(order,disableanimate){var order=isNaN(order)?0:order;this.$uls.css({display:"none"});var $targetul=this.$uls.eq(order).css({zIndex:this.zIndexvalue++});if($targetul.data("specs")==null){return}$targetul.parents("ul").andSelf().css({display:"block"});this.currentul=order;if($targetul.data("specs").h>this.$maindiv.data("h")){this.$maindiv.css({overflowY:"auto"}).scrollTop(0);this.$arrowimgs.css("left",this.arrowposx-15)}else{this.$maindiv.css({overflowY:"hidden"}).scrollTop(0);this.$arrowimgs.css("left",this.arrowposx)}this.updatenav($,order);this.$uls.eq(0).animate({left:-$targetul.data("specs").x},typeof disableanimate!="undefined"?0:this.speed)};drilldownmenu.prototype.back=function(){if(this.currentul>0){var order=this.$uls.eq(this.currentul).parents("ul:eq(0)").data("specs").order;this.slidemenu(order)}};drilldownmenu.prototype.updatenav=function($,endorder){var $currentul=this.$uls.eq(endorder);if(this.navdivs.$crumb.length==1){var $crumb=this.navdivs.$crumb.empty();if(endorder>0){var crumbhtml="";while($currentul&&$currentul.data("specs").order>=0){crumbhtml=this.breadcrumbarrow+'<a href="#nav" rel="'+$currentul.data("specs").order+'">'+$currentul.data("specs").title+"</a>"+crumbhtml;$currentul=($currentul.data("specs").order>0)?this.$uls.eq($currentul.data("specs").parentorder):null}$crumb.append(crumbhtml).find("img:eq(0)").remove().end().find("a:last").replaceWith(this.$uls.eq(endorder).data("specs").title)}else{$crumb.append(this.homecrumbtext)}}if(this.navdivs.$backbuttons.length>0){if(!/Safari/i.test(navigator.userAgent)){this.navdivs.$backbuttons.css((endorder>0)?{opacity:1,cursor:"pointer"}:{opacity:0.5,cursor:"default"})}}};drilldownmenu.prototype.uninit=function(){if(this.persist.enable){drilldownmenu.routines.setCookie(this.menuid,this.currentul)}};drilldownmenu.routines={getCookie:function(Name){var re=new RegExp(Name+"=[^;]*","i");if(document.cookie.match(re)){return document.cookie.match(re)[0].split("=")[1]}return null},setCookie:function(name,value){document.cookie=name+"="+value+"; path=/"}};
