function toggleCheckbox(checkbox_id)
{
	if (jQuery('#'+checkbox_id).attr('checked')==true) {
		jQuery('#'+checkbox_id).attr('checked', false);
	} else {
		jQuery('#'+checkbox_id).attr('checked', true);
	}
	return;
}

function encode_utf8( s )
{
  return unescape( encodeURIComponent( s ) );
}

function decode_utf8( s )
{
  return decodeURIComponent( escape( s ) );
}

function closeTabs(tab) {
	
	var elems = getElementsByClass('submenu');
	
	for (var i = 0; i < elems.length; i++) {
		if (tab!=elems[i].id) {
			hide(elems[i].id);
		}
	}
	
	return;
	
}

function openWin(loc) {
	window.open(loc,'popupwin','height=600,width=890,top=200,left=200,scrollbars=yes');
	return;
}

function selectAllCheckboxes(selectAllID,boxName) {

	var checkboxes = document.getElementsByName(boxName);
	
	if (document.getElementById(selectAllID).checked==true) {
		for (var i = 0; i < checkboxes.length; i++) {
			checkboxes[i].checked=true;
		}
	} else {
		for (var i = 0; i < checkboxes.length; i++) {
			checkboxes[i].checked=false;
		}
	}
	
	return;

}

function setValue(element_id,val) {
	//if (element_id && val) {
	//if (typeof document.getElementById(element_id).value != 'undefined') {
		document.getElementById(element_id).value=val;
	//}
}

function selectAll(selectBox,selectAll) {
	// have we been passed an ID
	if (typeof selectBox == "string") {
		selectBox = document.getElementById(selectBox);
	}
	// is the select box a multiple select box?
	if (selectBox.type == "select-multiple") {
		for (var i = 0; i < selectBox.options.length; i++) {
			selectBox.options[i].selected = selectAll;
		}
	}
}

function removeAllOptions(selectbox)
{
	var i;
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		selectbox.remove(i);
	}
}

function handleMissingImage(imageObj,size) {
	if (!size) {
		size=100;
	}
	imageObj.src = "/images/no-image.jpg";
}

function areYouSure(url,form_id) {
	if (confirm('Are you sure you want to do that?')) {
		if (!form_id) {
			document.location.href=url;
		} else {
			document.getElementById(form_id).submit();
		}
	}
}

function showHide(layer) {
	ls = document.getElementById(layer).style;
	if (ls.display=='block') {
		ls.display='none';
	} else {
		ls.display='block';
	}
	return;
}

function show(layer) {
	ls = document.getElementById(layer).style;
	ls.display='block';
	return;
}

function hide(layer) {
	ls = document.getElementById(layer).style;
	ls.display='none';
	return;
}

/***********************************************
* Bookmark site script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

/* Modified to support Opera */
function bookmarksite(title,url){
if (window.sidebar) // firefox
	window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ // opera
	var elem = document.createElement('a');
	elem.setAttribute('href',url);
	elem.setAttribute('title',title);
	elem.setAttribute('rel','sidebar');
	elem.click();
} 
else if(document.all)// ie
	window.external.AddFavorite(url, title);
}

/* Taken from http://www.dustindiaz.com/getelementsbyclass/ */
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}