// (c) SW-Tools 2000 ico/menu.js

var swtools   ="sw-tools";
var swtoolsdk ="http://www.sw-tools.dk";
//var swtools   ="80.167.40.178"
//var swtoolsdk ="http://"+swtools;
var swtoolscom="http://www.swtools.com";

function saml(x,sep)    // Inverse split
{
    var j,r;
    for (j=0,r=""; j<x.length; j++) r+=x[j]+((j<x.length-1)?sep:"");
    return(r);
}

function me(i)     // When menupoint (i) selected
{
    var d,m,n,level,o,s,j,k,p,ref,target,userid,pictur,subsys,men,mref;
    if (typeof(parent.glomen)=="undefined")
    {   alert("You cannot use RELOAD on this page in Explorer.");
        p=""+self.location;
        if (p.indexOf("/127.0.0.1/")<=0) top.location=swtoolsdk +"/index.htm";
        else                             top.location=swtoolscom+"/index.htm";
        return;
    }
    men=parent.glomen, d=parent.glod;
    m=men[i].split(";");                // No;Name;Icon;Href;Uid;Target;Pic
    setwhdr(0,m[1],'');
    n=m[0].split(".");                  // 1.1.
    level=n.length-1;                   // Level number
    o=n[level];                         //     - 
    if (o<"0")                          // 1.1. Menu Point, 1.1.+ Open
    {   o=(o=="+") ? "" : "+";          // Open/Closeit
        n[level]=o;                     // Update menu table
        m[0]=saml(n,".");
        men[i]=saml(m,";");
        parent.glopic=pictur=(m[6]!=null && m[6].length) ? m[6] : "";
        if (pictur>"")
        {
            mref = xvers(pictur);
            if(mref) parent.f2.location.href=mref;
        }
        mendog(d,men);
        if (m[3]==null || m[3]=="") return;
    }

    for (j=i-1; j>0; j--)              // Back up to UID=...
        for (p=men[j].split(";"),k=4; k<p.length; k++)
            if ((k>=m.length || m[k]=="") && k!=6) m[k]=p[k];
    
    parent.glouid=userid=(m[4]!=null && m[4].length) ? m[4] : "";
    parent.glotar=target=(m[5]!=null && m[5].length) ? m[5] : "";  
    parent.glopic=pictur=(m[6]!=null && m[6].length) ? m[6] : "";
    parent.glosys=subsys="";

    if (m[3]!=null && m[3].length) 
    {   ref=m[3];                                    // Href given, just useit
        if ((ref>="0" && ref<":") || ref=='-')       // 0-9/- Subsystem open
        {   parent.glosys=subsys=s=ref;
            s=parseInt(s,10); s=s<10 ? "000"+s : s<100 ? "00"+s : s<1000 ? "0"+s : s;
            ref ="/cgi-bin/Rap00132.exe?TRIO=998%20-s0;;;;;"+subsys+"%20";
            ref+="-uid="+userid+"&TrioStuck=256";
            ref+="&fix=/menu/"+userid+"/"+s+"0000.htm";
        }
    } else
    {   parent.glosys=subsys=s=level>0 ? n[level-1] : "";           
        o=parseInt(o,10); o=o<10 ? "000"+o : o<100 ? "00"+o : o<1000 ? "0"+o : o;
        s=parseInt(s,10); s=s<10 ? "000"+s : s<100 ? "00"+s : s<1000 ? "0"+s : s;
        if (typeof(parent.glodiq)!="undefined" && parent.glodiq)
        {   ref ="/cgi-bin/iqwin32.exe?"
            ref ="/ico/iq.htm?"
            ref+="TRIO="+s+o+"%20-uid="+userid;
            //ref+="&opt=4&hei=200&wid=400";
        } else
        {   ref ="/cgi-bin/Rap00132.exe?"
            ref+="TRIO=999%20-s0;;;"+o+";"+o+";0%20";
            ref+="-uid="+userid;
            if (subsys>"0") ref+="&TrioSystem="+subsys;
            ref+="&TrioStuck=256";
            ref+="&fix=/menu/"+userid+"/"+s+o+".htm";
        }
        parent.gloref=ref;                           // Store for startlog open
    }

    if (ref.indexOf(".exe")>0) if ((""+top.location).indexOf(swtools)<=0) return(top.location=swtoolsdk+"/login.htm?"+parent.glolan);
    //alert(ref+"Loc:"+target);
    if (target=="f1") { mref = xvers(ref); if(mref) parent.f1.location.href=mref; }
    else              { mref = xvers(ref); if(mref) parent.f2.location.href=mref; }
}

function mendog(vin,menu)   // Display menu men in document d
{
    var i,j,level,lastlevel,toplevel,m,n,o,txt,d,men,maxlevel,low,gif,num;
    var mopen=new Array("+");
    maxlevel=10,gif="";

    men=parent.glomen=menu, parent.glod=d=vin;
    if (typeof(parent.xtra)=="undefined" || parent.xtra==null) parent.xtra=kok("Xtra");
    d.open("text/html","replace");
    txt="<HTML>"+men[0];
    if (parent.xtra>="1") 
       txt+="<A HREF=\"javascript:parent.menix(\'"+get(3,men[men.length-2])+"\')\"><IMG SRC=\"http://www.swtools.com/ico/reset.jpg\" BORDER=0></A>"
    txt+="<TABLE BORDER=0 WIDTH=100% leftmargin=0 topmargin=0><TR>";
    for (i=1; i<=maxlevel; i++)
         txt+="<TD WIDTH=\""+(100/maxlevel)+"%\"></TD>";
    d.writeln(txt+"</TR>");

    for (i=1,lastlevel=toplevel=0; i<men.length-1; i++)
    {   
        m=men[i].split(";");                // No;Name;Icon;Href;Uid;Target;Pic
//        if (m[2] && m[2].charAt(0)=="*") gif=m[2].substring(1), m[2]="";
        if(m[1].charAt(0)=="-") /* Seperator line */
        {
          d.writeln("<tr><td colspan="+maxlevel+"><br><font color=#ffffff>»» "+m[1].substring(1)+"</font><br><br></td></tr>");
          continue;
        }
        if (m[0]>="A")                      // sys...
        {   parent.glolan=m[1], parent.glogrp=m[3];
            parent.gloedi=m.length>=4 ? m[4] : "";
            parent.glodiq=m.length>=5 ? m[5] : "";
            continue;
        }
        n=m[0].split(".");                  // 1.1.
        if ((level=n.length-1)<0) continue;

        low=((o=n[level])>="0") ? 1 : 0;     // lowest level
        if (low)
        {   if (i==1) mopen[level]="+",toplevel=lastlevel=level; // 1.1.1 --> Open by default
            level++;                        //     x Lowest menu level
        }
        if (mopen[level-1]!='+') continue;
        if (!low) 
            for (mopen[level]=o,j=level+1; j<=lastlevel; j++) mopen[j]=0; // Flag this level open, rest closed
        lastlevel=level;

        num=0;
        if (gif!="") m[2]="", m[1]="";
        if (m[1] && m[1].charAt(0)>="0" && m[1].charAt(0)<="9" && (j=m[1].indexOf(" "))>0)
            num=parseInt(m[1]), m[1]=m[1].substring(j+1);
        txt="<TR>"+(level>1 ? "<TD COLSPAN="+(level<=maxlevel ? level-1 : maxlevel-1)+"></TD>" : "")+
            (num ? "<TD>"+num+"</TD>" : "") +
            "<TD BGCOLOR=#73B6D6 COLSPAN="+(maxlevel-level+1>0 ? (maxlevel-level+1) : 1)+">";
        txt+="&nbsp;<A HREF=\"javascript:parent.me("+i+")\">";
        if (m.length>2 && m[2].length) txt+="<IMG SRC=\"http://www.swtools.com/ico/"+m[2]+".gif\" border=0>";
        if (gif!="") o=""+(100000+i),
           txt+="<IMG SRC=\""+xvers(gif+o.substring(1)+".gif")+"\" border=0 HEIGHT=17 WIDTH=166>";

        m[1]=m[1].replace(/\&/g,"&amp;");                    // & -> &amp;
        m[1]=m[1].replace(/\"/g,"&quot;");                   // " -> &quot;
        m[1]=m[1].replace(/\</g,"&lt;");                     // < -> &lt;
        m[1]=m[1].replace(/\>/g,"&gt;");                     // > -> &gt:
        m[1]=m[1].replace(/\ /g,"&nbsp;");                   // _ -> &nbsp;
        d.writeln(txt+"<font size=\"2\" color=#FFFFFF><nobr>"+m[1]+"</nobr></font></A></TD></TR>");
    }

    d.writeln("</TABLE>"+men[men.length-1]+"</HTML>");
    d.close();
}

function repsel(userid,subsys,pic,rep)        // Load menu by start index.htm
{   
    var ref,s;
    if (userid==null || userid=="") userid=parent.glouid;
    if (subsys==null || subsys=="") subsys=parent.glosys;
    if (pic   ==null || pic   =="") pic   =parent.glopic;
    if (rep   ==null || rep   =="") rep   =998;
    ref ="/cgi-bin/Rap00132.exe?TRIO="+rep+"%20-s"
    ref+=(rep==998 || rep==996) ? "0" : "2";           // GIF printer
    if (subsys!=null && subsys>"") ref+=";;;;;"+subsys, s=subsys; else s="0";
    ref+="%20-uid="+userid+"&TrioStuck=256";

    s=parseInt(s,10); s=s<10 ? "000"+s : s<100 ? "00"+s : s<1000 ? "0"+s : s;
         if (rep==998) ref+="&fix=/menu/"+userid+"/"+s+"0000.htm";
    else if (rep==996) ref+="&fix=/menu/"+userid+"/"+s+"IQ.htm";
    else               ref+="&fix=/menu/$2/"+parent.glolan+".htm";

    //alert(ref);
if (ref.indexOf(".exe")>0) 
 if ((""+top.location).indexOf(swtools)<=0) { top.location=swtoolsdk+"/login.htm?"+parent.glolan; return; }
    parent.f1.location.href=xvers(ref);
    if (pic!=null && pic>"") parent.f2.location.href=xvers(pic);
}

function menix(userid)           // Click on SWTools icon -> /index.htm
{
   if (userid==null || userid=="") 
   {   top.location.href="/index.htm";
       return;
   }
   if (userid!="menu")           // Report detail menu
   {   parent.f2.location.href="/cgi-bin/menuoff.bat?"+userid+"\\*.htm";
       return;
   }

 if ((""+top.location).indexOf(swtools)<=0) { top.location=swtoolsdk+"/login.htm?"+parent.glolan; return; }

   parent.f2.location.href="/cgi-bin/rap00132.exe?TRIO=997%20-s2,,,,,"+parent.glolan+","+parent.glogrp+",-1%20-uid=menu&Triostuck=256";
   // "/cgi-bin/menuoff.bat?"+parent.glogrp+"\\"+parent.glolan+"*.*";
}

function xvers(ref)          // delta forces cache flush
{
    var p,q;
//    if (ref.indexOf("(")<0) ref+="?a";
    p=ref.substring(0,5);
    q=ref.substring(5);
    if (p=="/hlp/" || p=="/htm/" || p=="/chm/" || p=="/doc/")
    {   p=""+self.location;
        if (p.indexOf("/127.0.0.1/")<=0) ref="http://www.swtools.com"+ref;
        return(ref);
    }
    p=ref.substring(0,5);
    q=ref.substring(5);
    if (p=="/ppt/" || p=="/pdf/" || p=="/hlp/" || p=="/htm/" || p=="/chm/" || p=="/doc/")
    {   
        if(p=="/ppt/")
        {   
            whdocs(q);
            return(null);
        }
        p=""+self.location;
        if (p.indexOf("/127.0.0.1/")<=0) ref="http://www.swtools.com"+ref;
        return(ref);
    }
    p=ref.substring(0,7);
    q=ref.substring(7);
    if (p=="/video/")
    {   
        whvideo(q);
        return(null);
    }
    p=ref.substring(0,7);
    q=ref.substring(7);
    return(ref);
}

function setmode(mode)        // Activate RESET etc buttons
{
    kok("Xtra",mode ? "1" : "");
    parent.xtra=mode;
    mendog(parent.glod,parent.glomen);
}

function setwhdr(mode, hdr, xtra)
{
    var d;
    var txt;

    try 
    {   d=parent;     if(typeof(d)=='undefined' || !d) return(-1);
        d=d.b1;       if(typeof(d)=='undefined' || !d) return(-1);
        d=d.document; if(typeof(d)=='undefined' || !d) return(-1);
        d.open("text/html","replace");
    } catch (err) { return(-1); }

    if(mode == 0)
    {
        txt ="<HTML>";
        txt+="<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.swtools.com/ico/swtools.css\">";
        txt+="<BODY BGCOLOR=\"#73B6D6\" leftmargin=4 topmargin=8 rightmargin=4 bottommargin=4>";
        txt+="<H3><font color=#FFFFFF>"+hdr+"</font></H3>"+xtra;
        txt+="</BODY>";
        txt+="</HTML>";
    }
    else if(mode == 1)
    {
        txt ="<HTML>";
        txt+="<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.swtools.com/ico/swtools.css\">";
        txt+="<BODY BGCOLOR=\"#73B6D6\" leftmargin=4 topmargin=8 rightmargin=4 bottommargin=4>";
        txt+="<center><img src=\"http://www.swtools.com/ico/"+hdr+"\" border=0></center>";
        txt+="</BODY>";
        txt+="</HTML>";
    }
    else if(mode == 2)
    {
        txt ="<HTML>";
        txt+="<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.swtools.com/ico/swtools.css\">";
        txt+="<BODY BGCOLOR=\"#73B6D6\" leftmargin=4 topmargin=4 rightmargin=4 bottommargin=4>";
        txt+="<center>";
        txt+="<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\"";
        txt+="width=\"558\" height=\"72\" id=\""+hdr+"\" align=\"middle\">";
        txt+="<param name=\"allowScriptAccess\" value=\"always\">";
        txt+="<param name=\"movie\" value=\"http://www.swtools.com/ico/"+hdr+"\">";
        txt+="<param name=\"quality\" value=\"high\">";
        txt+="<param name=\"bgcolor\" value=\"#ffffff\">";
        txt+="<param name=\"menu\" value=\"false\">";
        txt+="<embed src=\"http://www.swtools.com/ico/"+hdr+"\" quality=\"high\" bgcolor=\"#ffffff\" width=\"558\" height=\"72\" name=\""+hdr+"\" align=\"middle\" allowScriptAccess=\"sameDomain\" ";
        txt+="type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\">";
        txt+="</object>";
        txt+="</center>";
        txt+="</BODY>";
        txt+="</HTML>";
    }
    d.writeln(txt);
    return(0);
}

function whdocs(zz)
{
    var hr;

    hr = 'http://www.swtools.com/swdocs/'+zz;
    if (zz=='trio.ppt' ||                       // ch030908
        zz=='trioeng.ppt' || zz=='trioger.ppt' || zz=='triodan.ppt' || 
        zz=='navieng.ppt' || zz=='naviger.ppt' || zz=='navidan.ppt'     )
        hr='http://www.swtools.com/ppt/'+zz;
    //alert("zz="+zz+"\nhr="+hr);
//    self.location=hr;
    window.open(hr,'swtoolsdocs','left=10,top=10,width=800,height=600,location=no,menubar=no,resizable=yes,toolbar=no');
}

function whvideo(zz)
{
    var hr;

    hr = 'http://www.swtools.com/swvideo/'+zz;
    window.open(hr,'swtoolsvideo','left=10,top=10,width=800,height=600,location=no,menubar=no,resizable=no,scrollbars=no,status=no,titlebar=no,toolbar=no');
}
