  var contests = new Array("Jack and Jill", "MWLF Strictly ");
  var contestsCost = new Array(10, 20);
  var classes = new Array();
  var classesCost = new Array();

  var showClasses = false;
  var showContests = true;
  var showHousing = false;
  var showMerchandise = false;


  var showEvent    = true;

  var price_id     = -1;
  var discount_id  = -1;  
 
function validate() {
  errorstring = '';
  var elements = document.forms[0].elements;
  var required = new Array("fname", "lname", "email", "address1", "city", "state", "country");
  var reqNames = new Array("First Name", "Last Name", "Email", "Address", "City", "State", "Country"); 
	
  for (i=0;i<required.length;i++) {
    if (!elements[required[i]].value) 
      errorstring += "* " + reqNames[i] + " is a required field!<br/>\n";
  }


  //  Contest Validation
if (showContests && (contests.length > 0)) {
  for (i = 0; i < contests.length; i++) {
    var tName = contests[i]+"Partner";
    if (elements[contests[i]].checked & (elements[tName] != null) ) {
        //& (tName in elements) ) {
      if (elements[tName].value == "")
       errorstring += "* " + contests[i] + " requires a partner!<br/>\n"; 
    }
  }
}

  // Class Validation
  var classSelected = false;
if (showClasses && (classes.length > 0)) {
  for (i = 0; i < classes.length; i++) {
    if (elements[classes[i]].checked)
	classSelected = true;
  }
  if (! classSelected) 
    errorstring += "\n* You must select a class!<br/>";
}

  if (!(elements["gender"][0].checked || elements["gender"][1].checked)) {
	errorstring += "\n* You must select a gender!<br/>";
  } 

  return errorstring;
}

function updatePayment() {
  var elements = document.forms[0].elements;

// HIDE GENDER RELATED THINGS HERE, like JNJ  

// HIDE Residency for Follow, 8/3/2008
  if (elements["gender"][1].checked) {
//        elements["Residency Classes"].disabled = true;
//        elements["Residency Classes"].checked  = false;
  } else if (elements["gender"][0].checked) {
//        elements["Residency Classes"].disabled = false;
  }



// DETERMINE COSTS
  var cost = 0;
  var costEvent = 0.00; 
  var discount = 0;

function lookupCost(cost) {
if (cost == 41) {  price_id = cost; cost = 99; } 
else if (cost == 42) {  price_id = cost; cost = 109; } 
else if (cost == 43) {  price_id = cost; cost = 119; } 
else if (cost == 44) {  price_id = cost; cost = 129; } 
else if (cost == 45) {  price_id = cost; cost = 139; } 
else if (cost == 46) {  price_id = cost; cost = 10; } 
else if (cost == 47) {  price_id = cost; cost = 15; } 
else if (cost == 48) {  price_id = cost; cost = 15; } 
else if (cost == 49) {  price_id = cost; cost = 15; } 
else if (cost == 50) {  price_id = cost; cost = 15; } 
else if (cost == 51) {  price_id = cost; cost = 15; } 
else if (cost == 52) {  price_id = cost; cost = 15; } 
else if (cost == 53) {  price_id = cost; cost = 15; } 
else if (cost == 54) {  price_id = cost; cost = 15; } 
else if (cost == 55) {  price_id = cost; cost = 15; } 
else if (cost == 56) {  price_id = cost; cost = 15; } 
if (isNaN(cost)) cost = 0;
return cost; 
}

// Determine costs for group "Weekend_Package"

var v_Weekend_Package = elements["cost_Weekend_Package"];
if (v_Weekend_Package) { 
  cost_Weekend_Package = parseInt(elements["cost_Weekend_Package"].value);
} else {
  cost_Weekend_Package = 0;
}
if (isNaN(cost_Weekend_Package) && (v_Weekend_Package)) {
    for (i=0; i<elements["cost_Weekend_Package"].length; i++) {
      if (elements["cost_Weekend_Package"][i].checked) {
        cost_Weekend_Package = parseInt(elements["cost_Weekend_Package"][i].value);
      }
    }
  } else if (v_Weekend_Package) {
    if (elements["cost_Weekend_Package"].checked == false)  
      cost_Weekend_Package = 0;
  } else {
    cost_Weekend_Package = 0;
  }
price_id_Weekend_Package = cost_Weekend_Package;
cost_Weekend_Package = lookupCost(cost_Weekend_Package);


// Determine costs for group "the_Midwest_Lindyfest_Show"

var v_the_Midwest_Lindyfest_Show = elements["cost_the_Midwest_Lindyfest_Show"];
if (v_the_Midwest_Lindyfest_Show) { 
  cost_the_Midwest_Lindyfest_Show = parseInt(elements["cost_the_Midwest_Lindyfest_Show"].value);
} else {
  cost_the_Midwest_Lindyfest_Show = 0;
}
if (isNaN(cost_the_Midwest_Lindyfest_Show) && (v_the_Midwest_Lindyfest_Show)) {
    for (i=0; i<elements["cost_the_Midwest_Lindyfest_Show"].length; i++) {
      if (elements["cost_the_Midwest_Lindyfest_Show"][i].checked) {
        cost_the_Midwest_Lindyfest_Show = parseInt(elements["cost_the_Midwest_Lindyfest_Show"][i].value);
      }
    }
  } else if (v_the_Midwest_Lindyfest_Show) {
    if (elements["cost_the_Midwest_Lindyfest_Show"].checked == false)  
      cost_the_Midwest_Lindyfest_Show = 0;
  } else {
    cost_the_Midwest_Lindyfest_Show = 0;
  }
price_id_the_Midwest_Lindyfest_Show = cost_the_Midwest_Lindyfest_Show;
cost_the_Midwest_Lindyfest_Show = lookupCost(cost_the_Midwest_Lindyfest_Show);


// Determine costs for group "MWLF_TShirts"

var v_MWLF_TShirts = elements["cost_MWLF_TShirts"];
if (v_MWLF_TShirts) { 
  cost_MWLF_TShirts = parseInt(elements["cost_MWLF_TShirts"].value);
} else {
  cost_MWLF_TShirts = 0;
}
if (isNaN(cost_MWLF_TShirts) && (v_MWLF_TShirts)) {
    for (i=0; i<elements["cost_MWLF_TShirts"].length; i++) {
      if (elements["cost_MWLF_TShirts"][i].checked) {
        cost_MWLF_TShirts = parseInt(elements["cost_MWLF_TShirts"][i].value);
      }
    }
  } else if (v_MWLF_TShirts) {
    if (elements["cost_MWLF_TShirts"].checked == false)  
      cost_MWLF_TShirts = 0;
  } else {
    cost_MWLF_TShirts = 0;
  }
price_id_MWLF_TShirts = cost_MWLF_TShirts;
cost_MWLF_TShirts = lookupCost(cost_MWLF_TShirts);

 

 
  var today = new Date();

discount_id_Weekend_Package = -1;

// Weekend_Package Discounts
if ((elements["discount"].value == "GrinnellMWLF2010") &&  true  && (price_id_Weekend_Package != 0) ) {
  cost_Weekend_Package = 99; discount_id_Weekend_Package = 30;

} if ((elements["discount"].value == "LawrenceUMWLF2010") &&  true  && (price_id_Weekend_Package != 0) ) {
  cost_Weekend_Package = 99; discount_id_Weekend_Package = 31;

} if ((elements["discount"].value == "MWLF2010Guest!") &&  true  && (price_id_Weekend_Package != 0) ) {
  cost_Weekend_Package = 0; discount_id_Weekend_Package = 32;

} if ((elements["discount"].value == "HawkeyesMWLF2010") &&  true  && (price_id_Weekend_Package != 0) ) {
  cost_Weekend_Package = 99; discount_id_Weekend_Package = 33;

} 

costEvent = cost_Weekend_Package + cost_the_Midwest_Lindyfest_Show + cost_MWLF_TShirts;

  
  var contestCost = 0;
  var classCost   = 0;

// HOUSING REQUEST CHECK
  var housingReq;

  if (elements["Housing"].checked) 
    housingReq = "Requested";
  else 
    housingReq = "Not&nbsp;Requested";

// Contest Costs
//  var contestsCost = new Array(10, 20, 30);
  for (i = 0; i < contests.length; i++) {
    if (elements[contests[i]].checked) 
      contestCost += contestsCost[i];
  }

// Class Costs
/*
  var classes = new Array("Workshop - Full Price", "Workshop - Student Price", "Residency Classes");
  var classesCost = new Array(50, 45, 75);
*/
  for (i = 0; i < classes.length; i++) {
    if (elements[classes[i]].checked)
      classCost += classesCost[i];
  }


  var totalCost = classCost + contestCost + costEvent;
 
// SET ACTION OR ERROR STRING

  var errorString = validate();
  var actionString = "process";
 
  if (errorString == '') {
    actionString = "<center>";
    actionString += "<input type=\"hidden\" name=\"LEMS_totalCost\" value=\"" + (new Number(totalCost).toFixed(2)) + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_costEvent\" value=\"" + (new Number(costEvent).toFixed(2)) + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_classCost\" value=\"" + (new Number(classCost).toFixed(2)) + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_contestCost\" value=\"" + (new Number(contestCost).toFixed(2)) + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_price_id\" value=\"" + price_id + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_price_ids[]\" value=\"" + price_id_Weekend_Package + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_price_ids[]\" value=\"" + price_id_the_Midwest_Lindyfest_Show + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_price_ids[]\" value=\"" + price_id_MWLF_TShirts + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_discount_groups[]\" value=\"Weekend_Package\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_discount_ids[]\" value=\"" + discount_id_Weekend_Package + "\"/>";
    actionString += "<input type=\"hidden\" name=\"LEMS_discount_id\" value=\"" + discount_id + "\"/>";

    actionString += "<input type=\"submit\" name=\"submit\" value=\"Submit and goto payment.\" class=\"LEMS_submit\" />";
    actionString += "</center>";
  } else {
    actionString = errorString;
  }

// Create Payment HTML
 
  var innerHTML = "<table width=\"100%\" cellspacing=\"3\" cellpadding=\"0\" border=\"0\">";
  innerHTML += "<tr><th width=\"40%\">Item</th><th width=\"20%\">Cost</th><td width=\"1%\">&nbsp;</td><th width=\"39%\">Action</th></tr>";
 
  innerHTML += "<tr><td>Admission</td><td align=\"right\">" + (new Number(costEvent).toFixed(2)) + "$ US</td>"; 
  innerHTML += "<td rowspan=\"99\" >&nbsp;</td>";
  innerHTML += "<td rowspan=\"99\" valign=\"top\"><div style=\"margin-left: 2px;\">" + actionString + "</div></td></tr>";

  if (showContests) {
  innerHTML += "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";
  innerHTML += "<tr><td>Contests</td><td align=\"right\">" + (new Number(contestCost).toFixed(2)) + "$ US</td></tr>";
  }

  if (showClasses) {
  innerHTML += "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";
  innerHTML += "<tr><td>Classes</td><td align=\"right\">" + classCost + "$ US</td></tr>";
  }

  if (showHousing) {
  innerHTML += "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";
  innerHTML += "<tr><td>Housing</td><td align=\"right\">" + housingReq + "</td></tr>";
  }

  innerHTML += "<tr><td colspan=\"2\"><hr /></td></tr>";
  innerHTML += "<tr><td>Total</td><td align=\"right\">";
  innerHTML += new Number(totalCost).toFixed(2); 
  innerHTML += "$ US</td></tr>";
  innerHTML += "<tr><td colspan=\"2\">&nbsp;</td></tr>";
  innerHTML += "<tr><td colspan=\"2\">** Not looking right? Go back and edit!<br/><i>(Reported issues with Safari have been remedied.)</i></td></tr>";
  innerHTML += "</table>";
   
  document.getElementById('LEMS_regPaymentContent').innerHTML = innerHTML;

  document.getElementById('LEMS_priceContainer').innerHTML = "$" + (new Number(totalCost).toFixed(2)) + " USD";

  return true;
}
 
