function refreshFilter() {
	var url = "gallery.php";
	if (document.getElementById("filterForm").gender[0].checked || document.getElementById("filterForm").gender[1].checked) {
		url = url + "?gender=";
		if (document.getElementById("filterForm").gender[0].checked) {
			url = url + "f"
		}
		if (document.getElementById("filterForm").gender[1].checked) {
			url = url + "m"
		}
	}
	window.location.href = url;
}

function validateComment(form) {
	if (validateString(form.author,'Your name must contain between 5 and 30 characters.',5,30)) {
		if (validateEmail(form.email,'Please enter your email address. This is strictly for verification purposes.')) {
			if (validateString(form.text,'Your comment must contain between 5 and 100 characters.',5,100)) {
				return true;
			}
		}
	}
	return false;
}

function validateString(field, msg, min, max) {  
	if (!min) {
		min = 1
	}
	if (!max) {
		max = 65535
	}
	if (!field.value || field.value.length < min || field.value.length > max) {
		alert(msg);
		field.focus();
		field.select();
		return false;
	}
	return true;
}

function validateEmail(field, msg) {
	var re_mail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/;
	if (!field.value || !re_mail.test(field.value)) {
		alert(msg);
		field.focus();
		field.select();
		return false;
	}
	return true;
}

var elementId = -1;
var req;
function loadXMLDoc(eleId,url) {
	if (elementId == -1) {
		req = false;
		// branch for native XMLHttpRequest object
		if (window.XMLHttpRequest && !(window.ActiveXObject)) {
			try {
				req = new XMLHttpRequest();
			} catch(e) {
				req = false;
			}
		// branch for IE/Windows ActiveX version
		}
		else if (window.ActiveXObject) {
			try {
				req = new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch (e) {
				try {
					req = new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch (e) {
					req = false;
				}
			}
		}
		if (req) {
			document.getElementById('more' + eleId).innerHTML = 'Loading...';
			elementId = eleId;
			req.onreadystatechange = processReqChange;
			req.open("GET", url, true);
			req.send("");
		}
	}
}

function processReqChange() {
    // only if req shows "loaded"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
            // ...processing statements go here...
			document.getElementById('more' + elementId).innerHTML = '';
			document.getElementById('i' + elementId).innerHTML += req.responseText;
        }
		else {
            alert("Sorry, we encountered a problem trying to retrieve more pictures. Please try again later.");
        }
		elementId = -1;
    }
}