var theTimer;
var isNews = 1;
function beginInit() {
	clockRefresh();
	loadChat();
}

function setTimer() {
	clearTimeout(theTimer);
	theTimer = setTimeout("loadChat()",15000);
}
function clockRefresh() {
	var d = new Date('hh:mm a');
	
	document.getElementById("timer").innerHTML =  (new Date()).format('hh:nn a/p')+'&nbsp;';
	setTimeout("clockRefresh()",10000);
}

var gsMonthNames = new Array(
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December'
);
var gsDayNames = new Array(
'Sunday',
'Monday',
'Tuesday',
'Wednesday',
'Thursday',
'Friday',
'Saturday'
);
String.prototype.zf = function(l) { return '0'.string(l - this.length) + this; }
String.prototype.string = function(l) { var s = '', i = 0; while (i++ < l) { s += this; } return s; }
Number.prototype.zf = function(l) { return this.toString().zf(l); }

Date.prototype.format = function(f)
{
    if (!this.valueOf())
        return ' ';

    var d = this;

    return f.replace(/(yyyy|mmmm|mmm|mm|dddd|ddd|dd|hh|nn|ss|a\/p)/gi,
        function($1)
        {
            switch ($1.toLowerCase())
            {
            case 'yyyy': return d.getFullYear();
            case 'mmmm': return gsMonthNames[d.getMonth()];
            case 'mmm':  return gsMonthNames[d.getMonth()].substr(0, 3);
            case 'mm':   return (d.getMonth() + 1).zf(2);
            case 'dddd': return gsDayNames[d.getDay()];
            case 'ddd':  return gsDayNames[d.getDay()].substr(0, 3);
            case 'dd':   return d.getDate().zf(2);
            case 'hh':   return ((h = d.getHours() % 12) ? h : 12).zf(2);
            case 'nn':   return d.getMinutes().zf(2);
            case 'ss':   return d.getSeconds().zf(2);
            case 'a/p':  return d.getHours() < 12 ? 'AM' : 'PM';
            }
        }
    );
}
function checkLogin() {
		var poststr = "login=1&username=" + encodeURI( document.getElementById("username").value ) +
                    "&password=" + encodeURI( document.getElementById("password").value );

	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		
		req.onreadystatechange = checkReturn;
		req.open('POST', "./login.php", true);
		req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		req.setRequestHeader("Content-length", poststr.length);
		req.setRequestHeader("Connection", "close");
		req.send(poststr);
		// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = checkReturn;
			req.open('POST', "./login.php", true);
			req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			req.setRequestHeader("Content-length", poststr.length);
			req.setRequestHeader("Connection", "close");
			req.send(poststr);
		}
	}
}
function checkReturn() {
	if (req.readyState == 4) {
		// only if "OK"
		if (req.status == 200) {
			// ...processing statements go here...
			if(req.responseText == "PHP Submit OK") {
				window.location.reload();
			} else {
				//display error...
				document.getElementById("password").value = '';
				showError("invalid u/p");
			}

			} else {
			alert("There was a problem retrieving the XML data:\n" + req.statusText);
		}
	}
}

var errLvl = 100;
function showError(text) {
	var e = document.getElementById("error");
	
	errLvl = 100;
	e.innerHTML = text;
	e.style.filter = "Alpha(Opacity=100)"; //for IE   
    e.style.opacity = 1; //for FF	
	e.style.visibility = 'visible';
	setTimeout("errorFade()",2000);
}
function errorFade() {
	errLvl--;
	var e = document.getElementById("error");
	
	e.style.filter = "Alpha(Opacity=" + errLvl + ")"; //for IE   
    e.style.opacity = errLvl/100; //for FF
    
	if(errLvl==0) {
		e.style.visibility = 'hidden';
	} else {
		setTimeout("errorFade()",10);
	}
}
function sendChat() {
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = chatRespond;
		req.open('GET', './chatter.php?action=add&message='+document.getElementById("message").value, true);
		req.send(null);
		// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = chatRespond;
			req.open('GET', './chatter.php?action=add&message='+document.getElementById("message").value, true);
			req.send();
		}
	}
	document.getElementById("message").value = '';
}
function loadChat() {
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = chatRespond;
		req.open("GET", "./chatter.php", true);
		req.send(null);
		// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = chatRespond;
			req.open("GET", "./chatter.php?sid="+ieID, true);
			req.send();
		}
	}
}
function chatRespond() {
	if (req.readyState == 4) {
		if (req.status == 200) {
			document.getElementById("chatMiddle").innerHTML = req.responseText;
			setTimer();
		}
	}
}	
function se(e) {
	var kc;
	
	if (!e) {
		var e = window.event||window.Event;
	}
	if (window.ActiveXObject) {
		kc = e.keyCode;
	} else {
		kc = e.which;
	}
	if(kc == 13) {
		if(document.getElementById("message").value != '') {
			sendChat();
		}
		return false;
	} else {
		return true;
	}
}
function appStart() {
	loadContent(2);
}

function appMember() {
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = newsRespond;
		req.open("GET", "./baseform.php?", true);
		req.send(null);
		
		// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = newsRespond;
			req.open("GET", "./baseform.php?", true);
			req.send();
		}
	}
}


function loadNews() {
	loadContent(isNews);
	isNews = (isNews == 1) ? 0 : 1;
}
function loadContent(x) {
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = newsRespond;
		req.open("GET", "./news.php?"+x, true);
		req.send(null);
		
		// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = newsRespond;
			req.open("GET", "./news.php?"+x, true);
			req.send();
		}
	}
}
function newsRespond() {
	if (req.readyState == 4) {
		if (req.status == 200) {
			document.getElementById("newsMiddle").innerHTML = req.responseText;
			setTimer();
		}
	}
}	