// blah

var req;
var e_comp;

function loadXMLDoc(url, call_back) {
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = call_back;
        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 = call_back; //processReqChange;
        //    req.open("GET", url, true);
        //    req.send();
        //}
		  
    }
}

function check_password () {
	var pword = document.getElementById( "pword").value;
	var pword_conf = document.getElementById( "pword_conf").value;
	var pword_msg = document.getElementById( "pword_msg");
	
	var e = "";
	
	if ( ! pword ) {
		e = "Password cannot be blank";
	} else { 
		if ( pword.length < 5 ) {
			e = "Password is too short";
		} else if (pword_conf && pword != pword_conf ) {
			e = "Passwords have to match.";
		}
	}
	
	if ( e ) {
		pword_msg.innerHTML = '<div class="msg-box"><b>' + e + '</b><br></div>';
	} else {
		pword_msg.innerHTML = '';
	}
}

function check_password_conf () {
	var pword = document.getElementById( "pword").value;
	var pword_conf = document.getElementById( "pword_conf").value;
	var pword_msg = document.getElementById( "pword_msg");
	
	var e = "";
	
	if ( ! pword_conf ) {
		if ( ! pword ) {
			e = "Password and Confirm password cannot be blank";
		} else {
			e = "Confirm password cannot be blank";
		}
	}
	
	if ( pword && pword_conf ) {
		if ( pword.length < 5 ) {
			e = "Password is too short";
		} else if ( pword != pword_conf ) {
			e = "Passwords have to match.";
		}
	}
	
	if ( e ) {
		pword_msg.innerHTML = '<div class="msg-box"><b>' + e + '</b><br></div>';
	} else {
		pword_msg.innerHTML = '';
	}
}

function comp_onchange (f) {
	var e_val = f.value;
	var msg_d = document.getElementById ( f.name + "_msg");
	
	if ( ! e_val ) {
		msg_d.innerHTML = '<div class="msg-box"><b>Above field cannot be empty.</b><br></div>';
	} else {
		msg_d.innerHTML = "";
	}
}



function email_onchange (f) {
	e_comp = f;
	
	var e_val = f.value;
	
	if ( e_val ) {
		//alert ("check_email.me?email=" + e_val);
		loadXMLDoc ("check_email.me?email=" + e_val, processReqChange_email);
	}
}

function username_onchange (f) {
	e_comp = f;
	
	var e_val = f.value;
	
	if ( e_val ) {
		//alert ("check_uname.me?name=" + e_val);
		loadXMLDoc ("check_uname.me?name=" + e_val, processReqChange_uname);
	} else {
		var msg_d = document.getElementById ( f.name + "_msg");
		msg_d.innerHTML = '<div class="msg-box"><b>Username cannot be empty.</b><br></div>';
	}
}


function processReqChange_email() {
	// only if req shows "loaded"
	if (req.readyState == 4) {
		// only if "OK"
		if (req.status == 200) {
			// ...processing statements go here...
			var s = req.responseXML.getElementsByTagName("status")[0];
			var s_txt = s.firstChild.nodeValue;
			
			var msg_d = document.getElementById ( e_comp.name + "_msg");
			//document.getElementById
			
			if ( s_txt == 'bad' ) { 
				var msg = req.responseXML.getElementsByTagName("msg")[0];
				var msg_txt = msg.textContent;
				
				msg_d.innerHTML = msg_txt;
			} else {
				msg_d.innerHTML = "";
			}
		} else {
			alert("There was a problem retrieving the XML data:\n" + req.statusText);
		}
	}
}

function processReqChange_uname() {
	// only if req shows "loaded"
	if (req.readyState == 4) {
		// only if "OK"
		if (req.status == 200) {
			// ...processing statements go here...
			var s = req.responseXML.getElementsByTagName("status")[0];
			var s_txt = s.firstChild.nodeValue;
			
			var msg_d = document.getElementById ( e_comp.name + "_msg");
			//document.getElementById
			
			if ( s_txt == 'bad' ) { 
				var msg = req.responseXML.getElementsByTagName("msg")[0];
				var msg_txt = msg.textContent;
				
				msg_d.innerHTML = msg_txt;
			} else {
				msg_d.innerHTML = "";
			}
		} else {
			alert("There was a problem retrieving the XML data:\n" + req.statusText);
		}
	}
}

function ignore_email () {
	var ei = window.document.reg.i_email;
	ei.value = "ignore";
	var msg_d = document.getElementById ( e_comp.name + "_msg");
	msg_d.innerHTML = "";
}
