home *** CD-ROM | disk | FTP | other *** search
- /************
- Find frame
- *************/
- function findFrame(frameName){
- obj=top; var frameObj=0;
- for(i=0;i<obj.frames.length;i++){
- if(obj.frames[i].name==frameName){frameObj=obj.frames[i]; break;}; ln=obj.frames[i].frames.length
- for(j=0;j<ln;j++){
- if(obj.frames[i].frames[j].name==frameName){frameObj=obj.frames[i].frames[j]; break}; ln2=obj.frames[i].frames[j].frames.length
- for(a=0;a<ln2;a++){
- if(obj.frames[i].frames[j].frames[a].name==frameName){frameObj=obj.frames[i].frames[j].frames[a]; break}
- }
- }
- }return frameObj
- }
- /************
- Checking for frame
- *************/
- function cm_checkFrame(num){
- var fr; if(num==10){debug('Frame: '+this.frame+' doesn\'t exist - Value: '+fr + " - Could not build menus."); return}
- if(!top.frames[this.frame]) fr=findFrame(this.frame); else fr=top.frames[this.frame]
- if(!fr){num++; setTimeout(this.name+".checkFrame("+num+")",500)
- }else{ this.win=fr
- if(bw.ns4){
- top.frames.captureEvents(Event.UNLOAD); top.frames.captureEvents(Event.LOAD); top.frames.onunload=cm_unloaded;
- top.frames.onload = cm_checkLoaded; setTimeout("cm_checkLoaded(0,1)",1000)
- }else if((bw.ie||bw.ns6)) setTimeout("cm_checkLoaded()",200)
- }
- }
-
-
- /************
- Checkloaded for the frames version
- *************/
- function cm_checkLoaded(ev,ns){
- coolFName=eval(coolFName)
- var ok=0
- if(document.layers){
- if(ns){coolFName.refresh(); coolFName.nsload=1; ok=1; coolFrameError=0
- }else if(ev.target.name==coolFName.frame&&!coolFName.nsload){coolFName.refresh(); ok=1; coolFrameError=0; routeEvent(ev)}
- }else if(bw.ie){
- if (coolFName.win.document.readyState == "complete"){
- coolFName.win.document.body.insertAdjacentHTML("beforeEnd",coolFName.frstr)
- coolFName.win.document.body.onunload=cm_unloaded; coolFName.refresh(); ok=1; coolFrameError=0
- }else setTimeout("cm_checkLoaded()",200)
- }else if(bw.ns6){
- if(coolFName.win.document){
- if(coolFName.win.document.body){coolFName.win.addEventListener("unload", cm_unloaded, true); coolFName.refresh(); ok=1; coolFrameError=0}
- else setTimeout("cm_checkLoaded()",200)
- }else setTimeout("cm_checkLoaded()",200)
- }
- }
- function cm_unloaded(ev){coolFName=eval(coolFName); if(!coolFName) return; if(document.layers && ev.target.name!=coolFName.frame) return; else coolFName.nsload=0; coolFName.loaded=0; if(!document.layers) setTimeout("cm_checkLoaded()",200)}
-
- coolFrameError=0//Trapping external pages in frame error!
- function cm_check_error(e){e=e.toLowerCase(); if(e.indexOf("access")>-1||e.indexOf("permission")>-1){coolFrameError=1; return true;}else return false}
-
-
- //Functions
- makeCoolMenu.prototype.checkFrame=cm_checkFrame;
-