Index: trunk/themes/default2007/platform/elements/subcats.xml.tpl =================================================================== diff -u -N --- trunk/themes/default2007/platform/elements/subcats.xml.tpl (revision 0) +++ trunk/themes/default2007/platform/elements/subcats.xml.tpl (revision 8539) @@ -0,0 +1,33 @@ + + + + + + + + " + orient="V" showicon="true" showsubicon="true" stlprf="" + submenuic="['img/arrow_white.gif']"> + + + " url="" enb="true" + + + subid="sub" + suburl="" + + + >]]> + + + + + " url="" enb="true"> + + + + + \ No newline at end of file Index: trunk/themes/default2007/platform/inc/dmenu.css =================================================================== diff -u -N --- trunk/themes/default2007/platform/inc/dmenu.css (revision 0) +++ trunk/themes/default2007/platform/inc/dmenu.css (revision 8539) @@ -0,0 +1,130 @@ +/* Horizontal (menubar) menu */ + +.horz_nlsmenu { + background-color: inherit; + z-index:1; + width: auto; +} + +.horz_nlsitemcontainer { + height: 37px; + color: #ffffff; + padding: 0px 13px; +} +.horz_nlsiconcell {width:16px;} +.horz_nlssubmenucell{width:20px;} +.horz_nlsitem { + font-size:8pt; + color: #ffffff; + padding:2px 5px 2px 5px; +} + +.horz_nlsitemcontainerover { + height: 37px; + background:url(../img/top_menu_select.gif); + padding: 0px 13px; +} +.horz_nlsiconcellover {width:16px;} +.horz_nlssubmenucellover {width:20px;} +.horz_nlsitemover { + font-size:8pt; + color:#ffffff; + padding:2px 5px 2px 5px; +} + +.horz_nlsitemdisable { + font-family:verdana; + font-size:8pt; + color:#999999; + padding:2px 5px 2px 5px; +} + +.horz_nlsseparatorcontainer {padding-left:0px; width:1px;} + +.horz_nlsseparator { + height:5px; + width:1px; + background-image:url(img/vseparator.gif); + background-position:center center; + background-repeat:repeat-x; +} + +.horz_mtopleft {height:0px; width:0px;} +.horz_mtopright {height:0px; width:0px;} +.horz_mbottomleft {width:0px; height:0px;} +.horz_mbottomright {width:0px; height:0px;} +.horz_mtop {height:0px;} +.horz_mbottom {height:0px;} +.horz_mleft {width:0px;} +.horz_mright {width:0px;} + +.horz_horzshadow { -moz-opacity:0.4; background-repeat:no-repeat; background-image:url(img/hshadow.gif);filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=40, FinishOpacity=0, Style=0, StartX=0, FinishX=100, StartY=0, FinishY=100);} +.horz_vertshadow { -moz-opacity:0.4; background-repeat:no-repeat; background-image:url(img/vshadow.gif);filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=40, FinishOpacity=0, Style=0, StartX=0, FinishX=100, StartY=0, FinishY=100);} +.horz_cornshadow { -moz-opacity:0.4; background-repeat:no-repeat; background-image:url(img/cornershadow.gif);filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=40, FinishOpacity=0, Style=0, StartX=0, FinishX=100, StartY=0, FinishY=100);} + + +/* Vertical (drop-down) menus */ + +.nlsmenu { + background-color: #105596; + z-index:1; + width: auto !important; + color: #ffffff; + padding: 2px 2px; + border: 1px solid #6291BB; +} + +.nlsitemcontainer { + height:25px; + padding:2px 10px 2px 10px; + border: 1px solid #6291BB; +} +.nlsiconcell {width:22px;} +.nlssubmenucell{width:20px;} +.nlsitem { + font-size:8pt; + color: #ffffff; + padding:0px 7px; +} + +.nlsitemcontainerover { + height:25px; + border: 1px solid #6291BB; + background:url(../img/top_menu_select.gif); + padding: 2px 10px 2px 10px; +} +.nlsiconcellover {width:22px;} +.nlssubmenucellover {width:20px;} +.nlsitemover { + font-size:8pt; + color:#ffffff; + padding:0px 7px; +} + +.nlsitemdisable { + font-size:8pt; + color:#999999; + padding:2px 5px 2px 5px; +} + +.nlsseparatorcontainer {padding-left:28px;} + +.nlsseparator { + height:5px; + background-image:url(img/separator.gif); + background-position:center center; + background-repeat:repeat-x; +} + +.mtopleft {height:0px; width:0px;} +.mtopright {height:0px; width:0px;} +.mbottomleft {width:0px; height:0px;} +.mbottomright {width:0px; height:0px;} +.mtop {height:0px;} +.mbottom {height:0px;} +.mleft {width:0px;} +.mright {width:0px;} + +.horzshadow { -moz-opacity:0.4;background-repeat:no-repeat; background-image:url(img/hshadow.gif);filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=40, FinishOpacity=0, Style=0, StartX=0, FinishX=100, StartY=0, FinishY=100);} +.vertshadow { -moz-opacity:0.4;background-repeat:no-repeat; background-image:url(img/vshadow.gif);filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=40, FinishOpacity=0, Style=0, StartX=0, FinishX=100, StartY=0, FinishY=100);} +.cornshadow { -moz-opacity:0.4;background-repeat:no-repeat; background-image:url(img/cornershadow.gif);filter:progid:DXImageTransform.Microsoft.Alpha( Opacity=40, FinishOpacity=0, Style=0, StartX=0, FinishX=100, StartY=0, FinishY=100);} Index: trunk/themes/default2007/platform/inc/nlsmenueffect.js =================================================================== diff -u -N --- trunk/themes/default2007/platform/inc/nlsmenueffect.js (revision 0) +++ trunk/themes/default2007/platform/inc/nlsmenueffect.js (revision 8539) @@ -0,0 +1,241 @@ +/** +* nlsmenueffect.js v.2.0.1 +* Copyright 2005-2007, addobject.com. All Rights Reserved +* Author Jack Hermanto, www.addobject.com +*/ +var nlsEffectList={ + barn:"progid:DXImageTransform.Microsoft.Barn(Duration=0.3,motion=out,orientation=vertical);", + blinds:"progid:DXImageTransform.Microsoft.Blinds(Duration=0.3,Bands=8,direction=right);", + checkerboard:"progid:DXImageTransform.Microsoft.Checkerboard(Duration=0.3,Direction=right,SquaresX=20,SquaresY=20);", + fade:"progid:DXImageTransform.Microsoft.Fade(Duration=0.3,Overlap=1.00);", + inset:"progid:DXImageTransform.Microsoft.Inset(Duration=0.3);", + iris:"progid:DXImageTransform.Microsoft.Iris(Duration=0.3,irisstyle=CIRCLE,motion=in);", + pixelate:"progid:DXImageTransform.Microsoft.Pixelate(Duration=0.3,MaxSquare=10);", + radialwipe:"progid:DXImageTransform.Microsoft.RadialWipe(Duration=0.3,wipestyle=WEDGE)", + randombars:"progid:DXImageTransform.Microsoft.RandomBars(Duration=0.3,Orientation=horizontal);", + randomdissolve:"progid:DXImageTransform.Microsoft.RandomDissolve(duration=0.3);", + slide:"progid:DXImageTransform.Microsoft.Slide(Duration=0.3,slidestyle=HIDE,Bands=5);", + spiral:"progid:DXImageTransform.Microsoft.Spiral(Duration=0.3,GridSizeX=64,GridSizeY=64);", + stretch:"progid:DXImageTransform.Microsoft.Stretch(Duration=0.3,stretchstyle=HIDE);", + strips:"progid:DXImageTransform.Microsoft.Strips(Duration=0.3,motion=rightdown);", + wheel:"progid:DXImageTransform.Microsoft.Wheel(Duration=0.3,spokes=10);", + gradienwipe:"progid:DXImageTransform.Microsoft.GradientWipe(Duration=0.3,GradientSize=0.75,wipestyle=0,motion=forward);", + zigzag:"progid:DXImageTransform.Microsoft.Zigzag(Duration=0.3,GridSizeX=8,GridSizeY=8);", + itemfade:"progid:DXImageTransform.Microsoft.Fade(Duration=0.2,Overlap=0.75);", + itemdissolve:"progid:DXImageTransform.Microsoft.RandomDissolve(duration=0.3);", + aoslide:"Duration:2" +}; + +function NlsMenuEffect(mId, effName) { + this.mId=mId; + this.elm=null; + this.effName=effName; + this.isOut=false; + this.prop=new Object(); + this.onShow=function() {}; + this.onHide=function() {}; + + this.start=_defStart; + this.run=_defRun; + + if (effName=="aoslide") { + this.start=_slideStart; + this.run=_slideRun; + } + return this; +}; + +/*default effect*/ +var _fadeTm=null; +var _fadesEff=new Object(); + +function _defStart(isOut) { + var mn=NlsMenu.$GE(this.mId); + mn.childNodes[0].style.position=""; + nlsMenu[this.mId].rt.ready=true; + this.elm=NlsMenu.$GE("effwin_"+this.mId); + if (nls_isIE) { + this.elm.style.filter=nlsEffectList[this.effName]; + if (this.elm.filters.length>0) this.elm.filters[0].apply(); + } else { + this.elm=this.elm.parentNode; + this.isOut=(isOut==true); + if (!this.prop["init"]) { + this.elm.style.MozOpacity=(isOut?1:0); + this.elm.style.opacity=(isOut?1:0); + } + this.prop["init"]=true; + this.prop["dur"]=20; + this.prop["rng"]=100; + this.prop["spd"]=20; + } +}; + +function _defRun() { + if (nls_isIE) { + if (this.elm.filters.length>0) this.elm.filters[0].play(); + } else { + var me=this; + if (this.elm.style.MozOpacity) this.prop["opa"]="MozOpacity"; else this.prop["opa"]="opacity"; + var p=new Object(); + p.x1=this.elm.style[this.prop["opa"]]*this.prop["rng"]; + if (this.isOut) { p.x2=0; } else { p.x2=this.prop["rng"]-1; } + _fc_fade(p); + this.prop["pt"]=p; + this.prop["sd"]=0; + + _fadesEff[this.mId]=this; + if (!_fadeTm) _fadeTm=setInterval(function() {_fadeAnimate();}, this.prop["spd"]); + } +}; + +function _fadeAnimate() { + var b=true; + for (var it in _fadesEff) { + var eff=_fadesEff[it]; + var p=eff.prop["pt"]; + if (eff.prop["sd"]0) this.elm.filters[0].apply(); +}; + +NlsMenuItemEffect.prototype.start=function() { + if(!nls_isIE) return; + if (this.elm.filters.length>0) this.elm.filters[0].play(); +}; +/*end*/ + +/*NlsMenuBorder class*/ +function NlsMenuBorder(bTop, bBottom, bLeft, bRight) { + var border = ""; + var sTop="", sBottom="", sLeft="", sRight=""; + if (bTop) sTop=""; + if (bBottom) sBottom=""; + if (bLeft) { + sLeft=""; + if (bTop) sTop=""+sTop; + if (bBottom) sBottom=""+sBottom; + } + if (bRight) { + sRight=""; + if (bTop) sTop+=""; + if (bBottom) sBottom+=""; + } + if (sTop!="") sTop=""+sTop+""; + if (sBottom!="") sBottom=""+sBottom+""; + border=border+sTop+""+sLeft+""+sRight+""+sBottom; + border+="
  
@menu
"; + + this.applyBorder = function (smenu, stlprf) { + var b=border.replace(/@stlprf_/gi, stlprf); + return b.replace(/@menu/gi, smenu); + }; + + return this; +}; \ No newline at end of file Index: trunk/themes/default2007/platform/elements/menu.tpl =================================================================== diff -u -N -r8526 -r8539 --- trunk/themes/default2007/platform/elements/menu.tpl (.../menu.tpl) (revision 8526) +++ trunk/themes/default2007/platform/elements/menu.tpl (.../menu.tpl) (revision 8539) @@ -17,7 +17,7 @@ - + - + --> + + + + + + + + +
Loading menu...
+ + Index: trunk/themes/default2007/platform/inc/nlsmenu.js =================================================================== diff -u -N --- trunk/themes/default2007/platform/inc/nlsmenu.js (revision 0) +++ trunk/themes/default2007/platform/inc/nlsmenu.js (revision 8539) @@ -0,0 +1,844 @@ +/** +* nlsmenu.js v.2.0 +* Copyright 2005-2007, addobject.com. All Rights Reserved +* Author Jack Hermanto, www.addobject.com +*/ +var nlsMenu = new Object(); +var nlsMenuMgr = new Object(); +var nlsWinElmt = []; + +var ag0=window.navigator.userAgent; +var nls_isIE = (ag0.indexOf("MSIE") >=0); +var nls_isIE5 = (ag0.indexOf("MSIE 5.0") >=0); +var nls_isSafari = (ag0.indexOf("Safari") >=0); +var nls_isOpera = (ag0.indexOf("Opera") >=0); +if (nls_isOpera) {nls_isIE=false; nls_isIE5=false;}; + +function NlsMenuManager(mgr) { + this.mgrId = mgr; + this.menus = new Object(); + this.menubar = null; + this.timeout = 1000; + this.flowOverFormElement = false; + this.assocMenuMgr = []; + this.defaultEffect=null; + this.icPath=""; + this.memorizeSel=false; + this.rt=new Object(); + + this.tmId = null; + this.setTimeout=function(a, t) { this.tmId = window.setTimeout(a, t); }; + this.clearTimeout=function() { if (this.tmId!=null) { window.clearTimeout(this.tmId); this.tmId=null;}}; + + nlsMenuMgr[mgr] = this; + if(nls_isIE)window.attachEvent("onload", function(){nlsMenuMgr[mgr].init();}); + + return this; +}; + +var NlsMnMgr = NlsMenuManager.prototype; +NlsMnMgr.createMenu = function(mId) { + var m=new NlsMenu(mId) + m.mgr=this; m.mgrId=this.mgrId; m.icPath=this.icPath; + m.useEffect(this.defaultEffect); + if (this.design) { m.$menuItemClick = NlsMenu.$dsItemClick; } + this.menus[mId]=m; + return m; +}; + +NlsMnMgr.createMenubar = function (mbarId) { + if (this.menubar) alert("Menubar already exists!"); + var m=new NlsMenubar(mbarId); + m.mgr=this; m.mgrId=this.mgrId; m.icPath=this.icPath; + if (this.design) { m.$menuItemClick = NlsMenu.$dsItemClick; } + this.menubar=m; + return m; +}; + +NlsMnMgr.renderMenus = function (plc) { + if (plc && plc!="") { + var d=NlsMenu.$GE(plc); var s=""; + for (it in this.menus) { s+=this.menus[it].renderMenu(); } + d.innerHTML=s; + } else { + for (it in this.menus) { document.write(this.menus[it].renderMenu()); } + } +}; + +NlsMnMgr.renderMenubar = function (plc) { + if (this.menubar) { + if (plc && plc!="") { + NlsMenu.$GE(plc).innerHTML=this.menubar.renderMenubar(); + } else { + document.write(this.menubar.renderMenubar()); + } + } + if(this.memorizeSel) this.loadPath(); +}; + +NlsMnMgr.hideMenus = function () { + for (var it in this.menus) {if (this.menus[it].rt.active) this.menus[it].hideMenu();} + if (this.menubar) this.menubar.hideMenu(); +}; + +NlsMnMgr.addAssocMenuMgr = function(frm, mgrId) { + this.assocMenuMgr[this.assocMenuMgr.length] = [frm, mgrId]; +}; + +NlsMnMgr.getMenu= function(mId) { return this.menus[mId]; }; + +NlsMnMgr.init=function() { + if(this.menubar)this.menubar.init(); +} + +function listAllWinElmt() { + nlsWinElmt = []; + var arrWinEl = document.getElementsByTagName("SELECT"); + var elm; var tmp; var x; var y; + for(var i=0; i" + + "" + + ""); + }; + + this.toString=function() {return "NlsMenuSeparator";}; +}; + +function NlsCustomMenuItem(cst) { + this.intKey = ""; + this.cstMenu = (cst?cst:" "); + this.toString=function() {return "NlsCustomMenuItem";}; +}; + +function NlsMenu(mId) { + /*private*/ + this.lsItm=null; + this.mgrId = ""; + this.mgr=null; + this.winElmt=null; + this.container=null; + this.customBorder=null; + this.shadow=new NlsMenuShadow("none", "5px", mId); + this.count=0; + this.isMenubar=false; + this.effect=null; + this.srItems=[]; + + this.rt={ready:true,active:false}; + + /*public*/ + this.mId = mId; + this.items = new Object(); + this.stlprf=""; + this.subMenuIc=null; + this.target="_self"; + this.icPath=""; + this.itemSpc=""; + this.stretchItem=true; + + this.selection=false; + + this.showIcon=false; + this.showSubIcon=true; + + this.absWidth=""; + this.orient="V"; + + this.defItmEff=null; + this.defPos=[0,0]; + + this.maxItemCol=100; + this.zIndex = 100; + + this.wnd = window; + nlsMenu[mId] = this; + return this; +}; + +var NLSMENU=NlsMenu.prototype; + +NLSMENU.addItem = function(key, capt, url, ico, enb, xtra, subId, title) { + var intKey = this.mId+"_"+key; + var it = new NlsMenuItem(key, capt, url, ico, enb, xtra, subId, title); + it.intKey = intKey; + it.mId=this.mId; + this.items[intKey]=it; + this.srItems[this.srItems.length]=it; + if (this.defItmEff!=null && typeof(NlsMenuItemEffect) != "undefined") { it.useItemEffect(this.defItmEff); } + this.count++; + return it; +}; + +NLSMENU.addSeparator = function(separator) { + var intKey = "sep_"+this.count; + var it = (separator ? separator : new NlsMenuSeparator()); + it.stlprf = this.stlprf; + it.intKey = intKey; + this.items[intKey] = it; + this.srItems[this.srItems.length]=it; + this.count++; + return it; +}; + +NLSMENU.addSubmenu = function(key, subId, crsFrame, subFrame, subPos, subPosAdj, subDir) { + var intKey = this.mId+"_"+key; + var it = this.items[intKey]; + it.subMenuId=subId; + it.subFrame=(subFrame?subFrame:null); + it.crsFrame=(crsFrame?crsFrame:false); + it.subPos = (subPos?subPos:[null,null]); + it.subPosAdj = (subPosAdj?subPosAdj:[0,0]); + it.subDir = (subDir?subDir:["right","down"]); + return it; +}; + +NLSMENU.addCustomMenu = function (custom) { + var intKey = "cst_"+this.count; + var it = new NlsCustomMenuItem(custom); + it.intKey = intKey; + this.items[intKey] = it; + this.srItems[this.srItems.length]=it; + this.count++; + return it; +}; + +NLSMENU.getItemById = function (key) { + return this.items[this.mId+"_"+key]; +}; + +NLSMENU.setItemStyle = function (key, stlprf) { + var intKey = this.mId+"_"+key; + var mnItem = this.items[intKey]; + mnItem.stlprf=stlprf; +}; + +NLSMENU.setItemText = function (key, tx) { + var intKey = this.mId+"_"+key; + var mnItem = this.items[intKey]; + mnItem.capt=tx; + var oD=NlsMenu.$GE(intKey+"x2"); + if (oD) oD.innerHTML=tx; +} + +NLSMENU.enableItem = function (key, b) { + var it = this.items[this.mId+"_"+key] ; + it.enable=b; + setMnStyle(NlsMenu.$GE(it.intKey), (b?(it.selected?"S":"N"):"D"), NlsMenu.getPrf(it, this)); + setMnIcon(this, it, "N"); +}; + +NLSMENU.dropShadow = function (pos, offset) { + if (this.shadow) { this.shadow.pos=pos; this.shadow.offset=(offset?offset:"5px"); } else + { this.shadow=new NlsMenuShadow(pos, offset, this.mId); } +}; + +NLSMENU.applyBorder = function (bTop, bBottom, bLeft, bRight) { + if (!bTop && !bBottom && !bLeft && !bRight) { + this.customBorder=null; + } else { + this.customBorder=new NlsMenuBorder(bTop, bBottom, bLeft, bRight); + } +}; + +NLSMENU.useEffect = function (efN) { + if(efN!=null && efN!="") { + this.effect=new NlsMenuEffect(this.mId, efN); + } +}; + +NLSMENU.renderMenu = function() { + var scPath="", sbIc=null; + var allScs = (document.getElementsByTagName ? document.getElementsByTagName("SCRIPT"): document.scripts); + for (var i=0;i=0) { scPath=allScs[i].src.replace(/nlsmenu.js/gi, ""); } + } + if (!this.subMenuIc) { sbIc=[scPath+"img/submenu.gif", scPath+"img/submenuovr.gif"];} + else {sbIc=[this.icPath+this.subMenuIc[0]]; if(this.subMenuIc[1])sbIc[1]=this.icPath+this.subMenuIc[1];} + + var cs=""; + var tmpCnt=0, prf=this.stlprf, it=null, rt=null, menu=null; + for (var i=0; i":""); + smenu+=(""); + smenu+=(this.orient=="V"?"":""); + } else + if (it.toString()=="NlsCustomMenuItem") { + smenu+=(this.orient=="V"?"":""); + smenu+=(""); + smenu+=(this.orient=="V"?"":""); + } else { + prf=NlsMenu.getPrf(it, this); + if (this.orient=="V") { smenu+=""; } + if (this.orient=="H") { if (tmpCnt==0) smenu+=""; tmpCnt++; } + smenu+=""; + + if (this.showIcon) { + smenu+=""; + } + + smenu+=""; + if (this.showSubIcon && it.subMenuId!="") { smenu+=""; } + smenu+="
"+it.render()+"
"+it.cstMenu+"
"; + smenu+=cs+(this.stretchItem?"width='100%'":"")+" height='100%'>
"; + if(it.ico) { + if(it.ico[0]) smenu+=""; + if(it.ico[1]) smenu+=""; + if(it.ico[2]) smenu+=""; + } + smenu+=""+it.capt+""+ (it.subMenuId!=""? "" + (sbIc.length>1?"":"") :"") +"
"; + smenu+=""; + if (this.orient=="V") { smenu+=""; } + if (this.orient=="H" && tmpCnt==this.maxItemCol) { smenu+=""; tmpCnt=0; } + } + } + + if(this.orient=="H" && tmpCnt!=0 ) { + if(this.srItems.length>this.maxItemCol) + while(++tmpCnt<=this.maxItemCol) smenu+=" "; + smenu+=""; + } + smenu += ""; + smenu = cs+"class='"+this.stlprf+"nlsmenu' "+ sAbs + ">"+smenu+""; + + if (this.customBorder!=null) smenu = this.customBorder.applyBorder(smenu, this.stlprf); + smenu = this.shadow.dropShadow(smenu); + + smenu = "
" + smenu; + if (!this.isMenubar && nls_isIE && !nls_isIE5 && this.mgr.flowOverFormElement) { + smenu += ""; + } + smenu+="
"; + + if (arguments[0]=="content") return smenu; + + smenu = "
" + smenu + "
"; + + return smenu; +}; + +NLSMENU.init=function() { + var v=this.rt.vshade; if(!v) v=NlsMenu.$GE("vshade_"+this.mId); + var itm=this.rt.actmn; if(!itm) itm=NlsMenu.$GE("actmn_"+this.mId); + if(v){ + var o=itm.childNodes[0].offsetHeight-parseInt(this.shadow.offset); + if(o>=0) v.style.height=o+"px"; + } + this.rt.actmn=itm; + this.rt.vshade=v; +}; + +function NlsMenuShadow(pos, offset, mId) { + this.pos=pos; + this.offset=offset; + this.mId=mId; + + this.dropShadow = function (smenu) { + var mn = nlsMenu[this.mId]; + var cs=""; + var hshadow = "
"+cs+"width='100%' height='5px' class='"+mn.stlprf+"horzshadow'>
"; + var vshadow = ""+cs+"id='vshade_"+this.mId+"' width='5px' height='100%' class='"+mn.stlprf+"vertshadow'>"; + var menutd = ""+smenu+""; + var cornertd = ""; + var av=[vshadow.replace(/@@PAD/gi,"top"), vshadow.replace(/@@PAD/gi,"bottom")]; + var ah=[hshadow.replace(/@@PAD/gi,"left"), hshadow.replace(/@@PAD/gi,"right")]; + switch (this.pos) { + case "none": + shadow += ""+menutd+""; + break; + case "bottomright" : + shadow += ""+menutd+av[0]+"" + + ""+ah[0]+cornertd+""; + break; + case "bottomleft" : + shadow += ""+av[0]+menutd+"" + + ""+cornertd+ah[1]+""; + break; + case "topleft" : + shadow += ""+cornertd+ah[1]+"" + + ""+av[1]+menutd+""; + break; + case "topright" : + shadow += ""+ah[0]+cornertd+"" + + ""+menutd+av[1]+""; + break; + } + return shadow + ""; + }; +}; + +NLSMENU.showMenu = function(x1, y1, x2, y2, mnOrient, subDir, subAdj) { + this.mgr.clearTimeout(); + + if(this.menuOnShow(this.mId)==false)return; + + var ctx = NlsMenu.$GE(this.mId); + if (!ctx) return; + ctx.style.visibility="hidden"; + ctx.style.display=""; + if(nls_isIE)this.init(); + + var w=window, d=document.body, de=document.documentElement; + var scrOffX = w.scrollX||d.scrollLeft||de.scrollLeft; + var scrOffY = w.scrollY||d.scrollTop||de.scrollTop; + var cW=w.innerWidth||d.clientWidth; + var cH=w.innerHeight||d.clientHeight; + var mW=ctx.childNodes[0].offsetWidth; + var mH=ctx.childNodes[0].offsetHeight; + var sDir=(subDir?[subDir[0], subDir[1]]:["right", "down"]); + var adjX=(subAdj?subAdj[0]:this.defPos[0]), adjY=(subAdj?subAdj[1]:this.defPos[1]); + + var dmfrm = NlsMenu.$GE(this.mId+"ifrm"); + if (dmfrm) { + var actMn = NlsMenu.$GE("actmn_"+this.mId).children[0]; + dmfrm.width = actMn.offsetWidth; + dmfrm.height = actMn.offsetHeight; + } + var mX=0,mY=0; + if (mnOrient=="V") { + if (sDir[0]=="right") { + if(x2+mW>cW){if(x1>=mW){mX=x1-mW+adjX+scrOffX;sDir[0]="left"}else{mX=cW-mW-1+scrOffX;}}else{mX=x2+scrOffX-adjX;} + } else { + if(x1-mW<0){if(x2+mWcH){if(y2>=mH){mY=y2-mH+scrOffY-adjY;sDir[1]="up"}else{mY=cH-mH-1+scrOffY;}}else{mY=y1+scrOffY+adjY;} + } else { + if(y1-mH<0){if(y1+mHcW){if(x2>=mW){mX=x2-mW+scrOffX-adjX;sDir[0]="left"}else{mX=cW-mW-1+scrOffX;}}else{mX=x1+scrOffX+adjX;} + } else { + if(x2-mW<0){if(x1+mWcH){if(y1>=mH){mY=y1-mH+scrOffY+adjY;sDir[1]="up"}else{mY=cH-mH-1+scrOffY;}}else{mY=y2+scrOffY-adjY;} + } else { + if(y1-mH<0){if(y2+mH=mX1 && oe.eX1<=mX2 && oe.eY1>=mY1 && oe.eY1<=mY2) || + (oe.eX1>=mX1 && oe.eX1<=mX2 && oe.eY2>=mY1 && oe.eY2<=mY2) || + (oe.eX2>=mX1 && oe.eX2<=mX2 && oe.eY1>=mY1 && oe.eY1<=mY2) || + (oe.eX2>=mX1 && oe.eX2<=mX2 && oe.eY2>=mY1 && oe.eY2<=mY2) || + (mX1>=oe.eX1 && mX1<=oe.eX2 && mY1>=oe.eY1 && mY1<=oe.eY2) || + (mX1>=oe.eX1 && mX1<=oe.eX2 && mY2>=oe.eY1 && mY2<=oe.eY2) || + (mX2>=oe.eX1 && mX2<=oe.eX2 && mY1>=oe.eY1 && mY1<=oe.eY2) || + (mX2>=oe.eX1 && mX2<=oe.eX2 && mY2>=oe.eY1 && mY2<=oe.eY2) || + (oe.eX1mX2 && oe.eY1>=mY1 && oe.eY1<=mY2) || + (oe.eX1mX2 && oe.eY2>=mY1 && oe.eY2<=mY2) + ) { + if (oe.e.style.visibility!="hidden") { + oe.e.style.visibility="hidden"; + if (mn.winElmt==null) mn.winElmt=[]; + mn.winElmt[mn.winElmt.length]=oe.e; + } + } + } +}; + +NLSMENU.showMenuAbs = function(x, y) { + var ctx = NlsMenu.$GE(this.mId); + ctx.style.top=y+"px"; ctx.style.left=x+"px"; + ctx.style.display=""; + this.rt.active=true; +}; + +NLSMENU.hideMenu = function() { + var ctx = NlsMenu.$GE(this.mId); + if (!ctx) return; + if (!this.isMenubar) { + this.rt.active=false; + if (this.effect) { + this.effect.start(true); + if ((nls_isIE && this.effect.effName!="aoslide") || nls_isOpera && this.effect.effName!="aoslide") {ctx.style.visibility="hidden";} else { this.effect.onHide=function() {ctx.style.visibility="hidden";}; }; + this.effect.run(); + } else { ctx.style.visibility="hidden"; } + + this.menuOnHide(this.mId); + } else { + this.isMenuOpened = false; + } + + if (this.lsItm!=null) { + var it=this.items[this.lsItm.id]; + if(it.state!=2 && !it.selected) { + setMnStyle(this.lsItm, (it.enable?"N":"D"), NlsMenu.getPrf(it, this)); + setMnIcon(this, it, "N"); + } + this.lsItm=null; + } + if (this.winElmt!=null && this.winElmt.length>0) { + for (i=0;i 0) { + for (var i=0;i1) { + var k=mnItm.intKey; + var c=NlsMenu.$GE("ic_"+k), o=NlsMenu.$GE("icovr_"+k), d=NlsMenu.$GE("icdis_"+k); + + c.style.display=(tf=="N"||(tf=="D" && !d)?"":"none"); + o.style.display=(tf=="O"?"":"none"); + if(d) d.style.display=(tf=="D"?"":"none"); + } + + if (mn.showSubIcon && mnItm.subMenuId!="") { + var ic=NlsMenu.$GE("subicovr_"+mnItm.intKey); + if(ic){ + ic.style.display=(tf=="O"?"":"none"); + ic=NlsMenu.$GE("subic_"+mnItm.intKey); + if(ic)ic.style.display=(tf=="N"||tf=="D"?"":"none"); + } + } +}; + +function setMnStyle(it, s, prefix) { + var suff=(s=="O"?"over":(s=="S"?"sel":"")); + it.className=prefix+"nlsitemcontainer"+suff; + var r = it.childNodes[0].rows[0], rc=null; + for (var i=0; i 0) { + for (var i=0; i 0) { + for (var i=0; i - + img/menu_active_border.gif" width="1" height="37" alt=""/>
- + "> "> - + img/menu_active_border.gif" width="1" height="37" alt=""/>
- + img/s.gif" width="1" height="37" alt=""/>
"> - + "> img/s.gif" width="1" height="37" alt=""/>
- +
- +
@@ -77,18 +77,18 @@ img/s.gif" width="13" height="1" alt=""/>
- + img/s.gif" width="13" height="1" alt=""/>
- + img/s.gif" width="13" height="1" alt=""/>
- +
\ No newline at end of file Index: trunk/themes/default2007/platform/img/arrow_white.gif =================================================================== diff -u -N Binary files differ Index: trunk/themes/default2007/platform/inc/styles.css =================================================================== diff -u -N -r8518 -r8539 --- trunk/themes/default2007/platform/inc/styles.css (.../styles.css) (revision 8518) +++ trunk/themes/default2007/platform/inc/styles.css (.../styles.css) (revision 8539) @@ -58,6 +58,7 @@ .top-menu { background:url(../img/menu_background.gif) top repeat-x #1865ac; + width: 100%; } .languages-paddings @@ -245,66 +246,69 @@ } +/* Top Menu */ .menu-top-active-icon - { +{ background:url(../img/top_menu_select.gif); height:37px; padding:0px 5px 0px 13px; - } +} .menu-top-active-text - { +{ background:url(../img/top_menu_select.gif); height:37px; padding:0px 13px 0px 3px; white-space:nowrap; - } +} - .menu-top-noactive-icon - { +{ height:37px; padding:0px 5px 0px 13px; white-space:nowrap - } +} .menu-top-noactive-text - { +{ height:37px; padding:0px 13px 0px 3px; white-space:nowrap - } +} .menu-top-active-text A - { +{ font-size:11px; color:#FFFFFF; text-decoration:none; - } +} .menu-top-active-text A:hover { font-size:11px; color: #CCCCCC; text-decoration:none; - } +} .menu-top-noactive-text A { font-size:11px; color:#FFFFFF; text-decoration:none; - } +} .menu-top-noactive-text A:hover { font-size:11px; color: #CCCCCC; text-decoration:none; - } +} +/* /Top Menu */ + + .footer-blue { background:url(../img/footer_blue.gif) top repeat-x; Index: trunk/themes/default2007/platform/inc/nlsmenuext_dyn.js =================================================================== diff -u -N --- trunk/themes/default2007/platform/inc/nlsmenuext_dyn.js (revision 0) +++ trunk/themes/default2007/platform/inc/nlsmenuext_dyn.js (revision 8539) @@ -0,0 +1,153 @@ +/** +* nlsmenuext_dyn.js v.1.0 +* Copyright 2005-2007, addobject.com. All Rights Reserved +* Author Jack Hermanto, www.addobject.com +*/ +NLSMENU.setItemVisible=function(key, v) { + var it=this.getItemById(key); + var oIt=NlsMenu.$GE(it.intKey); + if(oIt) { + if (this.orient=="V") { oIt=oIt.parentNode; } + oIt.style.display=(v?"":"none"); + } + nlsMenuMgr[this.mgrId].hideMenus(); + var it=this.getItemById(key); + it.visible=v; +}; + +NLSMENU.setItemState=function(itId, s) { + var it=this.items[itId], lit=null; + if(it.group) { + for (var l in this.items) { + lit=this.items[l]; + if(lit.group==it.group && lit.state==2) { + setMnStyle(NlsMenu.$GE(lit.intKey), (lit.enable ? "N" : "D"), NlsMenu.getPrf(lit, this)); + setMnIcon(this, lit, "N"); + lit.state=1; + } + } + } + var oIt=NlsMenu.$GE(itId); + setMnStyle(oIt, (it.enable ? (s==1?"N":"S") : "D"), NlsMenu.getPrf(it, this)); + setMnIcon(this, it, "N"); + it.state=s; +}; + +NLSMENU.setSelection=function(itId, s) { + var prf=""; + var it=this.items[this.rt.lastSel]; + if(it){ + prf=it.stlprf; if(prf=="")prf=this.stlprf; + setMnStyle(NlsMenu.$GE(it.intKey), (it.enable ?"N":"D"), prf); + setMnIcon(this, it, "N"); + it.selected=false; + } + + it=this.items[itId]; + prf=it.stlprf; if(prf=="")prf=this.stlprf; + setMnStyle(NlsMenu.$GE(itId), (it.enable ?"S":"D"), prf); + setMnIcon(this, it, "O"); + this.rt.lastSel=itId; + it.selected=true; +}; + +NlsMnMgr.savePath=function(vl) { + NlsMenuManager.$setCookie(this.mgrId+"_path", String(vl)); +}; + +NlsMnMgr.loadPath=function() { + var p=NlsMenuManager.$getCookie(this.mgrId+"_path"); + if(p && p!="") { + p=p.split("_"); + this.selectPath(p[0], p[1]); + } + +} + +NlsMnMgr.selectPath=function(mId, id) { + this.unselectPath(); + var mn=nlsMenu[mId], it=mn.items[mId+"_"+id],prf="",pr=""; + while(mn && it) { + prf=it.stlprf; if(prf=="")prf=mn.stlprf; + setMnStyle(NlsMenu.$GE(it.intKey), (it.enable ?"S":"D"), prf); + setMnIcon(mn, it, "O"); + mn.rt.lastSel=it.intKey; + it.selected=true; + + pr=mn.prIt; + if(pr) { + mn=nlsMenu[pr.split("_")[0]]; + it=mn.items[pr]; + } else {mn=null; it=null} + } +}; + +NlsMnMgr.unselectPath=function() { + var mgr=this,prf="",it=null, mns=[mgr.menubar]; + for(var i in mgr.menus) { mns[mns.length]=mgr.menus[i]; } + for(var i=0;i=ovr && i1?unescape(c[1]):""); } + } + } + return ""; +}; + +NlsMenuManager.$removeCookie=function(key) { + NlsMenuManager.$setCookie(key, "-1", "Fri, 31 Dec 1999 23:59:59 GMT;"); +} + + + Index: trunk/themes/default2007/platform/inc/nlsmenuext_xml.js =================================================================== diff -u -N --- trunk/themes/default2007/platform/inc/nlsmenuext_xml.js (revision 0) +++ trunk/themes/default2007/platform/inc/nlsmenuext_xml.js (revision 8539) @@ -0,0 +1,222 @@ +/** +* nlsmenuext_xml.js v.1.0 +* Copyright 2005-2007, addobject.com. All Rights Reserved +* Author Jack Hermanto, www.addobject.com +*/ +var $nls_ieXML=["MSXML2.DOMDocument.5.0", "MSXML2.DOMDocument.4.0", "MSXML2.DOMDocument.3.0", "MSXML2.DOMDocument", "Microsoft.XmlDom"]; + +function NlsMenuUtil() {} +var NLSMNUTIL=NlsMenuUtil.prototype; + +function $aonvl(v, c) { if(v)return v; else return c; }; +function $aonevl(v, c) { if(!v || v=="")return c; else return v; }; + +NlsMenuUtil.createFromXML=function(xml) { + var rt=xml.documentElement; + var mgr=new NlsMenuManager(rt.getAttribute("id")); + mgr.flowOverFormElement=$aonevl(rt.getAttribute("flowoverformelement"), false); + mgr.defaultEffect=$aonevl(rt.getAttribute("defaulteffect"), null); + mgr.icPath=$aonvl(rt.getAttribute("icpath"), ""); + mgr.memorizeSel=$aonevl(rt.getAttribute("memorizesel"), false); + + var dm=rt.getElementsByTagName("menubar")[0]; + NlsMenuUtil.createMenu(dm, mgr); + + var mns=rt.getElementsByTagName("menus")[0]; + if(mns){ + for (var i=0;i + + + + + " + url="" + ico="['img/']" + enb="true" title="" + subid="sub" + suburl="" >]]> + + + + + + " ico="['img/menu_home.gif']" enb="true" title=""> + + + + \ No newline at end of file