var projects={'current' : 1};
var project_xsl;

function XMLRequest(){
	var ret;
	if(window.XMLHttpRequest){
		ret= new XMLHttpRequest();
	}
	else if(window.ActiveXObject){
		var msm=['Msxml2.XMLHTTP','Microsoft.XMLHTTP'];
		for(var i=0;i<msm.length;i++){
			try {
				ret=new ActiveXObject(msm[i]);
				break;
			}
			catch(x){}
		}
	}
	return ret;
}
function loadXMLDoc(fname,async) {
	var xmlDoc;
// code for IE
	if(typeof(async) == 'undefined') async=false;
	if (window.ActiveXObject) {
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
	}
// code for Mozilla, Firefox, Opera, etc.
	else if (document.implementation && document.implementation.createDocument) {
		xmlDoc=document.implementation.createDocument("","",null);
	}
	else {
		alert('Your browser cannot handle this script');
	}
	try{
		xmlDoc.async=async;
		xmlDoc.load(fname);
	}
	catch(x){
		var req=new XMLHttpRequest();
		req.open("GET",fname,false);
		req.send(null);
		xmlDoc = req.responseXML.documentElement;
	}
	return(xmlDoc);
}
function formData(fm){
	var ret=new Array();
	for(var i=0;i<fm.elements.length;i++){
		if(/radio|checkbox/.test(fm.elements[i].type)){
			if(fm.elements[i].selected || fm.elements[i].checked){
				ret.push([fm.elements[i].name,encodeURIComponent(fm.elements[i].value)].join('='));
			}
		}
		else {
			ret.push([fm.elements[i].name,encodeURIComponent(fm.elements[i].value)].join('='));
		}
	}
	return ret;
}

function doLogin(fm){
	var mes=document.getElementById('login_message');
	mes.style.display='none';
	var req=XMLRequest();
	req.onreadystatechange=function(){
		if(req.readyState==4){
			if(req.status==200){
				if(/OK/.test(req.responseText)){
					var b=req.responseText.split(':');
					setCookie('CGISESSID',b[1]);
					setCookie('bikkit','1');
					try{
						showIfLoggedIn();
					}
					catch(x){}
				}
				else {
					mes.innerHTML=req.responseText;
					try{
						mes.style.display='table-cell';
					}
					catch(x){
						mes.style.display='block';
					}
				}
			}
			else{
				alert(req.responseText);
			}
		}
	};
	req.open('POST','/cgi-bin/login.pl',true);
	req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	var fmd=formData(fm);
	fmd.push('remote=1&dologin=1&next=search');
	req.send(fmd.join('&'));
	return false;
}

function getProject(t){
	try{
	var req=XMLRequest();
	req.open('GET','/cgi-bin/projects.pl?xml=1&type=' + t + '&ts=' +(new Date()).getTime());
	req.onreadystatechange=function(){
		if(req.readyState==4){
			if(req.status==200){
				var xml=req.responseXML;
				var target=document.getElementById('projects');
				var docf;
				if(window.ActiveXObject){
					docf=xml.transformNode(project_xsl);
					docf=docf.replace(/<\?.*?\?>/,'');
					target.innerHTML=docf;
				}
				else if (document.implementation && document.implementation.createDocument) {
					var xsltProcessor=new XSLTProcessor(); 
					xsltProcessor.importStylesheet(project_xsl); 
					docf = xsltProcessor.transformToFragment(xml,document); 
					while(target.firstChild){
						target.removeChild(target.firstChild);
					}
					target.appendChild(docf);
				}
				
				

			}
		}
	};
	req.send(null);
	return false;
	}catch(x){alert(x)}
}
function getArticle(id){
	var req=XMLRequest();
	var h=document.getElementById('newsheadlines');
	var a=document.getElementById('newsarticle');
	req.open('GET','/cgi-bin/news.pl?_cmd=art&id=' + id);
	req.onreadystatechange=function(){
		if(req.readyState==4){
			if(req.status==200){
				h.style.display='none';
				a.innerHTML=req.responseText;
				a.style.display='block';
			}
			else {
				alert(req.responseText);
			}
		}
	};
	req.send(null);
	return false;
}
function showHeadlines(){
	var h=document.getElementById('newsheadlines');
	var a=document.getElementById('newsarticle');
	a.style.display='none';
	h.style.display='block';

}




project_xsl=loadXMLDoc('/scripts/project.xsl');

