function toggleDiv(divID) {
    div = document.getElementById(divID);
   if (div.style.display == "") { div.style.display = "none"; }
   else { div.style.display = ""; } 
}

//set login or logout
function setLoginAction(direction) {
	var login = document.getElementById("loginAction");
	login.value = direction;
	document.aspnetForm.submit();
}

//so can click enter when logging in
function fnEnterKey() {
	if (event.keyCode == 13) {
		event.cancelBubble = true;
		event.returnValue = false;
		document.getElementById('btnLogin').click();
	}
}

//restrict number of chars in a text area
function ismaxlength(obj){
	var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
	if (obj.getAttribute && obj.value.length>mlength)
	obj.value=obj.value.substring(0,mlength)
}

//update day of wek label
function updateDayOfWeek(controlName, control) {
	var prefix = control.id.substring(0, control.id.indexOf("_")+1);
	
	var year = document.getElementById(prefix+"ddl"+controlName+"Year").value;
	var month = document.getElementById(prefix+"ddl"+controlName+"Month").value-1;
	var date = document.getElementById(prefix+"ddl"+controlName+"Date").value;
	
	if (year != "" && month != -1 && date != "") {
		var theDays = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]
		var theDate = new Date();
		theDate.setFullYear(year, month, date);
		document.getElementById("div"+controlName+"DayOfWeek").innerHTML = theDays[theDate.getDay()];
	}
}

//update day or wek label
function updateDayOfWeekNew(controlName) {	
	var year = document.getElementById(controlName+"_ddlYear").value;
	var month = document.getElementById(controlName+"_ddlMonth").value-1;
	var date = document.getElementById(controlName+"_ddlDay").value;
	
	if (year > 0 && month >= 0 && date > 0) {
		var theDays = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]
		var theDate = new Date();
		theDate.setFullYear(year, month, date);
		document.getElementById(controlName+"_divDayOfWeek").innerHTML = theDays[theDate.getDay()];
		document.getElementById(controlName+"_ddlYear").value = theDate.getFullYear();
		document.getElementById(controlName+"_ddlMonth").value = theDate.getMonth()+1;
		document.getElementById(controlName+"_ddlDay").value = theDate.getDate();
	}
	else { document.getElementById(controlName+"_divDayOfWeek").innerHTML = ""; }
}


function getRadioValue(controlName) {
    var field = document.getElementById(controlName+"_field");
    var selectedValue = "";
    var radios = field.getElementsByTagName("input");
    for (var i=0; i< radios.length; i++) {
        if (radios[i].checked) { 
            selectedValue = radios[i].value; 
            break;
       }
    }
    return selectedValue;
}
function setRadioValue(controlName, value) {
    var field = document.getElementById(controlName+"_field");
    var radios = field.getElementsByTagName("input");
    for (var i=0; i< radios.length; i++) {
        radios[i].checked = (radios[i].value == value);
    }
}

//hides or shows controls based on value of another control
function displayControls(controlName, values, type) {
   var field = document.getElementById(controlName+"_field");
   var selectedValue = "";
   
   //get radio button selected value
   if (type == "radio") {
        var radios = field.getElementsByTagName("input");
        for (var i=0; i< radios.length; i++) {
            if (radios[i].checked) { 
                selectedValue = radios[i].value; 
                break;
           }
        }
   } 

   //get radio button selected value
   if (type == "dropdown") { selectedValue = field.value; } 

    //loop through values
    var valArray = values.split("|");
    var valToCheck = ""; 
    for (var i=0; i < valArray.length; i++) {
        valToCheck = valArray[i].substring(0, valArray[i].indexOf(":"));

       //check if match on value 
        if (valToCheck == selectedValue) {
            var hide = valArray[i].substring(valToCheck.length+1, valArray[i].indexOf(":", valToCheck.length+1));
            var show = valArray[i].substring(valToCheck.length+hide.length+2);
            
            //loop through controls to hide
            var controls = hide.split(",");
            for (var j=0; j < controls.length; j++) {
                if (eval(document.getElementById(controls[j]+"_control"))) { document.getElementById(controls[j]+"_control").style.display = 'none'; }
            }
       
            //loop through controls to show
            controls = show.split(",");
            for (var k=0; k < controls.length; k++) {
                if (eval(document.getElementById(controls[k]+"_control"))) { document.getElementById(controls[k]+"_control").style.display = ''; }
            }
            
        } 
    }
}


//function showCalendar
function showCalendar(calendar, controlName, today) {
    var d = document.getElementById(controlName+"_ddlDay").value;
    var m = document.getElementById(controlName+"_ddlMonth").value;
    var y = document.getElementById(controlName+"_ddlYear").value;
   if (d != "" && m != "" && y != "") { today =  y+"-"+m+"-"+d; }
    calendar.showCalendar(controlName+"CalIcon", today); 
}

Number.prototype.toDecimals=function(n){
    n=(isNaN(n))?
        2:
        n;
    var
        nT=Math.pow(10,n);
    function pad(s){
            s=s||'.';
            return (s.length>n)?
                s:
                pad(s+'0');
    }
    return (isNaN(this))?
        this:
        (new String(
            Math.round(this*nT)/nT
        )).replace(/(\.\d*)?$/,pad);
}


