function fieldAction(obj,act,init) {
	switch (act) {
		case 'focus':
			obj.select();
			/*
			if (obj.value==init) {
				obj.value='';
			}
			*/
			break;
		case 'blur':
			if (obj.value=='') {
				obj.value=init;
			}
			break;
		default:
	}
}

function optin_action(obj,act,init) {
	switch (act) {
		case 'focus':
			if (obj.value==init) { obj.value=''; }
			break;
		case 'blur':
			if (obj.value=='') { obj.value=init; }
			break;
	}
}


function elm(obj) {
	return document.getElementById(obj);
}




function winWidth() {
	if (self.innerWidth)
		return self.innerWidth;
	else if (document.documentElement &&
document.documentElement.clientWidth)
		return document.documentElement.clientWidth;
	else if (document.body)
		return document.body.clientWidth;
}
function winHeight() {
	if (self.innerHeight)
		return self.innerHeight;
	else if (document.documentElement &&
document.documentElement.clientHeight)
		return document.documentElement.clientHeight;
	else if (document.body)
		return document.body.clientHeight;
}


function bookmark(url, title){

	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);
	}

}



function goURL(s) {       
	//var d = s.options[s.selectedIndex].value
    //window.top.location.href = d
    //s.selectedIndex=0
    window.top.location.href = s
}

function showHide(obj) { //onclick either shows or hides the current dropout
	var el = document.getElementById(obj);
	var ar = document.getElementById("adminMenu").getElementsByTagName("span");
	if(el.style.display != "block"){ 
		el.style.display = "block";
	} else {
		el.style.display = "none";
	}
}

function openWin(theURL,winName,sizes) {
	window.open(theURL,winName,sizes);
}

function swapImageViewed(image){
	//var newImage = selectedView + currentImage;
	window.document.imageViewed.src = '../images/catalog/'+image;
}

function userFormCheck(formobj){
	// name of mandatory fields
	var fieldRequired = Array("name", "username", "password", "password2", "permission", "email");
	// field description to appear in the dialog box
	var fieldDescription = Array("Name", "Username", "Password", "Verify Password", "permission", "Email");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}





function number_format( number, decimals, dec_point, thousands_sep ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://crestidg.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)    
    // *     example 1: number_format(1234.5678, 2, '.', '');
    // *     returns 1: 1234.57     
 
    var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;
    var d = dec_point == undefined ? "," : dec_point;
    var t = thousands_sep == undefined ? "." : thousands_sep, s = n < 0 ? "-" : "";
    var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
    
    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
}
