var req;

function loadXMLDoc(url) {
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
	req = new XMLHttpRequest();
	req.onreadystatechange = processReqChange;
	req.open("GET", url, true);
	req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
	req = new ActiveXObject("Microsoft.XMLHTTP");
	if (req) {
	    req.onreadystatechange = processReqChange;
	    req.open("GET", url, true);
	    req.send();
	}
    }
}

function processReqChange() {
    // only if req shows "complete"
    if (req.readyState == 4) {
	// only if "OK"
	if (req.status == 200) {
	    // ...processing statements go here...
	    response = req.responseXML.documentElement;
	    method = response.getElementsByTagName('method')[0].firstChild.data;
	    result = response.getElementsByTagName('result')[0].firstChild.data;
	    eval(method + '(\'\', result)');
	} else {
	    alert("There was a problem retrieving the XML data:\n" + req.statusText);
	}
    }
}


function checkName(input, response) {
    if (response != '') {
	// Response mode
        message = document.getElementById('nameCheckFailed');
	bgset = document.getElementById('username');
	if (response == 1) {
	    message.className = 'error';
	    bgset.className = 'error';
	}
        else {
	    message.className = 'hidden';
	    bgset.className = 'fine';			
	}
    }
    else {
	// Input mode
        url = '../dev.dreamnet.hu/test.php@q=' + input;
	loadXMLDoc(url);
    }
}

function checkPass(input) {
    if (input != '') {
	message2 = document.getElementById('passCheckFailed');
	pass1 = document.getElementById('pass1');
	pass2 = document.getElementById('pass2');
	if (pass1.value != input ) {
	    pass1.className = 'error';
	    pass2.className = 'error';
	}
        else {
	    message2.className = 'hidden';
	    pass1.className = 'fine';
	    pass2.className = 'fine';
	}
    }
}

function submitReg(username, password) {
    regConfirm = document.getElementById('regConfirm');
    document.getElementById('reg').innerHTML='User ' + username + ' added.';
}

var loadedobjects=""
var rootdomain="http://"+window.location.hostname

function ajaxpage(url, containerid) {
    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) {}
	}
    }
    else
	return false
    page_request.onreadystatechange = function() {
	loadpage(page_request, containerid)
    }
    page_request.open('GET', url, true)
    page_request.send(null)
}

function loadpage(page_request, containerid) {
    if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
    document.getElementById(containerid).innerHTML=page_request.responseText
}

function loadobjs(){
    if (!document.getElementById)
	return
    for (i=0; i<arguments.length; i++) {
	var file=arguments[i]
	var fileref=""
	if (loadedobjects.indexOf(file)==-1) { //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(".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
	}
    }
}

