// JavaScript Document
/***********************************************
* Dynamic Ajax Content-  Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

var loadedobjects="";
var rootdomain="http://"+window.location.hostname;
var ajax_return_value;
var ajax_method = "get";

function ajaxpage(url, target) {
	var url, target, append, parameters, jsaction, params_length;
	ajax_return_value = '';
	if (arguments.length > 0) url        = arguments[0];
	if (arguments.length > 1) target     = arguments[1];
	if (arguments.length > 2) append     = arguments[2];
	if (arguments.length > 3) parameters = arguments[3];
	if (arguments.length > 4) jsaction   = arguments[4];
	
	if (parameters) params_length = parameters.length;
	/*
	alert('ajaxpage(0:'+url+', 1:'+target+', 2:'+append+', 3:'+parameters+', 4:'+jsaction+')');
	//return false;
	/**/
	/*
	alert(parameters.length);
	/**/

	var page_request = false;

	if (window.XMLHttpRequest) // if Mozilla, Safari etc
		page_request = new XMLHttpRequest();
	else if (window.ActiveXObject){ // if IE
		try {
			page_request = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
			try{
				page_request = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {
				alert(e);
			}
		}
	}
	else {
		if (!page_request) {
			alert('Cannot create XMLHTTP instance');
			return false;
		}
		return false
	}
	page_request.onreadystatechange=function(){
		loadpage(page_request, url, target, append, parameters, jsaction);
	}
	try {
		switch(ajax_method) {
			case 'post':
				page_request.open('POST', url, true);
				page_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				page_request.setRequestHeader("Content-length", params_length);
				page_request.setRequestHeader("Connection", "close");
				try {
					page_request.send(parameters);
				}
				catch(e) {
					alert(e);
				}
				break;
			case 'get':
			default:
				page_request.open('GET', url, true);
				page_request.send(null);
		}
	}
	catch(e) {
		alert(e);
	}
}

function makePOSTRequest(url, target){
	ajax_method = "post";
	//alert('ajaxpage(0:'+arguments[0]+',1:'+arguments[1]+',2:'+arguments[2]+',3:'+arguments[3]+',4:'+arguments[4]+')');
	ajaxpage(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4]);
}

function loadpage(http_request, http_request_url, http_request_target, append, parameters, jsaction) {
	//alert('alertContents('+http_request.target+','+http_request.url+')');
	var target_obj = null;
	if (http_request_target) if (typeof http_request_target == 'string') {
		//alert('http_request_target is string '+http_request_target);
		target_obj = document.getElementById(http_request_target);
	}
	else if(http_request_target!=null) {
		//alert('http_request_target is object '+http_request_target);
		target_obj = http_request_target;
	}
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			result = http_request.responseText;
			if (result.length) {
				if (http_request_target && target_obj) {
					if (append) {
						target_obj.innerHTML += ('\r\n'+result);
					} else {
						target_obj.innerHTML = result;
					}
				}
				else {
    			alert('loadpage: no target object');
				}
			}
			//alert('run jsaction: '+jsaction);
			if (jsaction) eval(jsaction);
		} else {
			ajax_return_value = "ERR_NO 199";
			//if (target_obj) setContent(target_obj,'There was a problem with the request.');
			alert('There was a problem with the request.\nstatus = '+http_request.status+'\nurl = '+http_request_url);
		}
	}
}

function loadpage_old(page_request, page_request_target, append, parameters, jsaction){
	if (page_request.readyState == 4) {
		if (page_request) if (page_request.status) if (page_request.status == 200) {
			//alert('loadpage('+page_request+', '+page_request_target+', '+append+', '+parameters+', "'+jsaction+'")');
			//alert(http_request.responseText);
			result = page_request.responseText;
			target_obj = (typeof page_request_target == 'string')? document.getElementById(page_request_target) : page_request_target;
			if (result.length) {
				if (append) {
					target_obj.innerHTML += result;
				} else target_obj.innerHTML = result;
			}
			if (jsaction) eval(jsaction);
		}
		else {
			setContent(page_request_target,'There was a problem with the request.');
		}
	}
}


function loadobjs() {
	var i,file,fileref;
	if (!document.getElementById) return;
	for (i=0; i<arguments.length; i++) {
		file=arguments[i];
		fileref = "";
		if (loadedobjects.indexOf(file)>=0) {
			//alert('object '+file+' is already loaded');
			continue; //Check to see if this object has not already been added to page before proceeding
		}
		if (file.indexOf(".js")!=-1) { //If object is a js file
			fileref=document.createElement('SCRIPT');
			fileref.setAttribute("type","text/javascript");
			fileref.setAttribute("src", file);
		}
		else if (file.indexOf(".php")!=-1) { //If object is a css file
			fileref=document.createElement('SCRIPT');
			fileref.setAttribute("type","text/javascript");
			fileref.setAttribute("src", file);
		}
		else if (file.indexOf(".css")!=-1) { //If object is a css file
			fileref=document.createElement("LINK");
			fileref.setAttribute("rel", "stylesheet");
			fileref.setAttribute("type", "text/css");
			fileref.setAttribute("href", file);
		}
		if (fileref!="") {
			document.getElementsByTagName("HEAD").item(0).appendChild(fileref);
			loadedobjects+=file+" " //Remember this object as being already added to page
		}
	}
}

/**/
