// JavaScript Document
var XmlHttpReq;
function LoadEffLoss(type){
 var objLampPower;
 var UrlString ;
 if (type=='0'){
 	 objLampPower = document.getElementById('OldLampPowerId');
 }
 else {
 	 objLampPower = document.getElementById('NewLampPowerId');
 }
 var UrlString;
 var currentDate = new Date();
 var currentTime = currentDate.getTime();
 XmlHttpReq=getHTTPObject();
 if (objLampPower.value==""){
    return false;
 }
 else {
 
   		UrlString = "InsertUpdateAjax.php?LampGearTypeId="+objLampPower.value+"&AjaxState=LoadEffLoss&CTime="+currentTime+"&type="+type;
		XmlHttpReq.onreadystatechange=stateChanged_EffLoss;
	   	XmlHttpReq.open("GET",UrlString,true);
	   	XmlHttpReq.send(null);
	      
 }
 return false;
}
function stateChanged_EffLoss(LampGearTypeId){
   
   var objOldEff =  document.getElementById('OldEffLoss');
   var objNewLoss = document.getElementById('NewEffLoss');
   var objOldLampLife = document.getElementById('OldLampLife');
   var objNewLampLife = document.getElementById('NewLampLife');
   var objOldAvgLampPrice = document.getElementById('OldAvgLampPrice');
   var objNewAvgLampPrice = document.getElementById('NewAvgLampPrice');
   
  var objOldGearCost = document.getElementById('HiddenOldGearCost');
  var objNewGearCost = document.getElementById('HiddenNewGearCost');
  
  var objOldLampPower = document.getElementById('OldLampPower');
  var objNewLampPower = document.getElementById('NewLampPower');
   
   var retMessage ;
   var MessArray ;
   if (XmlHttpReq.readyState==4 || XmlHttpReq.readyState=="complete"){
	   //objEffLoss.value = XmlHttpReq.responseText
	   retMessage = XmlHttpReq.responseText ;
	   MessArray =  retMessage.split('###');
	   if (MessArray[1]=='0'){
	     objOldEff.value = MessArray[0];
		 objOldLampLife.value = MessArray[2];
		 objOldAvgLampPrice.value = MessArray[3];
		 objOldGearCost.value = MessArray[4];
		 objOldLampPower.value = MessArray[5];
		 CalclateOldEnergyConsumption();
	   }
	   else {
		   objNewLoss.value = MessArray[0];
		   objNewLampLife.value = MessArray[2];
		   objNewAvgLampPrice.value = MessArray[3];
		   objNewGearCost.value = MessArray[4];
		   objNewLampPower.value = MessArray[5];
		   CalculateNewEnergyConsumttion()
	  }
	   
   }
   else{
		
   } 
}
function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}
function CalclateOldEnergyConsumption(){
   if (CheckOldValuesForm()){
	   var objOldLampPower = document.getElementById('OldLampPower');
	   var OldLampPowerValue ;
	   OldLampPowerValue=parseFloat(objOldLampPower.value); 
	   var objOldEnergyConsumttion = document.getElementById('OldEnergyConsumttion');
	   
	   var OldEffLossValue = parseFloat(document.getElementById('OldEffLoss').value);
	   var OldNumLampValue ;
	   var OpeningHoursValue  ;
	   OldNumLampValue = parseFloat(document.getElementById('OldNumLamp').value)
	// OpertingHours
	   OpeningHoursValue = parseFloat(document.getElementById('OpeningHours').value)
	  
	  EnergyConsumption1= ((OldNumLampValue*OldLampPowerValue*OpeningHoursValue)*((100+OldEffLossValue)/100)/1000)
	  objOldEnergyConsumttion.value=roundNumber(EnergyConsumption1,3);
	  
	  // ---- EnergyConsumption1= ((OldNumLampValue*OldLampPowerValue*OpeningHoursValue)*((100+OldEffLossValue)/100)/1000)
	  // ----for calculation of old engergy consum cost
	  
	  var objOldEnergyConsummCost = document.getElementById('OldEnergyConsumttionCost')
	  var KwhPriceValue = parseFloat(document.getElementById('KwsPrice').value);
	  objOldEnergyConsummCost.value = roundNumber((parseFloat(EnergyConsumption1) * KwhPriceValue),2);
	  
	  //----for calculat  New Co2
	  var objOldCo2 =  document.getElementById('OldCo2');
	  objOldCo2.value = roundNumber((parseFloat(EnergyConsumption1) * parseFloat(0.42)),2);
	  //---for calculate Co2 Saving
	     CalculateGearCost('0');
	     CalculateCo2Saving();
	 //-- for calcualate mercury save
	   MercurySave();
	  //calculate Invesment 
	  CalculateInvestment('0');
	  CalculateAnnualCost('0');
   }
}

function CheckOldValuesForm(){
  
  var chkObjOldLampPower=document.getElementById('OldLampPower');
  var chkObjOldEffLoss=document.getElementById('OldEffLoss');
  var chkObjOldNumLamp=document.getElementById('OldNumLamp');
  var chkObjOpeningHours = document.getElementById('OpeningHours');
  if ((chkObjOldLampPower.value=="") || (!isFloat(chkObjOldLampPower.value)) ){
      //alert('Please select Lamp Power value')
	  return false;
  }
  if ((chkObjOldEffLoss.value=="") || (!isFloat(chkObjOldEffLoss.value)) ){
      //alert('Please enter correct value')
	  //chkObjOldEffLoss.focus();
	  return false;
  }
  if ((chkObjOldNumLamp.value=="") || (!isFloat(chkObjOldNumLamp.value)) ){
      //alert('Please enter correct value')
	  //chkObjOldNumLamp.focus();
	  return false;
  }
  if ((chkObjOpeningHours.value=="") || (!isFloat(chkObjOpeningHours.value)) ){
      //alert('Please enter correct value')
	  //chkObjOpeningHours.focus();
	  return false;
  }
  
  else {
     return true;
  }
}

function CheckNewValuesForm(){
  
  var chkObjNewLampPower=document.getElementById('NewLampPower');
  var chkObjNewEffLoss=document.getElementById('NewEffLoss');
  var chkObjNewNumLamp=document.getElementById('NewNumLamp');
  var chkObjOpeningHours = document.getElementById('OpeningHours');
  
  if ((chkObjNewLampPower.value=="") || (!isFloat(chkObjNewLampPower.value)) ){
      //alert('Please select Lamp Power value')
	  return false;
	  
  }
  if ((chkObjNewEffLoss.value=="") || (!isFloat(chkObjNewEffLoss.value)) ){
      //alert('Please enter correct value')
	  //chkObjNewEffLoss.focus();
	  return false;
  }
  
  if ((chkObjNewNumLamp.value=="") || (!isFloat(chkObjNewNumLamp.value)) ){
      //alert('Please enter correct value')
	  //chkObjNewNumLamp.focus();
	  return false;
  }
  
  if ((chkObjOpeningHours.value=="") || (!isFloat(chkObjOpeningHours.value)) ){
      //alert('Please enter correct value')
	  //chkObjOpeningHours.focus();
	  return false;
  }
  
  else {
     return true;
  }
}
//calcualate New Energy ---

function CalculateNewEnergyConsumttion(){
   if (CheckNewValuesForm()){
	   var objNewLampPower = document.getElementById('NewLampPower');
	   var NewLampPowerValue ;
	   
	   NewLampPowerValue=parseFloat(objNewLampPower.value); 
	   
	   var objNewEnergyConsumttion = document.getElementById('NewEnergyConsumttion');
	   
	   var NewEffLossValue = parseFloat(document.getElementById('NewEffLoss').value);
	   var NewNumLampValue ;
	   var OpeningHoursValue  ;
	   // Num Value Enter by user --
	   NewNumLampValue = parseFloat(document.getElementById('NewNumLamp').value);
	  OpeningHoursValue = parseFloat(document.getElementById('OpeningHours').value)
	  EnergyConsumptionNew=( (NewNumLampValue*NewLampPowerValue*OpeningHoursValue)*((100+NewEffLossValue)/100)/1000 )
	  objNewEnergyConsumttion.value=roundNumber(EnergyConsumptionNew,3);
	  
	  // ----for calculation of new engergy consum cost
	  var objNewEnergyConsummCost = document.getElementById('NewEnergyConsumttionCost');
	  var KwhPriceValue = parseFloat(document.getElementById('KwsPrice').value);
	  objNewEnergyConsummCost.value = (parseFloat(EnergyConsumptionNew) * KwhPriceValue);
	  objNewEnergyConsummCost.value = roundNumber(objNewEnergyConsummCost.value,2);
	  
	  //----for calculat  New Co2
	  var objNewCo2 =  document.getElementById('NewCo2');
	  objNewCo2.value = roundNumber((parseFloat(EnergyConsumptionNew) * parseFloat(0.42)),2);
	  CalculateGearCost('1');
	  //---for calculate Co2 Saving
	    CalculateCo2Saving();
	  //---for calculate Mercury
	  	MercurySave();
	  // calculate Invesment 
	  CalculateInvestment('1');
	  CalculateAnnualCost('1');
   }
   
}
function CalculateCo2Saving(){
  var objCo2Saving =  document.getElementById('Co2Saving');
  var objCo2New = document.getElementById('NewCo2');
  var objCo2Old = document.getElementById('OldCo2');
  if ( (objCo2New.value!="") && (isFloat(objCo2New.value)) && (objCo2Old.value!="") && (isFloat(objCo2Old.value)) ){
      objCo2Saving.value = objCo2Old.value - objCo2New.value
	  objCo2Saving.value=roundNumber(objCo2Saving.value,2);
  }
}

function MercurySave(){
  var objMerCurySave = document.getElementById('MercurySave');
  var OldEnergyCosum = document.getElementById('OldEnergyConsumttion').value;
  var NewEnergyConsum = document.getElementById('NewEnergyConsumttion').value;
  
  if ( (Trim(OldEnergyCosum)=="") || (!isFloat(OldEnergyCosum)) ){
     return false;
  }
  if ( (Trim(NewEnergyConsum)=="") || (!isFloat(NewEnergyConsum)) ){
     return false;
  }
  if ( isFloat(OldEnergyCosum) && (isFloat(NewEnergyConsum)) ) {	
  		OldEnergyCosum = parseFloat(OldEnergyCosum);
  		NewEnergyConsum = parseFloat(NewEnergyConsum);
		objMerCurySave.value = ((OldEnergyCosum - NewEnergyConsum) * 0.0289/1000)
		objMerCurySave.value = roundNumber(objMerCurySave.value,2); 
  }
}

function CalculateInvestment(Type){
    if (Type=='0'){
		
	  NumberOfLamps=parseFloat(document.getElementById('OldNumLamp').value)
	  AvgLamp=parseFloat(document.getElementById('OldAvgLampPrice').value)
	  // GearCost = parseFloat(document.getElementById('OldGearCost').value)
	  GearCost = parseFloat(document.getElementById('HiddenOldGearCost').value)
	  objInvesment = document.getElementById('OldInvestment');
	}
	else {
	    NumberOfLamps= parseFloat(document.getElementById('NewNumLamp').value)
	    AvgLamp=parseFloat(document.getElementById('NewAvgLampPrice').value)
	    // GearCost = parseFloat(document.getElementById('NewGearCost').value)
		GearCost = parseFloat(document.getElementById('HiddenNewGearCost').value)
		
	    objInvesment = document.getElementById('NewInvesment');
    }
	// Investment = (NumberOfLamps * AvgLamp)+(NumberOfLamps * GearCost);
	Investment = (NumberOfLamps * AvgLamp)+(GearCost);
	objInvesment.value = Investment ;
}
function CalculateAnnualCost(Type){
	
 var OperHours=parseFloat(document.getElementById('OpeningHours').value);
 var NumberOfLamps ;
 var AvgLamp ;
 var LampLife ;
 var objOldLampReplaceCost ;
 var EnergyCosnummCost ;
 var objAnnualCost ;
 if (Type=='0'){
  	  
	  NumberOfLamps=parseFloat(document.getElementById('OldNumLamp').value);
	  AvgLamp=parseFloat(document.getElementById('OldAvgLampPrice').value);
	  LampLife = parseFloat(document.getElementById('OldLampLife').value);
	  objOldLampReplaceCost = document.getElementById('OldLampReplaceCost');
	  EnergyCosnummCost = parseFloat(document.getElementById('OldEnergyConsumttionCost').value);
	  objAnnualCost = document.getElementById('OldAnnualCost');
	  if ((objOldLampReplaceCost.value=="") || (!isFloat(objOldLampReplaceCost.value)) ){
		  //alert('Please enter correct value ');
		  //objOldLampReplaceCost.focus();
		  return false;
      }
	  LampReplacementCost = parseFloat(objOldLampReplaceCost.value);
	  
 }
 else {
	 
      NumberOfLamps=parseFloat(document.getElementById('NewNumLamp').value);
	  AvgLamp=parseFloat(document.getElementById('NewAvgLampPrice').value);
	  LampLife = parseFloat(document.getElementById('NewLampLife').value);
	  objOldLampReplaceCost = document.getElementById('NewLampReplaceCost');
	  EnergyCosnummCost = parseFloat(document.getElementById('NewEnergyConsumttionCost').value);
	  objAnnualCost = document.getElementById('NewAnnualCost');
		
	  if ((objOldLampReplaceCost.value=="") || (!isFloat(objOldLampReplaceCost.value)) ){
		  //alert('Please enter correct value ')
		  objOldLampReplaceCost.focus();
		  return false;
       }
	  LampReplacementCost = parseFloat(objOldLampReplaceCost.value);
 }
 AnnualCost = ( (NumberOfLamps*AvgLamp*(OperHours/LampLife) ) + (NumberOfLamps*LampReplacementCost*(OperHours/LampLife) ) + EnergyCosnummCost )
 
 objAnnualCost.value = roundNumber(AnnualCost,2) ;
 CalclateAnnualSaving();
 CalculateReturnInvesmentProfit();
 CalculateInvesmentWithNewInstallment();
 NumberOfTrees();
}

function CalclateAnnualSaving(){
  
  var objOldAnuualCost ;
  var objNewAnuualCost ;
  
  objOldAnuualCost = document.getElementById('OldAnnualCost') ;
  objNewAnuualCost = document.getElementById('NewAnnualCost');
   if ((Trim(objOldAnuualCost.value)=="") || (!isFloat(objOldAnuualCost.value)) ){
	  return false;
	  
  }
   if ((Trim(objNewAnuualCost.value)=="") || (!isFloat(objNewAnuualCost.value)) ){
	  return false;
  }
  
  else {
	  var OldAnuualCost = parseFloat(objOldAnuualCost.value);
	  var NewAnnualCost = parseFloat(objNewAnuualCost.value);
	  AnnualSaving = OldAnuualCost - NewAnnualCost ;
	  document.getElementById('AnnualSave').value = roundNumber(AnnualSaving,2) ;
  }
}
function CalculateReturnInvesmentProfit(){
  
  var objNewInves = document.getElementById('NewInvesment');
  var objAnnSav = document.getElementById('AnnualSave');
  
  if ((Trim(objAnnSav.value)=="") || (!isFloat(objAnnSav.value)) ){
	  return false;
  }
  NewInvesValue = parseFloat(objNewInves.value);
  AnnSaveValue = parseFloat(objAnnSav.value);
  document.getElementById('InvesmentReturn').value = roundNumber((NewInvesValue/AnnSaveValue),2) ;
}
function CalculateInvesmentWithNewInstallment(){

  var objNewProfitInves = document.getElementById('NewInvesment');
  var objOldProfitInves = document.getElementById('OldInvestment');
  var objProfitAnnSav = document.getElementById('AnnualSave');
  if ((Trim(objProfitAnnSav.value)=="") || (!isFloat(objProfitAnnSav.value)) ){
	  return false;
  }
  NewProfitInvesValue = parseFloat(objNewProfitInves.value);
  OldProfitInvesValue = parseFloat(objOldProfitInves.value);
  ProfitAnnSavValue = parseFloat(objProfitAnnSav.value);
  document.getElementById('NewInstallmentProfit').value = roundNumber((NewProfitInvesValue - OldProfitInvesValue)/ProfitAnnSavValue,2);
}
function NumberOfTrees(){

  var objCo2Save = document.getElementById('Co2Saving');
  if ( (Trim(objCo2Save.value)=="") || (!isFloat(objCo2Save.value)) ){
	  return false;
  }
  Co2Value=parseFloat(objCo2Save.value);
  NumberOfTreeSave = Co2Value/20 ;
  document.getElementById('NoOfTrees').value = roundNumber(NumberOfTreeSave,2)
  //alert("Number of tree save"+NumberOfTreeSave);
}
function CalculateGearCost(type){
  
  if (type=='0'){
     
	 var objHiddenGearCost = document.getElementById('HiddenOldGearCost');
	 var objLampValue = document.getElementById('OldNumLamp');
	 var objTotalGerCost = document.getElementById('OldGearCost');
	 
  }
  if (type=='1'){
	  
	  var objHiddenGearCost = document.getElementById('HiddenNewGearCost');
	  var objLampValue = document.getElementById('NewNumLamp');
	  var objTotalGerCost = document.getElementById('NewGearCost');
	  
  }
  if ( (Trim(objHiddenGearCost.value)=="")|| (!isFloat(objHiddenGearCost.value)) ){
	     return false;
  }
  if ( (Trim(objLampValue.value)=="")|| (!isFloat(objLampValue.value)) ){
	     return false;
  }
  else {
	  GearCostValue = parseFloat(objHiddenGearCost.value);
	  LampValueValue = parseFloat(objLampValue.value);
	  objTotalGerCost.value = roundNumber(GearCostValue * LampValueValue,2);
  }
}

function openHelpWindow(){
	window.open('help/co2/EverseenCo2ModuleHelp.html','Help','height=800,width=1024,Top=0,Left=50, scrollbars=yes');
}