﻿function OnLoadBody() 
{
    var action = Capitalize(GetUrlParam('show'));
    if(action != "")
        Menu(action);
}

function Capitalize(txt) 
{
    if(txt == null || txt.length == 0)
        return "";
        
    return txt.substring(0, 1).toUpperCase() + txt.substring(1, txt.length).toLowerCase();
}

function GetUrlParam(name)
{  
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");  
    var regexS = "[\\?&]" + name + "=([^&#]*)";  
    var regex = new RegExp(regexS);  
    var results = regex.exec(window.location.href);  
    if(results == null)
        return "";  
    else
        return results[1];
}

var lastAction = "Home";

function Menu(action) 
{
    var activated = false;

    if(action == lastAction)
        return;

    var lastElem = document.getElementById(lastAction + 'Div');
    if(lastElem != null)
        lastElem.style.display = 'none';

    var lastLink = document.getElementById(lastAction + 'Link');
    if(lastLink != null)
        lastLink.className = '';
    
    var elem = document.getElementById(action + 'Div');
    if(elem != null)
        elem.style.display = 'inline';

    var link = document.getElementById(action + 'Link');
    if(link != null)
        link.className = 'activelink';

    lastAction = action;

    if(action == 'Links')
        document.getElementById('LinkCategory').focus();
}

function ShowLinks()
{
    var d = document.getElementById("LinkContainer");
    
    var ctg = document.getElementById("LinkCategory");
    var selCtg = ctg.options[ctg.selectedIndex].value;
    var alphaSort = document.getElementById("LinksSorted").checked;
    
    var list = eval(selCtg);
    var roundedCount = list.length % 3;
    roundedCount = roundedCount == 0 ? 0 : (3 - roundedCount);
    roundedCount += list.length;

    var listToShow = new Array();
    for(var i=0; i<list.length; i++)
    {
        listToShow[i] = list[i];
    }

    if(alphaSort)
        listToShow.sort(function(x,y) { 
                            var a = String(x).toUpperCase(); 
                            var b = String(y).toUpperCase(); 
                            if(a > b) return 1;
                            if(a < b) return -1;
                            return 0; });

    for(var i=list.length; i<roundedCount; i++)
    {
        listToShow[i] = '';
    }
    
    var html = '<table class="LinksTable" cellspacing="0" cellpadding="0">';
    for(var i=0; i<listToShow.length - 2; i+=3)
    {
        html += ("<tr><td>" + BuildLink(listToShow[i]) + "</td><td>" + 
                BuildLink(listToShow[i+1]) + "</td><td>" + 
                BuildLink(listToShow[i+2]) + "</td></tr>");
    }
    html += "</table>";
    
    d.innerHTML = html;
}

function BuildLink(nameUrlString)
{
    if(nameUrlString == '')
        return '&nbsp;';
    
    var nameUrl = nameUrlString.split(';', 2);
    if(nameUrl == null || nameUrl.length == 1)
        return '&nbsp;';
    
    return "<a href='" + nameUrl[1] + "' target='_blank' title='" + nameUrl[1] + "' class='simpleLink'>" + nameUrl[0] + "</a>";
}

function OpenImgViewer(imgUrl, title)
{
    window.open('http://brain2cpu.com/' + imgUrl, title, 'menubar=0,scrollbars=1,resizable=1,toolbar=0,width=900,height=700');
}

//browser info functions:
function PrintBrowserInfo()
{
    var ary=new Array("appCodeName", "appName", "appVersion", "mimeTypes", "plugins", "userAgent", "javaEnabled()+''", "X", "width+''", "height+''", "colorDepth+''", "X", "history.length+''");
  	var box=new Array("<input type='text' size=50 value='","'>", "<select onchange='more(this,this.form);'>", "", "<input type='text' size=6 value='","'>");
  	cnt=0; fmtcnt=0; var bgn=new Array("navigator","screen","window");
  	for(i=0;i<ary.length-2;i++)
	{
  		b=0; 
        if (ary[i+cnt]=="X") cnt++;
  		val=eval(bgn[cnt]+"."+ary[i+cnt]); 
        fmt="<br>\n";
  		l=val.length; 
        if (l>0) 
        {
  			if (val.toString().indexOf('Array',0)>-1) 
            {
  				val=""; b=2; box[3]="</select>"+box[4]+eval(bgn[cnt]+"."+ary[i+cnt]+".length")+box[5];
  				for (j=0;j<l;j++)
  					val+="<option value="+i+">"+eval(bgn[cnt]+"."+ary[i+cnt]+"["+j+"].description").substring(0,30);
  			};
  			if (ary[i+cnt].indexOf("+''",0)>0) 
            {
  				b=4; fmtcnt=(fmtcnt+1)%3; if (fmtcnt>0) fmt="\n";
  				ary[i+cnt]=ary[i+cnt].substring(0,escape(ary[i+cnt]).indexOf('%')-1);
  			};
  			document.write(ary[i+cnt]+":"+box[b]+val+box[b+1]+fmt);
  		}
  	}
}

function more(sel,frm) 
{
    frm.ta.value=""; cnt=1; nm=navigator.mimeTypes; ssi=sel.selectedIndex;
    if (display(sel,frm,nm,ssi)==1)
        for (k=0;k<nm.length;k++)
            if (isEnabled(k))
                if (isEnabled(k).name==navigator.plugins[ssi].name) 
                {
                    frm.ta.value+=cnt+")."; cnt++
                    display(frm.elements[3],frm,nm,k);
                }
}

function display(sel,frm,nm,ssi) 
{
    which=sel.options[ssi].value-3;
    var prms=new Array();
    prms[0]=new Array("mimeTypes","description","suffixes","type","enabledPlugin.name");
    prms[1]=new Array("plugins","description","filename","length","name");
    ln=5; if (which==0) if (!isEnabled(ssi)) ln=4;
    for (i=1;i<ln;i++)
        frm.ta.value+=prms[which][i]+":"+eval("navigator."+prms[which][0]+"["+ssi+"]."+prms[which][i])+"\n";
    return which;
}

function isEnabled(n) 
{
    return navigator.mimeTypes[n].enabledPlugin;
}

