function doConfirmDelete(msg, thisLink) {
  var is_confirmed = confirm(msg);
  if (is_confirmed) {
		if(thisLink) {
			window.open(thisLink,'popup','width=1,height=1,top=1,left=1');
		}
		return true;
  } else {
		return false;
	}
}

function getfileextension(fileName) {
	if(!fileName || fileName.length == 0) return "";
	var dot = fileName.lastIndexOf(".");
	if(dot == -1) return "";
  var extension = fileName.substr(dot + 1,fileName.length);
	extension = extension.toLowerCase();
	return extension;
} 

function validate_form(formField, validationType, thisError, fieldRequired) {
	if(formField.name) {
		var errorFieldName = formField.name + "_error";
		var errorField1 = document.getElementById(errorFieldName);
	} else {
		var errorFieldName = formField + "_error";
		var errorField1 = document.getElementById(errorFieldName);
	}
	switch(validationType) {
		case 'file':
			errorField1.innerHTML = '';
			errorField1.style.display = 'none';
			break;
		case 'fileimage':
			errorField1.innerHTML = '';
			errorField1.style.display = 'none';
			if(fieldRequired && !formField.value) {
				errorField1.innerHTML = 'ERROR: This field is required.';
				errorField1.style.display = 'block';
			} else {
				if(formField.value) {
					var fileExtension = getfileextension(formField.value);
					if(fileExtension != 'jpg' && fileExtension != 'jpeg' && fileExtension != 'gif' && fileExtension != 'png') {
						errorField1.innerHTML = 'ERROR: Only .jpg, .gif or .png files allowed here.';
						errorField1.style.display = 'block';
					}
				}
			}
			break;
		case 'fileflash':
			errorField1.innerHTML = '';
			errorField1.style.display = 'none';
			if(fieldRequired && !formField.value) {
				errorField1.innerHTML = 'ERROR: This field is required.';
				errorField1.style.display = 'block';
			} else {
				if(formField.value) {
					var fileExtension = getfileextension(formField.value);
					if(fileExtension != 'swf') {
						errorField1.innerHTML = 'ERROR: Only .swf (flash) files allowed here.';
						errorField1.style.display = 'block';
					}
				}
			}
			break;
			break;
		case 'dropdown':
			if(fieldRequired && !formField.value) {
				errorField1.innerHTML = thisError;
				errorField1.style.display = 'block';
			} else {
				errorField1.innerHTML = '';
				errorField1.style.display = 'none';
			}
			break;
		case 'datedropdown':
			if(fieldRequired && (!document.getElementById(formField + '_day').value || !document.getElementById(formField + '_month').value || !document.getElementById(formField + '_year').value)) {
				errorField1.innerHTML = thisError;
				errorField1.style.display = 'block';
			} else {
				errorField1.innerHTML = '';
				errorField1.style.display = 'none';
			}
			break;
		case 'email':
			if(formField.value.length >= fieldRequired) {
				var re = new RegExp(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/);
				if(formField.value.match(re)) {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
				} else {
					errorField1.innerHTML = thisError;
					errorField1.style.display = 'block';
				}
			} else if(fieldRequired) {
					errorField1.innerHTML = 'ERROR: This field is required.';
					errorField1.style.display = 'block';
			} else {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
			}
			break;
		case 'username':
			if(formField.value.length >= fieldRequired) {
				var re = new RegExp(/^[\w\-]+$/);
				if(formField.value.match(re)) {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
				} else {
					errorField1.innerHTML = thisError;
					errorField1.style.display = 'block';
				}
			} else if(fieldRequired) {
					errorField1.innerHTML = 'ERROR: Field length of ' + fieldRequired + ' or more characters required.';
					errorField1.style.display = 'block';
			} else {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
			}
			break;
		case 'textfiltered':
			if(formField.value.length >= fieldRequired) {
				var re = new RegExp(/^[a-zA-Z0-9_\.\-\'!, ]+$/);
				if(formField.value.match(re)) {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
				} else {
					errorField1.innerHTML = thisError;
					errorField1.style.display = 'block';
				}
			} else if(fieldRequired) {
					errorField1.innerHTML = 'ERROR: Field length of ' + fieldRequired + ' or more characters required.';
					errorField1.style.display = 'block';
			} else {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
			}
			break;
		case 'text':
			if(formField.value.length >= fieldRequired) {
				errorField1.innerHTML = '';
				errorField1.style.display = 'none';
			} else if(fieldRequired) {
					errorField1.innerHTML = 'ERROR: Field length of ' + fieldRequired + ' or more characters required.';
					errorField1.style.display = 'block';
			} else {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
			}
			break;
		case 'textprice':
			if(formField.value.length >= fieldRequired) {
				var re = new RegExp(/^-?\d+\.?\d{0,2}$/);
				if(formField.value.match(re)) {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
				} else {
					errorField1.innerHTML = thisError;
					errorField1.style.display = 'block';
				}
			} else if(fieldRequired) {
					errorField1.innerHTML = 'Required Field';
					errorField1.style.display = 'block';
			} else {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
			}
			break;
		case 'password':
			if(formField.value.length >= fieldRequired) {
				errorField1.innerHTML = '';
				errorField1.style.display = 'none';
			} else if(fieldRequired) {
					errorField1.innerHTML = 'ERROR: Field length of ' + fieldRequired + ' or more characters required.';
					errorField1.style.display = 'block';
			} else {
					errorField1.innerHTML = '';
					errorField1.style.display = 'none';
			}
			break;
		case 'passwordtest':
			if(document.getElementById(fieldRequired).value == formField.value) {
				errorField1.innerHTML = '';
				errorField1.style.display = 'none';
			} else {
					errorField1.innerHTML = 'ERROR: Passwords must match.';
					errorField1.style.display = 'block';
			}
			break;
		case 'submit':
			var errorElem = document.getElementsByTagName('div');
			var reError = new RegExp(/_error$/);
			for(var i=0;i<errorElem.length;i++) {
				if(errorElem[i].name) {
					if(errorElem[i].name.match(reError)) {
						if(errorElem[i].style.display == 'block') {
							if(errorElem[i].innerHTML) {
								alert(thisError);
								return false;
							}
						}
					}
				}
			}
			break;
	}

}

function selector_form(formField) {
	var thisName = formField.name;
	var thisElement = thisName + '_' + formField.value;
	// disable all entries
	for (i in arraySelectorGroups) {	
		var contentDiv = document.getElementById(arraySelectorGroups[i]);
		contentDiv.style.display = 'none';
		var containedDivElements = contentDiv.getElementsByTagName("div");
		for (var i = 0; i < containedDivElements.length; i++) {
			var elem = containedDivElements[i];
			elem.style.display = 'none';
		}
	}
	// now display the entries inside the selected element
	var contentDiv = document.getElementById(thisElement);
	if(contentDiv) {
		contentDiv.style.display = '';
		var containedDivElements = contentDiv.getElementsByTagName("div");
		for (var i = 0; i < containedDivElements.length; i++) {
			var elem = containedDivElements[i];
			elem.style.display = 'block';
		}
	}
}
