// JavaScript Document
var browser_info = navigator.appVersion;
var IE=false, Safari=false, FireFox=false, other=false;
//alert(browser_info);
if	(browser_info.indexOf("MSIE") != -1)
{
	IE = true;
}
else if (browser_info.indexOf("Safari") != -1)
{
	Safari = true;
}
else
{
	FireFox = true;
}

function checkWidth()
{
	//hideContent();
	var winW = window.innerWidth;
	if (isNaN(winW))
	winW = screen.width;
	//var contentWidth = (winW - 200)*.95;
	var contentWidth = winW-230;
	document.getElementById("content").style.width = contentWidth+"px";
}

/*
function changeContent(newpage)
{
	//alert(newpage);
	//document.getElementById("content_src").src = newpage;
	//top.location.href=newpage;
}
//*/

function MM_swapImgRestore()
{ //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages()
{ //v3.0
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d)
{ //v4.01
	var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage()
{ //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function getFlashMovie(movieName)
{
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}

function formSend()
{
	var text = document.htmlForm.sendField.value;
	getFlashMovie("Treehouse_Opening").sendTabClick(text);
}

function getTextFromFlash(str)
{
	document.htmlForm.receivedField.value = "From Flash: " + str;
	return str + " received";
}

function showLi(id)
{
	id += "_div";
	if (id != "mission_div")
		document.getElementById("mission_div").style.display = "none";
	if (id != "history_div")
		document.getElementById("history_div").style.display = "none";
	if (id != "board_div")
		document.getElementById("board_div").style.display = "none";
	if (id != "staff_div")
		document.getElementById("staff_div").style.display = "none";

	if (document.getElementById(id).style.display != "block")
		document.getElementById(id).style.display = "block";
	else
		document.getElementById(id).style.display = "none";
}

function addLoadEvent(func)
{
	var oldonload = window.onload;
	if (typeof window.onload != 'function')
	{
		window.onload = func;
	}
	else
	{
		window.onload = function()
		{
			if (oldonload)
			{
				oldonload();
			}
			func();
		}
	}
}

function trim(stringToTrim)
{
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function ltrim(stringToTrim)
{
	return stringToTrim.replace(/^\s+/,"");
}

function rtrim(stringToTrim)
{
	return stringToTrim.replace(/\s+$/,"");
}

function findPos(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent)
	{
		do
		{
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
}

function number_format(number, decimals, dec_point, thousands_sep)
{
    // Formats a number with grouped thousands
    //
    // version: 906.1806
    // discuss at: http://phpjs.org/functions/number_format
    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://getsprink.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +     bugfix by: Howard Yeend
    // +    revised by: Luke Smith (http://lucassmith.name)
    // +     bugfix by: Diogo Resende
    // +     bugfix by: Rival
    // +     input by: Kheang Hok Chin (http://www.distantia.ca/)
    // +     improved by: davook
    // +     improved by: Brett Zamir (http://brett-zamir.me)
    // +     input by: Jay Klehr
    // +     improved by: Brett Zamir (http://brett-zamir.me)
    // +     input by: Amir Habibi (http://www.residence-mixte.com/)
    // +     bugfix by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: number_format(1234.56);
    // *     returns 1: '1,235'
    // *     example 2: number_format(1234.56, 2, ',', ' ');
    // *     returns 2: '1 234,56'
    // *     example 3: number_format(1234.5678, 2, '.', '');
    // *     returns 3: '1234.57'
    // *     example 4: number_format(67, 2, ',', '.');
    // *     returns 4: '67,00'
    // *     example 5: number_format(1000);
    // *     returns 5: '1,000'
    // *     example 6: number_format(67.311, 2);
    // *     returns 6: '67.31'
    // *     example 7: number_format(1000.55, 1);
    // *     returns 7: '1,000.6'
    // *     example 8: number_format(67000, 5, ',', '.');
    // *     returns 8: '67.000,00000'
    // *     example 9: number_format(0.9, 0);
    // *     returns 9: '1'
    // *     example 10: number_format('1.20', 2);
    // *     returns 10: '1.20'
    // *     example 11: number_format('1.20', 4);
    // *     returns 11: '1.2000'
    // *     example 12: number_format('1.2000', 3);
    // *     returns 12: '1.200'
    var n = number, prec = decimals;
 
    var toFixedFix = function (n,prec) {
        var k = Math.pow(10,prec);
        return (Math.round(n*k)/k).toString();
    };
 
    n = !isFinite(+n) ? 0 : +n;
    prec = !isFinite(+prec) ? 0 : Math.abs(prec);
    var sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep;
    var dec = (typeof dec_point === 'undefined') ? '.' : dec_point;
 
    var s = (prec > 0) ? toFixedFix(n, prec) : toFixedFix(Math.round(n), prec); //fix for IE parseFloat(0.55).toFixed(0) = 0;
 
    var abs = toFixedFix(Math.abs(n), prec);
    var _, i;
 
    if (abs >= 1000) {
        _ = abs.split(/\D/);
        i = _[0].length % 3 || 3;
 
        _[0] = s.slice(0,i + (n < 0)) +
              _[0].slice(i).replace(/(\d{3})/g, sep+'$1');
        s = _.join(dec);
    } else {
        s = s.replace('.', dec);
    }
 
    var decPos = s.indexOf(dec);
    if (prec >= 1 && decPos !== -1 && (s.length-decPos-1) < prec) {
        s += new Array(prec-(s.length-decPos-1)).join(0)+'0';
    }
    else if (prec >= 1 && decPos === -1) {
        s += dec+new Array(prec).join(0)+'0';
    }
    return s;
}

function isset(objForm, elemName)
{
	return (objForm.elements[elemName]);
}
/*
function getElementsByClass(searchClass, node, tag)
{
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\\\s)"+searchClass+"(\\\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}
//*/

function getElementsByClass(classname)
{
	var rl = new Array();
	var re = new RegExp('(^| )'+classname+'( |$)');
	var ael = document.getElementsByTagName('*');
	var op = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
	if (document.all && !op) ael = document.all;
	for(i=0, j=0 ; i<ael.length ; i++)
	{
		if(re.test(ael[i].className))
		{
			rl[j]=ael[i];
			j++;
		}
	}
	return rl;
}


function make_fixed_box()
{
	var add_here = document.getElementById("add_here");
	var scroll_prompt = document.createElement("div");
	scroll_prompt.id = "scroll_prompt";
	scroll_prompt.style.display = "block";
	scroll_prompt.style.width = "auto";
	scroll_prompt.style.position = "fixed";
	scroll_prompt.style.bottom = "0px";
	scroll_prompt.style.right = "0px";
	scroll_prompt.style.padding = "2px";
	scroll_prompt.style.border = "solid 1px #00594B";
	scroll_prompt.innerHTML = "<img src='/images/down_arrow_white.gif' />Scroll down to see more!";
	scroll_prompt.style.backgroundColor = "#008C7E";
	scroll_prompt.style.color = "#FFF";
	add_here.appendChild(scroll_prompt);
	
	//alert(findPos(scroll_prompt));
	
	window.onscroll = scrollEvent;
}

function scrollEvent()
{
	var y=0;
	if (self.pageYOffset) // all except Explorer
	{
		y = self.pageYOffset;
	}
	else if (document.documentElement && document.documentElement.scrollTop)
		// Explorer 6 Strict
	{
		y = document.documentElement.scrollTop;
	}
	else if (document.body) // all other Explorers
	{
		y = document.body.clientHeight;
	}
	else
	{
		window.onscroll = null;
		return;
	}
	
	var window_height;
	if (window.innerHeight)
		window_height = window.innerHeight;
	else if (document.body.clientHeight)
		window_height = document.body.clientHeight;
	else if (document.documentElement.clientHeight)
		window_height = document.documentElement.clientHeight;
	else
	{
		window.onscroll = null;
		return;
	}
	
	y += window_height;
	
	var D = document;
    var page_height = Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
	
	if (y == page_height)
	{
		window.onscroll = null;
		document.getElementById("scroll_prompt").style.display = "none";
	}
}

function setup_clearout()
{
	var clearout_elements = getElementsByClass("clearout");
	//alert(clearout_elements.length);
	for (var i=0; i<clearout_elements.length; i++)
	{
		//if title == value, make it remove the value and remove the clearout class when focused.
		//if the value is already != title, remove the clearout class right now
		if (clearout_elements[i].title == clearout_elements[i].value)
			clearout_elements[i].onfocus = clearout;
		else
			clearout_elements[i].className = clearout_elements[i].className.replace(" clearout", "");
	}
}

function clearout()
{
	if (this.value == this.title)
	{
		this.value = "";
		this.className = this.className.replace(" clearout", "");
	}
}

function toggleDisplay(someid, dsply)
{
	if (dsply != "none")
		dsply = "";
	document.getElementById(someid).style.display = dsply;
}