/* 
 * Module - Job Creations Javascript
 * Version - 0.02
 * Created - 01 March 2007
 * Created by - Dewald Carelse
 * Last updated - 14 March 2007
 * Updated by - Dewald Carelse
 * Description - 
 */

/*
 * String trim function
 */
function trim(string) {
	while (string.substring(0,1) == ' ') {
		string = string.substring(1, string.length);
	}
	while (string.substring(string.length-1, string.length) == ' ') {
		string = string.substring(0, string.length-1);
	}
	return string;
}

/*
 *
 */
function change_required_label(element) {
	if (trim(element.value) != "") {
		document.getElementById("label_"+element.name).className = "";
	}
	else {
		document.getElementById("label_"+element.name).className = "required";
	}
}

/*
 * Function to reset the labels of a form's required elements
 */
function refresh_required_labels(form_id) {
	// get array of all elements in form
	elements = document.getElementById(form_id).elements;

	// call the onclick events of all the elements to reset there
	//  label's classes
	for (i = 0; i < elements.length; i++) {
		if (elements[i].className.indexOf("required_element") >= 0) { 
			document.getElementById(elements[i].id).onclick();
		}
	}
}

/*
 * Add onclick, onblur and onkeyup handlers to elements with class="required_element", so I
 * don't have to do it for each element manually
 */
function add_required_handlers() {
	// get all input elements
	elements = document.getElementsByTagName('input');

	// loop through elements, and add events to the ones belonging to a certain class
	for (i = 0; i < elements.length; i++) {
		if (elements[i].className.indexOf("required_element") >= 0) { 
			elements[i].onclick = function(){
				change_required_label(this);
			}
			elements[i].onblur = function(){
				change_required_label(this);
			}
			elements[i].onkeyup = function(){
				change_required_label(this);
			}
		}
	}
	
	// get all textarea element
	elements = document.getElementsByTagName('textarea');
	
	// loop through elements, and add events to the ones belonging to a certain class
	for (i = 0; i < elements.length; i++) {
		if (elements[i].className.indexOf("required_element") >= 0) { 
			elements[i].onclick = function(){
				change_required_label(this);
			}
			elements[i].onblur = function(){
				change_required_label(this);
			}
			elements[i].onkeyup = function(){
				change_required_label(this);
			}
		}
	}
}

/*
 * Confirm the delete of an item
 */
function confirm_delete(message, delete_url) {
	if (confirm(message)) {
		window.location = delete_url;
	}
}
