/*
*	use with onKeyPress event to e.g. submit a form
*/
function do_on_enterkey( event, object, func )
{   
	var code = 0;

	if (document.layers) {
		code = event.which; /* NS4 */
	}
	else {
		code = event.keyCode;
	}
	if (code==13) {
		if ( func ) {
			Event.stop( event );
			return func( );
		}
		else {
			object.form.submit( );
		}
	}
}	


function submit_once(formObject, confMsg) {  
	if ( formObject.alreadySubmitted ) {   
		alert('Your request had already been submitted, please be patient.');
		window.location = document.URL;
	} else {
		formObject.alreadySubmitted = true;
		//  this onsubmit() is extremely necessary for the rich text fields: if omitted, their content will not be saved
		if ( formObject.onsubmit ) {
			formObject.onsubmit( );
		}
	
		formObject.submit();
	}
}


function pad_number( num, total_length ) {
	
	var new_number = num.toString( );

	while ( new_number.length < total_length ) {
		new_number = '0' + new_number;
	}
	
	return new_number;
}


function toggle_visibility ( element_id ) {

	var element  =  document.getElementById( element_id );

	if ( ! element ) {
		return false;
	}

	if ( element.style.display == "none" ) {
		element.style.display  =  "";
	}
	else {
		element.style.display  =  "none";
	}

	return false;

}

function get_selected(el) {
	if (el.selectedIndex == -1) return '';
	return el.options[el.selectedIndex].value;
}

function get_selected_text(el) {
	if (el.selectedIndex == -1) return '';
	return el.options[el.selectedIndex].text;
}

function set_selected(el, value) {
	if (!el || ! el.options ) return;

	for ( var i=0; i < el.options.length; i++ ) {
		if ( el.options[i].value == value ) {
			el.selectedIndex = i;
			el.options[i].selected = 'selected';
			break;
		}

	}
}

