// Print function
function printit(){
    if (window.print) {
        window.print() ;
    } else {
        alert('Please use the print feature of your browser.');
    }
} 
// popups
function popUp(objLink, h, w) {
    window.open(objLink.href, "popup", "width="+w+",height="+h+",scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no");
}

// bookmark function
function bookmark(url,title){
  if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
  window.external.AddFavorite(url,title);
  } else if (navigator.appName == "Netscape") {
    window.sidebar.addPanel(title,url,"");
  } else {
    alert("Please use your browser to bookmark this page manually.");
  }
}

//Empty form fields
function clearText(objField){
    if (objField.defaultValue==objField.value)
    	objField.value = "";
}
function resetText(objField){
    if (objField.value=="")
    	objField.value = objField.defaultValue;
}

function determineCost() {
	var intCost = 0;

	
	if ($("#NAIOP_reserved").attr('value')) {
		intCost += $("#NAIOP_reserved").attr('value') * $("#EventRegistration_NAIOP_reserved_price").attr('value');
	}
	
	if ($("#Nonmember_reserved").attr('value')) {
		intCost += $("#Nonmember_reserved").attr('value') * $("#EventRegistration_Nonmember_reserved_price").attr('value');
	}
	
	if ($("#memberTable").attr('value')) {
		intCost += $("#memberTable").attr('value') * $("#EventRegistration_MemberTable_price").attr('value');
	}
	
	if ($("#nonmemberTable").attr('value')) {
		intCost += $("#nonmemberTable").attr('value') * $("#EventRegistration_NonMemberTable_price").attr('value');
	}
	
	
	
	$("#total_price").attr('value', CurrencyFormatted(intCost));
}

function CurrencyFormatted(amount)
{
	var i = parseFloat(amount);
	if(isNaN(i)) { i = 0.00; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) { s += '.00'; }
	if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
	s = minus + s;
	return s;
}
// end of function CurrencyFormatted()

strSubmitButton = "";

function SetSubmitButton(strButtonName)
{
    strSubmitButton = strButtonName;
}

// form validation
function validate(theForm, strSending)
{
   
    if (strSubmitButton == "btnSearch") return true;
    
	var strFormID = theForm.id;
    var blnError = false;
    var strMessage = "Please complete all required fields.";
    var intFirstblank = -1;
    var strButtonTxt;
	
	if(!strSending) {
		strButtonTxt = "";
	} else {
		strButtonTxt = $("#" + strFormID + " :submit").attr('value');
		$("#" + strFormID + " :submit").addClass('disabledbutton');
		$("#" + strFormID + " :submit").attr('disabled', 'disabled');
		$("#" + strFormID + " :submit").attr('value', strSending);
	}
	
    var arrReqFields = $("#" + strFormID + " input.required, #" + strFormID + " select.required, #" + strFormID + " textarea.required, #" + strFormID + " .required :checkbox");
    for (var i = 0; i < arrReqFields.length; i++) {
       if (arrReqFields[i].type == 'checkbox')
       {
           if (!(arrReqFields[i].checked))
           {
                $(arrReqFields[i]).parent().addClass('error');
                if ($(arrReqFields[i]).parent().hasClass('checkradio'))
                {
                    $(arrReqFields[i]).parent().parent().addClass('error');
                }
                blnError = true;
                
                strMessage = "Please complete all required fields.";
                if (intFirstblank == -1)
                {
                    intFirstblank = i;
                }
                               
           }
           else {
               $(arrReqFields[i]).removeClass('error');
               $(arrReqFields[i]).parent().removeClass('error');
               $(arrReqFields[i]).parent().parent().removeClass('error');
            }
       }
       else if(!(arrReqFields[i].value))
       {
            $(arrReqFields[i]).addClass('error');
            blnError = true;
            if (intFirstblank == -1)
            {
                intFirstblank = i;
            }            
       }
       else if ($(arrReqFields[i]).hasClass('email'))
       {
           if (!(emailvalidate(arrReqFields[i].value, arrReqFields[i])))
           {
               $(arrReqFields[i]).addClass('error');
               blnError = true;
               if (intFirstblank == -1)
                {
                    intFirstblank = i;
                    strMessage = "Please enter a valid email address."
                }
           }
           else {
               $(arrReqFields[i]).removeClass('error');
               strMessage = "Please complete all required fields.";
            } 
       }
       else
       {
           $(arrReqFields[i]).removeClass('error');
       }
     }
     
   var arrReqRadio = $("#" + strFormID + " .required :radio");
    var blnRadioError = false;
    for (var j = 0; j < arrReqRadio.length; j++) {
        if (j == 0)
        {
            blnRadioError = true;
        }
        
         if ((arrReqRadio[j].checked))
         {
             blnRadioError = false;
         }
    }
    
    if (blnRadioError)
    {    
        $(arrReqRadio[0]).parent().addClass('error');
        if ($(arrReqRadio[0]).parent().hasClass('checkradio'))
        {
            $(arrReqRadio[0]).parent().parent().addClass('error');
        }
        blnError = true;
    } 
    else
    {
       $(arrReqRadio[0]).removeClass('error');
       $(arrReqRadio[0]).parent().removeClass('error');
       $(arrReqRadio[0]).parent().parent().removeClass('error');
    }
	
    if (blnError)
    {
        alert(strMessage);
        if ( arrReqFields[intFirstblank])
        {
            arrReqFields[intFirstblank].focus();
        }
		
		if(strButtonTxt != "") {
			$("#" + strFormID + " :submit").removeClass('disabledbutton');
			$("#" + strFormID + " :submit").removeAttr('disabled');
			$("#" + strFormID + " :submit").attr('value', strButtonTxt);
		}
        return false;
    }
    
}
// http://docs.jquery.com/Plugins/Validation/Methods/email
function emailvalidate(value, element) {
    return /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(element.value);
}