/***********************************************
* Data Springs Custom Javascript File
* Insert any custom client side javascript to be rendered for Dynamic Forms
* for demonstrations of Dynamic Forms please visit: http://www.datasprings.com/Products/DNNModules/DynamicForms/DynamicFormsDemonstration1/tabid/754/Default.aspx
***********************************************/
function calcbanquet(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a30){
var MyTotal = 0;
var MyQuantity =0;

if (document.getElementById(a1) != undefined)
{

  if (document.getElementById(a1).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
       }
}

if (document.getElementById(a2) != undefined)
{
  if (document.getElementById(a2).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a3) != undefined)
{
  if (document.getElementById(a3).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a4) != undefined)
{
  if (document.getElementById(a4).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a5) != undefined)
{
  if (document.getElementById(a5).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a6) != undefined)
{
  if (document.getElementById(a6).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a7) != undefined)
{
  if (document.getElementById(a7).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a8) != undefined)
{
  if (document.getElementById(a8).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a9) != undefined)
{
  if (document.getElementById(a9).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a10) != undefined)
{
  if (document.getElementById(a10).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a11) != undefined)
{
  if (document.getElementById(a11).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a12) != undefined)
{
  if (document.getElementById(a12).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a13) != undefined)
{
  if (document.getElementById(a13).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a14) != undefined)
{
  if (document.getElementById(a14).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a15) != undefined)
{
  if (document.getElementById(a15).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a16) != undefined)
{
  if (document.getElementById(a16).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a17) != undefined)
{
  if (document.getElementById(a17).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a18) != undefined)
{
  if (document.getElementById(a18).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a19) != undefined)
{
  if (document.getElementById(a19).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a20) != undefined)
{
  if (document.getElementById(a20).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a21) != undefined)
{
  if (document.getElementById(a21).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a22) != undefined)
{
  if (document.getElementById(a22).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a23) != undefined)
{
  if (document.getElementById(a23).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a24) != undefined)
{
  if (document.getElementById(a24).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a25) != undefined)
{
  if (document.getElementById(a25).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a26) != undefined)
{
  if (document.getElementById(a26).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a27) != undefined)
{
  if (document.getElementById(a27).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}
if (document.getElementById(a28) != undefined)
{
  if (document.getElementById(a28).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

if (document.getElementById(a29) != undefined)
{
  if (document.getElementById(a29).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}


if (document.getElementById(a30) != undefined)
{
  if (document.getElementById(a30).checked == true) {   
        MyTotal = (MyTotal + 50);
        MyQuantity = (MyQuantity +1)
         }
}

document.getElementById('dnn_ctr678_DynamicForms_Responses_04f93e58-a865-45b4-bd80-183d333efa70').value = toTwoDecimals($(MyTotal));

document.getElementById('GrandTotalBanquet').innerHTML = 'Banquet Total Due $' + addCommas(toTwoDecimals($(MyTotal)));
}

/***********************************************
* This function call is used to add validate that a field is an integer. 
* Example use: validateNumber($(DynamicForms_ShortFieldName))
***********************************************/


function validateNumber(fieldvalue){
if (!isNaN(fieldvalue) && (fieldvalue>0))
return true;
else
return false;
}


function seteventdues(Amount1, Qt1, kidsval, adultsval, youthval, seniorval, familydiscount){

var MyTotal = 0;
var MyQuantity = 0;



if (validateNumber(kidsval) ==true)
{
MyTotal = MyTotal + (kidsval * 75.00);
MyQuantity = parseInt(MyQuantity) + parseInt(kidsval);

}

if (validateNumber(adultsval) ==true)
{
MyTotal = MyTotal + (adultsval * 125.00);
MyQuantity = parseInt(MyQuantity) + parseInt(adultsval);
}

if (validateNumber(youthval) ==true)
{
MyTotal =  MyTotal + (youthval * 100.00);
MyQuantity = parseInt(MyQuantity) + parseInt(youthval);
}


if (validateNumber(seniorval) ==true)
{
MyTotal = MyTotal + (seniorval * 75.00);
MyQuantity = parseInt(MyQuantity) + parseInt(seniorval);

}


if (MyQuantity >= 20) {
MyTotal = MyTotal - (MyTotal * .10)
}



if (MyQuantity >= 9) {
if (familydiscount ==true) {
alert('Sorry, the family discount only applies if you have 8 attendees or less');
}

}
else
{
if (familydiscount ==true) {
MyTotal = MyTotal - (MyTotal * .25)

}

}


$(Amount1).value = toTwoDecimals(MyTotal);
$(Qt1).value = MyQuantity;

}


/***********************************************
* This function call is used to add two decimal places to a field. For example 50.4 would be returned as 50.40 
* Example use: toTwoDecimals($(DynamicForms_ShortFieldName))
***********************************************/

function toTwoDecimals(n) {
  var s = "" + Math.round(n * 100) / 100
  var i = s.indexOf('.')
  if (i < 0) return s + ".00"
  var t = s.substring(0, i + 1) + s.substring(i + 1, i + 3)
  if (i + 2 == s.length) t += "0"
  return t
}


/***********************************************
* This function call is used to add commas to a number. For example 100000 would be returned as 100,000 
* Example use: addCommas($(DynamicForms_ShortFieldName))
***********************************************/

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}


/***********************************************
* This function call is used to return the value of a radio button. This function can be called for using calculations with radio buttons
* Example use: funcRadioCalc($(ShortFieldName_FieldID))
***********************************************/


function  funcRadioCalc(RadioName)

 {
var chkList1= document.getElementById (RadioName);
var arrayOfCheckBoxes= chkList1.getElementsByTagName("input");
for(var i=0;i<arrayOfCheckBoxes.length;i++)
{

if (arrayOfCheckBoxes[i].checked) {
return arrayOfCheckBoxes[i].value;
}
  }
}




/***********************************************
* This function call is used to calculate the total number of characters and notify the user that they exceeded their limitations. For more details
*please  visit this URL: http://www.datasprings.com/Products/DNNModules/DynamicForms/DynamicFormsDemonstration6/tabid/842/Default.aspx
***********************************************/


 function countChars(dId,txtVal,limit)
  {
      var totalLen = txtVal.length + 1;
 
      if (totalLen < limit)
      {
          document.getElementById(dId).innerHTML = "<font color='red'>You have used " + totalLen + " of " + limit + " characters available.<br>You have " + (limit - totalLen) + " characters remaining.</font>"; 
      }
      else
      {
          document.getElementById(dId).innerHTML = "<font color='red'>You have exceeded the character limit for this field.</font>";
      }
  }




/***********************************************
* This function call will format the number into a currency format
***********************************************/



function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+
num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + '$' + num + '.' + cents);
}



function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
{
alert(alerttxt);return false;
}
else
{
return true;
}
}
} 
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
if (apos<1||dotpos-apos<2) 
{alert(alerttxt);return false;}
else {return true;}
}
}

function CalculateCheckBoxList(CheckBoxList) {
var objChkBoxLst = document.getElementById(CheckBoxList);
if(objChkBoxLst) {
var objChkBoxes = objChkBoxLst.getElementsByTagName('input');
var objChkLabels = objChkBoxLst.getElementsByTagName('label');
var i; var numSum = 0;            
for(i=0;i<objChkBoxes.length;i++) {                    
if(objChkBoxes[i].checked) {                    
numSum += GetLabelValue(objChkLabels, objChkBoxes[i].id);
}
}
}
numSum = Math.round(numSum * 100)/100;                
return (numSum);
}
function GetLabelValue(objLabelList, strForValue) {
if(objLabelList) {
var i; var numActualVal; var strElemForValue;
for(i=0;i<objLabelList.length;i++) {
if(objLabelList[i].htmlFor)
strElemForValue = objLabelList[i].htmlFor;
else
strElemForValue = objLabelList[i].getAttribute('for');
if(strElemForValue==strForValue) {                        
numActualVal = objLabelList[i].innerHTML;
if(numActualVal.indexOf('$')!=-1); {
numActualVal = numActualVal.substring(numActualVal.indexOf('$')+1, numActualVal.length);
} 
return(numActualVal*1);
}
}
}
return(0);
}
function CalculateCheckBoxListValues(CheckBoxList, CheckBoxValField) {
var objChkBoxLst = document.getElementById(CheckBoxList);
var objChkBoxVals = document.getElementById(CheckBoxValField);
var arrChkBoxVals = '';
if(objChkBoxVals)
arrChkBoxVals = objChkBoxVals.value.split('|');
if(objChkBoxLst) {
var objChkBoxes = objChkBoxLst.getElementsByTagName('input');                
var i; var numSum = 0;            
for(i=0;i<objChkBoxes.length;i++) {                    
if(objChkBoxes[i].checked) {                    
numSum += GetCBValue(i, arrChkBoxVals);
}
}
}
numSum = Math.round(numSum * 100)/100;                
return (numSum);
}
function GetCBValue(intIndex, arrChkValues) {            
if(arrChkValues) {
var i;
var arrTempVals;
var numRetVal = 0;
for(i=0;i<arrChkValues.length;i++) {
arrTempVals = arrChkValues[i].split(':');
if(arrTempVals) {
if(arrTempVals[0]==intIndex) {
numRetVal = arrTempVals[1];
if(numRetVal.indexOf('$')!=-1); {
numRetVal = numRetVal.substring(numRetVal.indexOf('$')+1, numRetVal.length);
} 
return(numRetVal*1);
}                        
}
}
}
return(0);
}      
/***********************************************
* Show Hint script-  Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/
		
var horizontal_offset="9px" //horizontal offset of hint box from anchor link

/////No further editting needed

var vertical_offset="0" //horizontal offset of hint box from anchor link. No need to change.
var ie=document.all
var ns6=document.getElementById&&!document.all

function getposOffset(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
}

function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function clearbrowseredge(obj, whichedge){
var edgeoffset=(whichedge=="rightedge")? parseInt(horizontal_offset)*-1 : parseInt(vertical_offset)*-1
if (whichedge=="rightedge"){
var windowedge=ie && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-30 : window.pageXOffset+window.innerWidth-40
dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure+obj.offsetWidth+parseInt(horizontal_offset)
}
else{
var windowedge=ie && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure-obj.offsetHeight
}
return edgeoffset
}

function showhint(menucontents, obj, e, tipwidth){
if ((ie||ns6) && document.getElementById("hintbox")){
dropmenuobj=document.getElementById("hintbox")
dropmenuobj.innerHTML=menucontents
dropmenuobj.style.left=dropmenuobj.style.top=-500
if (tipwidth!=""){
dropmenuobj.widthobj=dropmenuobj.style
dropmenuobj.widthobj.width=tipwidth
}
dropmenuobj.x=getposOffset(obj, "left")
dropmenuobj.y=getposOffset(obj, "top")
dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+obj.offsetWidth+"px"
dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+"px"
dropmenuobj.style.visibility="visible"
obj.onmouseout=hidetip
}
}

function hidetip(e){
dropmenuobj.style.visibility="hidden"
dropmenuobj.style.left="-500px"
}

function createhintbox(){
var divblock=document.createElement("div")
divblock.setAttribute("id", "hintbox")
document.body.appendChild(divblock)
}

if (window.addEventListener)
window.addEventListener("load", createhintbox, false)
else if (window.attachEvent)
window.attachEvent("onload", createhintbox)
else if (document.getElementById)
window.onload=createhintbox





































