/* wraper function to prevent script running on page load when bound to a listen event*/
function event_ajax(targetid) {
	return function(e) { loadsubs(e.currentTarget,targetid); e.preventDefault() };
}


var isIE = false;
var req;
var spanid = '';
var s;
var o;
var n;
var str;

function loadXMLDoc(url) {
/*	url = url + "?login=" + document.loginform.login.value + "&password=" + document.loginform.password.value;
*/
	url = url;

if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
		req.setRequestHeader("amiajax", "yes");
        req.send(null);
    }
 else if (window.ActiveXObject) {
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open("GET", url, true);
			req.setRequestHeader("amiajax", "yes");
			req.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" );
            req.send();
        }
    }
}

function processReqChange() {
    if (req.readyState == 4) {
        if (req.status == 200) {
            buildpage();
         }
 else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
         }
    }
}

function loadsubs(subpage,spanner) {
	/*document.getElementById(spanner).innerHTML = "updating...";
	document.getElementById(spanner).innerHTML = "<div id='ajax_loading'><img src='images/layout/ajax_loading.gif'></div>";*/
	spanid = spanner;		
	loadXMLDoc(subpage);
}

function buildpage() {
	str = req.responseText;
	var tempstr = str;
	//document.getElementById(spanid).innerHTML = tempstr;
	


s = $(spanid);
var oldtext = s.innerHTML
s.innerHTML = ''

o = document.createElement('div');
n = document.createElement('div');
o.id = spanid+'old-results';
n.id = spanid+'current-results';
s.appendChild(n);
s.appendChild(o);
n.style.display = 'none';
o.innerHTML = oldtext;
n.innerHTML = str;

	new Effect.BlindUp(spanid+'old-results',{duration:.8 , queue: 'front'});
	
	//$(spanid).innerHTML = str;
    new Effect.BlindDown(spanid+'current-results',{duration:.8 , queue: 'end' , afterFinish:cleanshitup});
}

function cleanshitup () {
	s.removeChild(n);
	s.removeChild(o);
	s.innerHTML = str;
}

function fixIE() {
	if(/MSIE/.test(navigator.userAgent)) {
		for (var i = 0; i < arguments.length; i++) {
			var element = arguments[i];
			$(element).style.height = $(element).offsetHeight;
		}
	}
}
