//Auxiliary JavaScript specifically for Second Glance Gallery
//Copyright Everett Green
//http://slimjackson.net/

var basedir = "/";

addLoadEvent(fixButton);

var req = false;
if (window.XMLHttpRequest) {
	req = new XMLHttpRequest();
} else {
	if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}
}

function doRequest (url, data, rsChgFunc) {
	req.open("POST", url, true);
	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	req.setRequestHeader("Content-length", data.length);
	req.setRequestHeader("Connection", "close");
	req.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
	req.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
	req.setRequestHeader("Pragma", "no-cache");
	req.onreadystatechange = rsChgFunc;
	req.send(data);
}

function fixButton () {
	var cs_btn = _gel('contact_submit');
	if (cs_btn) {
		cs_btn.onclick = submitContactForm;
		cs_btn.innerHTML = "Send";
		cs_btn.style.cursor = "pointer";
	}
}

function breakButton () {
	var cs_btn = _gel('contact_submit');
	if (cs_btn) {
		cs_btn.onclick = null;
		cs_btn.innerHTML = "Sending...";
		cs_btn.style.cursor = "default";
	}
}

function submitContactForm () {
	var s = document.forms.cForm.contact_reason.value;
	var e = document.forms.cForm.contact_email.value;
	var m = document.forms.cForm.contact_message.value;
	var time = new Date().getTime();
	var url =  basedir+"js/ajax_contact.php?"+time;
	var data = "s="+encodeURIComponent(s)+"&e="+encodeURIComponent(e)+"&m="+encodeURIComponent(m);
	doRequest(url, data, contactStateChg);
	breakButton();
	return false;
}

function contactStateChg () {
	if (req.readyState == 4 && req.status == 200) {
		var respBool = Boolean(parseInt(req.responseText.charAt(0)));
		var respTxt = req.responseText.substring(1);
		el = _gel('contact_response');
		if (respBool) {
			el.className = 'success';
			el.innerHTML = respTxt;
		} else {
			el.className = 'errors';
			el.innerHTML = respTxt;
		}
		fixButton();
	}
}
