/* 
   main.js
   author: James Coghlan
   see: http://www.goblinsan.com
   date: 12/31/2007
   purpose: defines gereric javascript functions for the main body
*/


function loginvis(cmd){
	var logbox=document.getElementById('loginBox');

	if(cmd == 'open'){
		logbox.style.visibility="visible";
	}
	else {
		logbox.style.visibility="hidden";
	}
}
function showme(cmd, element){
	var item=document.getElementById(element);

	if(cmd == 'open'){
		item.style.visibility="visible";
	}
	else {
		item.style.visibility="hidden";
	}
}

function getContent(tab){
xmlHttpTwo=GetXmlHttpObject();
if (xmlHttpTwo==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="functions/getContent.php";
xmlHttpTwo.onreadystatechange=ContentstateChanged;
foo = "tab=" + encodeURI(tab);
xmlHttpTwo.open("POST",url,true);
xmlHttpTwo.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttpTwo.send(foo);
}

function updateNews(){
xmlNews=GetXmlHttpObject();
if (xmlNews==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="functions/updateNews.php";
xmlNews.onreadystatechange=NewsstateChanged;
xmlNews.open("GET",url,true);
xmlNews.send(null);
}

function updateArticles(){
xmlArts=GetXmlHttpObject();
if (xmlArts==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="functions/print_articles.php";
xmlArts.onreadystatechange=ArticlesstateChanged;
xmlArts.open("GET",url,true);
xmlArts.send(null);
}


function tabs(page, tab){
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="functions/mainTabs.php";
xmlHttp.onreadystatechange=TabsstateChanged;
foo = "page=" + encodeURI(page) + "&tab=" + encodeURI(tab);
xmlHttp.open("POST",url,true);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttp.send(foo);
getContent(tab);
}

/*#############################
## AJAX FUNCTION HANDLERS ##########
############################*/

function ContentstateChanged()
{ 
if (xmlHttpTwo.readyState==4)/*Finished*/
{
	document.getElementById("mainTabsBox").innerHTML=xmlHttpTwo.responseText;
}
else if (xmlHttpTwo.readyState<4 && xmlHttpTwo.readyState>0)/*Loading*/
{
	document.getElementById("mainTabsBox").innerHTML="<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><center><img src='images/loading.gif' /><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/></center>";
}
}

function NewsstateChanged()
{ 
if (xmlNews.readyState==4)/*Finished*/
{
	document.getElementById("newsArticles").innerHTML=xmlNews.responseText;
	document.getElementById("newsUpdate").innerHTML="Update Completed";
	document.getElementById("newsTabs").innerHTML='<ul><li id="current"><a href="javascript:updateNews();" title="News"><span>News</span></a></li><li><a href="javascript:updateArticles();" title="Articles"><span>Articles</span></a></li></ul>'
}
else if (xmlNews.readyState<4 && xmlNews.readyState>0)/*Loading*/
{
	document.getElementById("newsArticles").innerHTML="<center><img src='images/loading.gif' /></center>";
	document.getElementById("newsUpdate").innerHTML="Updating";
}
}

function ArticlesstateChanged()
{ 
if (xmlArts.readyState==4)/*Finished*/
{
	document.getElementById("newsArticles").innerHTML=xmlArts.responseText;
	document.getElementById("newsUpdate").innerHTML="Update Completed";
	document.getElementById("newsTabs").innerHTML='<ul><li><a href="javascript:updateNews();" title="News"><span>News</span></a></li><li id="current"><a href="javascript:updateArticles();" title="Articles"><span>Articles</span></a></li></ul>'
}
else if (xmlArts.readyState<4 && xmlArts.readyState>0)/*Loading*/
{
	document.getElementById("newsArticles").innerHTML="<center><img src='images/loading.gif' /></center>";
	document.getElementById("newsUpdate").innerHTML="Updating";
}
}


function TabsstateChanged()
{ 
if (xmlHttp.readyState==4)/*Finished*/
{
	document.getElementById("mainTabs").innerHTML=xmlHttp.responseText;
}
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}

