// JavaScript Document
var theURL=document.location.href;

function pcalc_init(frm){
   //alert("Exception 00351 on Line 42.  Press OK to Continue.");
   frm.numPhys.value = checkCookie("numPhys","2");
   frm.numMid.value = checkCookie("numMid","1");
   frm.numStaff.value = checkCookie("numStaff","5");
   frm.annualRevenue.value = checkCookie("annualRevenue","1200000");
   
   frm.InterestedBilling.checked = checkCookieCB("InterestedBilling");
   frm.InterestedCharting.checked = checkCookieCB("InterestedCharting");
   frm.InterestedScheduling.checked = checkCookieCB("InterestedScheduling");
   frm.InterestedMessaging.checked = checkCookieCB("InterestedMessaging");
   frm.InterestedEligibility.checked = checkCookieCB("InterestedEligibility");
   frm.InterestedClaims.checked = checkCookieCB("InterestedClaims");
   frm.InterestedERA.checked = checkCookieCB("InterestedERA");
   
   frm.first_name.value = checkCookie("first_name","");
   frm.last_name.value = checkCookie("last_name","");
   frm.company.value = checkCookie("company","");
   frm.email.value = checkCookie("email","");
   frm.phone.value = checkCookie("phone","");
   frm.street.value = checkCookie("street","");
   frm.city.value = checkCookie("city","");
   frm.state.value = checkCookie("state","--");
   frm.zip.value = checkCookie("zip","");

   if(theURL.match("CalcForm"))
   {
	    var pcalc_count = parseInt(getCookie("pcalc_count"),10);
		if(pcalc_count < 3){
			putCookie("resource","none");
			setReg();
	    	calcBillingServ(frm);
  			calcLeonardoMD(frm);
  			calcIHS(frm);
			showLayer('page3');
		}
		else {
			showLayer('page4');
		}
   }
}

function getParameter(parameterName) {
  var queryString = window.location.search.substring(1).toLowerCase();
  //alert(queryString);
  //if (queryString.length==0) {return "null";}
  var parameters = new Array();
  parameters = queryString.split('&');
  for(var i = 0; i < parameters.length; i++) {
    //alert(parameters[i]);
    //alert(parameters[i].indexOf(parameterName));
    if (parameters[i].indexOf(parameterName.toLowerCase())>=0) {
      //alert(parameterName + "=" + parameters[i]);
      var parameterValue = new Array();
      parameterValue = parameters[i].split('=');
      return parameterValue[1];
    }
  }
  return "null";
}

function checkForm1(frm){ 
   msg = "";
   if(frm.numPhys.value == ""){
	   msg += "- Number of Physicians is required.\n";
   }
   if(frm.numMid.value == ""){
	   msg += "- Number of Mid-level providers is required.\n";
   }
   if(frm.annualRevenue.value == ""){
	   msg += "- Annual Revenue is required.\n";
	   msg += "  Enter '0' to ignore.\n";
   }
	
   if(msg != ""){ 
      alert(msg); 
      return false; 
   } 
   else{
   
   frm.StatusDetail.value = "Web Lead Submitted (1/3)";

   putCookie("numPhys",frm.numPhys.value);
   putCookie("numMid",frm.numMid.value);
   putCookie("numStaff",frm.numStaff.value);
   putCookie("annualRevenue",frm.annualRevenue.value);
   
   if(frm.InterestedBilling.checked) { putCookie("InterestedBilling","true"); }     
   else{ putCookie("InterestedBilling","false"); } 
   if(frm.InterestedCharting.checked) { putCookie("InterestedCharting","true"); }    
   else{ putCookie("InterestedCharting","false"); } 
   if(frm.InterestedScheduling.checked) { putCookie("InterestedScheduling","true"); }  
   else{ putCookie("InterestedScheduling","false"); } 
   if(frm.InterestedMessaging.checked) { putCookie("InterestedMessaging","true"); }   
   else{ putCookie("InterestedMessaging","false"); } 
   if(frm.InterestedEligibility.checked) { putCookie("InterestedEligibility","true"); } 
   else{ putCookie("InterestedEligibility","false"); }   
   if(frm.InterestedClaims.checked) { putCookie("InterestedClaims","true"); }     
   else{ putCookie("InterestedClaims","false"); } 
   if(frm.InterestedERA.checked) { putCookie("InterestedERA","true"); }         
   else{ putCookie("InterestedERA","false"); } 

   showLayer('page2');
   return false;
   }
}

function checkForm2(frm){ 
msg = ""; 
var at="@";
var dot=".";
var str=frm.email.value;

var lat=str.indexOf(at);
var lstr=str.length;
var ldot=str.indexOf(dot);
var badmsg="- A valid E-mail address is required.\n";
   if(!frm.first_name.value){ 
      msg += "- First Name is required.\n"; 
   } 
   
   if(!frm.last_name.value){ 
      msg += "- Last Name is required.\n"; 
   } 
   
   if(!frm.company.value){ 
      msg += "- Organization/Practice Name is required.\n"; 
   } 
   
   if(!frm.phone.value){ 
      msg += "- Phone is required.\n"; 
   } 
   
   if(!frm.street.value){ 
      msg += "- Street Address is required.\n"; 
   } 
   
   if(!frm.city.value){ 
      msg += "- City is required.\n"; 
   }   
   
   if(!frm.state.value){ 
      msg += "- State is required.\n"; 
   } 
   
   if(!frm.zip.value){ 
      msg += "- Zip/Postal Code is required.\n"; 
   } 
   
   if (str.indexOf(at)==-1){
      msg += badmsg; 
   } 
   else if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	  msg += badmsg;	   
   }
   else if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	 msg += badmsg;	  	
   }
   else if (str.indexOf(at,(lat+1))!=-1){
     msg += badmsg;
   }
   else if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	 msg += badmsg;
   }
   else if (str.indexOf(dot,(lat+2))==-1){
	 msg += badmsg;
   }
   else if (str.indexOf(" ")!=-1){
	 msg += badmsg;
   }		
   
   if(msg != ""){ 
      alert(msg); 
      return false; 
   } 
   else{
	   
   putCookie("first_name",frm.first_name.value);
   putCookie("last_name",frm.last_name.value);
   putCookie("company",frm.company.value);
   putCookie("email",frm.email.value);
   putCookie("phone",frm.phone.value);
   putCookie("street",frm.street.value);
   putCookie("city",frm.city.value);
   putCookie("state",frm.state.value);
   
   
   frm.doNotCall.checked = false;//!frm.doNotCall.checked;
   frm.emailOptOut.checked = false;//!frm.emailOptOut.checked;
   frm.StatusDetail.value = "Web Lead Submitted (3/3)";   
   calcLeonardoMD(frm);
   
   if(getCookie("pcalc_count")>=1){
	   var pcalc_count = parseInt(getCookie("pcalc_count"),10);
	   pcalc_count = pcalc_count + 1;
	   pcalc_count += '';
   }
   else{
   	   var pcalc_count = 1;
   }
   putCookie("pcalc_count",pcalc_count);
   
   frm.submit();
   return true;
   }
}

var currentLayer = 'page1';
function showLayer(lyr) {
   hideLayer(currentLayer);
   document.getElementById(lyr).style.visibility = 'visible';
   document.getElementById(lyr).style.display = 'inline';
   currentLayer = lyr;
   return false; 
}

function hideLayer(lyr) {
   document.getElementById(lyr).style.visibility = 'hidden';
   document.getElementById(lyr).style.display = 'none';
}

function calcLeonardoMD(frm){ 
   var numLicenses = 3.5;
   numLicenses = parseInt(frm.numPhys.value) + (0.5 * parseInt(frm.numMid.value));
   if(numLicenses < 1){ numLicenses = 1; }

	//editions 
	//0: None
	//1: Professional
	//2: Office
	//3: Claims
	//4: Standard
   product = "None";
   var setupFee1 = new Array();
   var setupFee2 = new Array();
   var subscriptionFee = new Array();
   
   var eRxFee = 39;
   var claimsFee = 35;
   var ERAFee = 10;
   var eligibilityFee = 15;   
   
   setupFee1[0] = 0;
   setupFee2[0] = 0;
   subscriptionFee[0] = 0;
   setupFee1[1] = 2500;
   setupFee2[1] = 500;
   subscriptionFee[1] = 300;
   setupFee1[2] = 2000;
   setupFee2[2] = 375;
   subscriptionFee[2] = 225;
   setupFee1[3] = 1500;
   setupFee2[3] = 250;
   subscriptionFee[3] = 150;
   setupFee1[4] = 1250;
   setupFee2[4] = 250;
   subscriptionFee[4] = 75;
   
   var LeoEdition = 0;
   if(frm.InterestedCharting.checked){ LeoEdition = 1; product="Professional"; }
   else if(frm.InterestedBilling.checked && frm.InterestedScheduling.checked){ LeoEdition = 2; product="Office"; }
   else if(frm.InterestedBilling.checked){ LeoEdition = 3; product="Claims"; }
   else if(frm.InterestedScheduling.checked){ LeoEdition = 4; product="Standard"; }
   else{ LeoEdition = 1; product="Professional"; }
   
   if(!frm.InterestedeRx.checked) { eRxFee = 0; }
   if(!frm.InterestedClaims.checked) { claimsFee = 0; }
   if(!frm.InterestedERA.checked) { ERAFee = 0; }
   if(!frm.InterestedEligibility.checked) { eligibilityFee = 0; }
   
   frm.LMDsetup.value = setupFee1[LeoEdition] + (numLicenses - 1) * setupFee2[LeoEdition];
   frm.LMDsubscription.value = numLicenses * (subscriptionFee[LeoEdition] + eRxFee + claimsFee + ERAFee + eligibilityFee);
   frm.LMDtraining.value = 0;
   frm.LMDsupport.value = 0;
   frm.LMDbiller.value = (42000 * (numLicenses / 3))/12;
   frm.LMDIT.value = 0;
   frm.LMDCH.value = 0;
   frm.LMDComm.value = 0;
   frm.LMDTwoYearCost.value = parseInt(frm.LMDsetup.value) + (24 * parseInt(frm.LMDsubscription.value)) + (2 * parseInt(frm.LMDtraining.value)) + (24 * parseInt(frm.LMDsupport.value)) + (0 * parseInt(frm.LMDbiller.value)) + (24 * parseInt(frm.LMDIT.value)) + (24 * parseInt(frm.LMDCH.value)) + (24 * parseInt(frm.LMDComm.value));
   
   frm.LMDsetup.value = Comma(frm.LMDsetup.value);
   frm.LMDsubscription.value = Comma(frm.LMDsubscription.value);
   frm.LMDtraining.value = Comma(frm.LMDtraining.value);
   frm.LMDsupport.value = Comma(frm.LMDsupport.value);
   frm.LMDbiller.value = Comma(frm.LMDbiller.value);
   frm.LMDIT.value = Comma(frm.LMDIT.value);
   frm.LMDCH.value = Comma(frm.LMDCH.value);
   frm.LMDComm.value = Comma(frm.LMDComm.value);
   frm.LMDTwoYearCost.value = Comma(frm.LMDTwoYearCost.value);
   frm.product.value = product;
   
return false;
}

function calcBillingServ(frm){ 
   var numLicenses = 3.5;
   numLicenses = parseInt(frm.numPhys.value) + (0.5 * parseInt(frm.numMid.value));
   if(numLicenses < 1){ numLicenses = 1; }

   var annualCost = 1;
   annualCost = 0.065 * parseInt(frm.annualRevenue.value);
      
   frm.BSsetup.value = 0;
   frm.BSsubscription.value = 0;
   frm.BStraining.value = 0;
   frm.BSsupport.value = 0;
   frm.BSbiller.value = 0;
   frm.BSIT.value = 0;
   frm.BSCH.value = numLicenses * 49;
   frm.BSComm.value = annualCost / 12;
   frm.BSTwoYearCost.value = parseInt(frm.BSsetup.value) + (24 * parseInt(frm.BSsubscription.value)) + (2  * parseInt(frm.BStraining.value)) + (24 * parseInt(frm.BSsupport.value)) + (0 * parseInt(frm.BSbiller.value)) + (24 * parseInt(frm.BSIT.value)) + (24 * parseInt(frm.BSCH.value)) + (24 * parseInt(frm.BSComm.value));  
   
   frm.BSsetup.value = Comma(frm.BSsetup.value);
   frm.BSsubscription.value = Comma(frm.BSsubscription.value);
   frm.BStraining.value = Comma(frm.BStraining.value);
   frm.BSsupport.value = Comma(frm.BSsupport.value);
   frm.BSbiller.value = Comma(frm.BSbiller.value);
   frm.BSIT.value = Comma(frm.BSIT.value);
   frm.BSCH.value = Comma(frm.BSCH.value);
   frm.BSComm.value = Comma(frm.BSComm.value);
   frm.BSTwoYearCost.value = Comma(frm.BSTwoYearCost.value);
   
return false;
}

function calcIHS(frm){ 
   var numLicenses = 3.5;
   numLicenses = parseInt(frm.numPhys.value) + (0.5 * parseInt(frm.numMid.value));
   if(numLicenses < 1){ numLicenses = 1; }

   var annualCost = 1;
   annualCost = 0.065 * parseInt(frm.annualRevenue.value);
      
   frm.IHSsetup.value = 25000 + (8500 * numLicenses);
   frm.IHSsubscription.value = 0;
   frm.IHStraining.value = 1500 + (numLicenses * 800) + (65 * parseInt(frm.numStaff.value));
   frm.IHSsupport.value = 28 * numLicenses;
   frm.IHSbiller.value = (42000 * (numLicenses / 3)) / 12;
   frm.IHSIT.value = (55000 * (numLicenses / 6)) / 12;
   frm.IHSCH.value = numLicenses * 49;
   frm.IHSComm.value = 0;
   frm.IHSTwoYearCost.value = parseInt(frm.IHSsetup.value) + (24 * parseInt(frm.IHSsubscription.value)) + (2  * parseInt(frm.IHStraining.value)) + (24 * parseInt(frm.IHSsupport.value)) + (24 * parseInt(frm.IHSbiller.value)) + (24 * parseInt(frm.IHSIT.value)) + (24 * parseInt(frm.IHSCH.value)) + (24 * parseInt(frm.IHSComm.value));
   
   frm.IHSsetup.value = Comma(frm.IHSsetup.value);
   frm.IHSsubscription.value = Comma(frm.IHSsubscription.value);
   frm.IHStraining.value = Comma(frm.IHStraining.value);
   frm.IHSsupport.value = Comma(frm.IHSsupport.value);
   frm.IHSbiller.value = Comma(frm.IHSbiller.value);
   frm.IHSIT.value = Comma(frm.IHSIT.value);
   frm.IHSCH.value = Comma(frm.IHSCH.value);
   frm.IHSComm.value = Comma(frm.IHSComm.value);
   frm.IHSTwoYearCost.value = Comma(frm.IHSTwoYearCost.value);
   
return false;
}

function Comma(number) {
number = Math.round(number);
number = '' + number;
if (number.length > 3) {
var mod = number.length % 3;
var output = (mod > 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i < Math.floor(number.length / 3); i++) {
if ((mod == 0) && (i == 0))
output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
else
output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
return (output);
}
else return number;
}


function showValues(form) {
   var values = '';
   var len = form.length - 1; 
   //Leave off Submit Button
   for(i=0; i<len; i++) {
      if (form[i].id.indexOf("C") != -1 || 
         form[i].id.indexOf("B") != -1)
         //Skip Continue and Back Buttons
         continue;
         values += form[i].id;
         values += ': ';
         values += form[i].value;
         values += '\n';
      }
      alert(values);
   }