﻿// JScript File
var dist; //distance 
var time;//in total secs
var pace; //in total secs
var factor; // factor for conversion between distance unit and pace unit.
var calculate = "";

function showCalculator(calc)
{
    var pnlPaceCalculator = document.getElementById("pnlPaceCalculator");
    var pnlHeartRateCalculator = document.getElementById("pnlHeartRateCalculator");
    var pnlCalorieMeter = document.getElementById("pnlCalorieMeter");
    var updatePanelMetricConversion = document.getElementById("updatePanelMetricConversion");
    var pnlRaceTimePredictor = document.getElementById("pnlRaceTimePredictor");
     var pnlBMICalculator = document.getElementById("pnlBMICalculator");
    
    if(calc == "1")
    {
        
//        pnlHeartRateCalculator.style.display = "none";
//        pnlCalorieMeter.style.display = "none";
//        updatePanelMetricConversion.style.display = "none";
//        pnlRaceTimePredictor.style.display = "none";
        pnlPaceCalculator.style.display = "block";
           //document.getElementById("lblAddEvent").innerHTML="Pace Calculator";
          var tdPace1 = document.getElementById("tdPace1");
        var tdPace2 = document.getElementById("tdPace2");
        if(tdPace1 != null)
        {
            tdPace1.className = 'clsLHSSelectedMenuArrows';
        }
        if(tdPace2 != null)
        {
            tdPace2.className = 'clsLHSSelectedMenu';
        }
//         var imgPace = document.getElementById("imgPace");
//         imgPace.src = '../../Images/LHSMenus/red_arrow.png';
//         document.getElementById("spanPaceCalcButton").style.color="#FF8023";
         
        ResetPaceCalculator();
    }
    else
    {
            var tdPace1 = document.getElementById("tdPace1");
        var tdPace2 = document.getElementById("tdPace2");
        if(tdPace1 != null)
        {
            tdPace1.className = 'clsLHSMenuDark';
        }
        if(tdPace2 != null)
        {
            tdPace2.className = 'clsLHSMenuDark';
        }
//         var imgPace = document.getElementById("imgPace");
//         imgPace.src = '../../Images/LHSMenus/arrow-bullets.png';
//         document.getElementById("spanPaceCalcButton").style.color="";
    }
     if(calc == "2")
    {
        
//        pnlPaceCalculator.style.display = "none";
//        pnlCalorieMeter.style.display = "none";
//        updatePanelMetricConversion.style.display = "none";
//        pnlRaceTimePredictor.style.display = "none";
        
        //document.getElementById("lblAddEvent").innerHTML="Heart Rate Calculator";
          var tdHeart1 = document.getElementById("tdHeart1");
        var tdHeart2 = document.getElementById("tdHeart2");
        if(tdHeart1 != null)
        {
            tdHeart1.className = 'clsLHSSelectedMenuArrows';
        }
        if(tdHeart2 != null)
        {
            tdHeart2.className = 'clsLHSSelectedMenu';
        }
//         var imgHeart = document.getElementById("imgHeart");
//         imgHeart.src = '../../Images/LHSMenus/red_arrow.png';
//         document.getElementById("lnkHeartRate").style.color="#FF8023";
        
        ResetHeartRateCalculator();
        pnlHeartRateCalculator.style.display = "block";
    }
    else
    {
          var tdHeart1 = document.getElementById("tdHeart1");
        var tdHeart2 = document.getElementById("tdHeart2");
        if(tdHeart1 != null)
        {
            tdHeart1.className = 'clsLHSMenuDark';
        }
        if(tdHeart2 != null)
        {
            tdHeart2.className = 'clsLHSMenuDark';
        }
//         var imgHeart = document.getElementById("imgHeart");
//         imgHeart.src = '../../Images/LHSMenus/arrow-bullets.png';
//         document.getElementById("lnkHeartRate").style.color="";
    }
     if(calc == "3")
    {
        
//        pnlPaceCalculator.style.display = "none";
//        pnlHeartRateCalculator.style.display = "none";
//        updatePanelMetricConversion.style.display = "none";
//        pnlRaceTimePredictor.style.display = "none";
        pnlCalorieMeter.style.display = "block";
        // document.getElementById("lblAddEvent").innerHTML="Calorie Calculator";
        
        var tdCalorie1 = document.getElementById("tdCalorie1");
        var tdCalorie2 = document.getElementById("tdCalorie2");
        if(tdCalorie1 != null)
        {
            tdCalorie1.className = 'clsLHSSelectedMenuArrows';
        }
        if(tdCalorie2 != null)
        {
            tdCalorie2.className = 'clsLHSSelectedMenu';
        }
//         var imgCalorie = document.getElementById("imgCalorie");
//         imgCalorie.src = '../../Images/LHSMenus/red_arrow.png';
//         document.getElementById("lnkCalories").style.color="#FF8023";
//         
         ResetCalorieMeter();
    }
    else
    {
            var tdCalorie1 = document.getElementById("tdCalorie1");
            var tdCalorie2 = document.getElementById("tdCalorie2");
            if(tdCalorie1 != null)
            {
                tdCalorie1.className = 'clsLHSMenuDark';
            }
            if(tdCalorie2 != null)
            {
                tdCalorie2.className = 'clsLHSMenuDark';
            }
//             var imgCalorie = document.getElementById("imgCalorie");
//             imgCalorie.src = '../../Images/LHSMenus/arrow-bullets.png';
//             document.getElementById("lnkCalories").style.color="";
    }
     if(calc == "4")
    {
        
//        pnlPaceCalculator.style.display = "none";
//        pnlHeartRateCalculator.style.display = "none";
//        pnlCalorieMeter.style.display = "none";
//        pnlRaceTimePredictor.style.display = "none";
        updatePanelMetricConversion.style.display = "block";
         //document.getElementById("lblAddEvent").innerHTML="Conversion Calculator";
          var tdConversion1 = document.getElementById("tdConversion1");
        var tdConversion2 = document.getElementById("tdConversion2");
        if(tdConversion1 != null)
        {
            tdConversion1.className = 'clsLHSSelectedMenuArrows';
        }
        if(tdConversion2 != null)
        {
            tdConversion2.className = 'clsLHSSelectedMenu';
        }
//         var imgConversion = document.getElementById("imgConversion");
//         imgConversion.src = '../../Images/LHSMenus/red_arrow.png';
//         document.getElementById("lnkConversion").style.color="#FF8023";
        
        ResetWeightConverter();
        ResetDistanceConverter();
    }
    else
    {
             var tdConversion1 = document.getElementById("tdConversion1");
        var tdConversion2 = document.getElementById("tdConversion2");
        if(tdConversion1 != null)
        {
            tdConversion1.className = 'clsLHSMenuDark';
        }
        if(tdConversion2 != null)
        {
            tdConversion2.className = 'clsLHSMenuDark';
        }
//         var imgConversion = document.getElementById("imgConversion");
//         imgConversion.src = '../../Images/LHSMenus/arrow-bullets.png';
//         document.getElementById("lnkConversion").style.color="";
    }
      if(calc == "5")
    {
        
//        updatePanelMetricConversion.style.display = "none";
//        pnlPaceCalculator.style.display = "none";
//        pnlHeartRateCalculator.style.display = "none";
//        pnlCalorieMeter.style.display = "none";
        pnlRaceTimePredictor.style.display = "block";
         //document.getElementById("lblAddEvent").innerHTML="Race Time Predictor";
          var tdPredictor1 = document.getElementById("tdPredictor1");
        var tdPredictor2 = document.getElementById("tdPredictor2");
        if(tdPredictor1 != null)
        {
            tdPredictor1.className = 'clsLHSSelectedMenuArrows';
        }
        if(tdPredictor2 != null)
        {
            tdPredictor2.className = 'clsLHSSelectedMenu';
        }
//         var imgPredictor = document.getElementById("imgPredictor");
//         imgPredictor.src = '../../Images/LHSMenus/red_arrow.png';
//         document.getElementById("lnkracetime").style.color="#FF8023";
//        
        ResetRaceTimePredictor();
    }
    else
    {
             var tdPredictor1 = document.getElementById("tdPredictor1");
        var tdPredictor2 = document.getElementById("tdPredictor2");
        if(tdPredictor1 != null)
        {
            tdPredictor1.className = 'clsLHSMenuDark';
        }
        if(tdPredictor2 != null)
        {
            tdPredictor2.className = 'clsLHSMenuDark';
        }
//         var imgPredictor = document.getElementById("imgPredictor");
//         imgPredictor.src = '../../Images/LHSMenus/arrow-bullets.png';
//         document.getElementById("lnkracetime").style.color="";
    }    
    
    
    
    if(calc == "6")
    {
        

        pnlBMICalculator.style.display = "block";
          var tdPredictor1 = document.getElementById("tdPredictor1");
        var tdPredictor2 = document.getElementById("tdPredictor2");
        if(tdPredictor1 != null)
        {
            tdPredictor1.className = 'clsLHSSelectedMenuArrows';
        }
        if(tdPredictor2 != null)
        {
            tdPredictor2.className = 'clsLHSSelectedMenu';
        }
      
        ResetBMICalculator();
    }
    else
    {
             var tdPredictor1 = document.getElementById("tdPredictor1");
        var tdPredictor2 = document.getElementById("tdPredictor2");
        if(tdPredictor1 != null)
        {
            tdPredictor1.className = 'clsLHSMenuDark';
        }
        if(tdPredictor2 != null)
        {
            tdPredictor2.className = 'clsLHSMenuDark';
        }

    } 
}

function Calculate()
{
    var txtHour = document.getElementById("txtHour");  
    var txtMinute = document.getElementById("txtMinute");  
    var txtSecond = document.getElementById("txtSecond");  
    var txtDistance = document.getElementById("txtDistance");  
    var txtPaceHour = document.getElementById("txtPaceHour");  
    var txtPaceMinute = document.getElementById("txtPaceMinute");  
    var txtPaceSecond = document.getElementById("txtPaceSecond");  
    
    if(txtHour != null)
    {
        txtHour.className = "clsTextBoxYellow";
    }
    if(txtMinute != null)
    {
         txtMinute.className = "clsTextBoxYellow";
    }
    if(txtSecond != null)
    {
         txtSecond.className = "clsTextBoxYellow";
    }
    
    if(txtPaceHour != null)
    {
         txtPaceHour.className = "clsTextBoxYellow";
    }
    if(txtPaceMinute != null)
    {
         txtPaceMinute.className = "clsTextBoxYellow";
    }
    if(txtPaceSecond != null)
    {
         txtPaceSecond.className = "clsTextBoxYellow";
    }
    
    
    var DistanceUnit = document.getElementById("ddlDistanceUnit").value;  
    var PaceUnit = document.getElementById("ddlPaceUnit").value;  
    
    PaceUnit = PaceUnit + "s";
    
    var timeEmpty = "false";
    var distanceEmpty = "false";
    var paceEmpty = "false";
    
    
    //To check input time values are empty
    if(txtHour.value == "" && txtMinute.value == "" && txtSecond.value == "")
    {
        timeEmpty = "true";
    }
    //To check input distance value is empty
    if(txtDistance.value == "")
    {
        distanceEmpty = "true";
    }
    //To check input pace values are empty
    if(txtPaceHour.value == "" && txtPaceMinute.value == "" && txtPaceSecond.value == "")
    {
        paceEmpty = "true";
    }
    
    var time = toSecs(txtHour.value,txtMinute.value,txtSecond.value);
    var pace = toSecs(txtPaceHour.value,txtPaceMinute.value,txtPaceSecond.value);
    var dist = txtDistance.value;
    
    if(time == 0 && timeEmpty == "false")
    {
        //alert("Time can not be zero. Please enter valid time.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Time field cannot be zero. Please enter a valid time.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    if(pace == 0 && paceEmpty == "false")
    {
        //alert("Pace can not be zero. Please enter valid pace.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Pace cannot be zero. Please enter a valid Pace.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    if(dist == 0 && distanceEmpty == "false")
    {
        //alert("Distance can not be zero. Please enter valid distance.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Distance can not be zero. Please enter valid distance.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    
    //To display proper message or calculate result depending on the input
    if(timeEmpty == "true" && distanceEmpty == "true" && paceEmpty == "true")
    {
        //alert("To calculate result, please enter any two values which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the result, enter any two required values.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        
         var txtHour = document.getElementById("txtHour");
        var txtMinute = document.getElementById("txtMinute");
        var txtSecond = document.getElementById("txtSecond");
        var txtPaceHour = document.getElementById("txtPaceHour");
        var txtPaceMinute = document.getElementById("txtPaceMinute");
        var txtPaceSecond = document.getElementById("txtPaceSecond");
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
      
        return false;
    }
         //code added for checking whether time and pace is valid or not
    else if(timeEmpty == "false" && (parseFloat(txtMinute.value) > 59 || parseFloat(txtSecond.value) > 59 ))
    {
//         if(parseFloat(txtHour.value) > 24)
//         {
//             //alert("To calculate result, please enter any two values which is required.");
//             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Hours should be between 0 to 24.";
//             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//             document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//             document.getElementById("divWarningMsg").style.display = "block";
//            
//         } 
//         else 
         if(parseFloat(txtMinute.value) > 59)
         {
             //alert("To calculate result, please enter any two values which is required.");
             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Minutes should be between 0 to 59.";
             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
             document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
             document.getElementById("divWarningMsg").style.display = "block";
            
         }
         else if(parseFloat(txtSecond.value) > 59)
         {
             //alert("To calculate result, please enter any two values which is required.");
             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="seconds should be between 0 to 59.";
             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
             document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
             document.getElementById("divWarningMsg").style.display = "block";
         }
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
        return false;
    }
    else if(paceEmpty == "false" && (parseFloat(txtPaceMinute.value) > 59 || parseFloat(txtPaceSecond.value) > 59))
    {
//             var txtHour = document.getElementById("txtHour");
//             var txtMinute = document.getElementById("txtMinute");
//             var txtSecond = document.getElementById("txtSecond");
//             var txtPaceHour = document.getElementById("txtPaceHour");
//             var txtPaceMinute = document.getElementById("txtPaceMinute");
//             var txtPaceSecond = document.getElementById("txtPaceSecond");
//         if(parseFloat(txtPaceHour.value) > 24)
//         {
//             //alert("To calculate result, please enter any two values which is required.");
//             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Pace Hours should be between 0 to 24.";
//             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//             document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//             document.getElementById("divWarningMsg").style.display = "block";
//           
//         }
         if(parseFloat(txtPaceMinute.value) > 59)
         {
             //alert("To calculate result, please enter any two values which is required.");
             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Pace Minutes should be between 0 to 59.";
             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
             document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
             document.getElementById("divWarningMsg").style.display = "block";
           
         }
         else if(parseFloat(txtPaceSecond.value) > 59)
         {
             //alert("To calculate result, please enter any two values which is required.");
             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Pace seconds should be between 0 to 59.";
             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
             document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
             document.getElementById("divWarningMsg").style.display = "block";
         }
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
        return false;
    }
    else if(timeEmpty == "true" && distanceEmpty == "true" && paceEmpty == "false")
    {
        //alert("To calculate result, please enter any two values which is required.");
         document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the result, enter any two required values.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        
         var txtHour = document.getElementById("txtHour");
        var txtMinute = document.getElementById("txtMinute");
        var txtSecond = document.getElementById("txtSecond");
        var txtPaceHour = document.getElementById("txtPaceHour");
        var txtPaceMinute = document.getElementById("txtPaceMinute");
        var txtPaceSecond = document.getElementById("txtPaceSecond");
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
        return false;
    }
    else if(timeEmpty == "true" && distanceEmpty == "false" && paceEmpty == "true")
    {
        //alert("To calculate result, please enter any two values which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the result, enter any two required values.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
         var txtHour = document.getElementById("txtHour");
        var txtMinute = document.getElementById("txtMinute");
        var txtSecond = document.getElementById("txtSecond");
        var txtPaceHour = document.getElementById("txtPaceHour");
        var txtPaceMinute = document.getElementById("txtPaceMinute");
        var txtPaceSecond = document.getElementById("txtPaceSecond");
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
        return false;
    }
    else if(timeEmpty == "true" && distanceEmpty == "false" && paceEmpty == "false")
    {
        CalculateTime();
    }
   
    else if(timeEmpty == "false" && distanceEmpty == "true" && paceEmpty == "true")
    {
        //alert("To calculate result, please enter any two values which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the result, enter any two required values.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
         var txtHour = document.getElementById("txtHour");
        var txtMinute = document.getElementById("txtMinute");
        var txtSecond = document.getElementById("txtSecond");
        var txtPaceHour = document.getElementById("txtPaceHour");
        var txtPaceMinute = document.getElementById("txtPaceMinute");
        var txtPaceSecond = document.getElementById("txtPaceSecond");
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
        return false;
    }
        var txtHour = document.getElementById("txtHour");
        var txtMinute = document.getElementById("txtMinute");
        var txtSecond = document.getElementById("txtSecond");
        var txtPaceHour = document.getElementById("txtPaceHour");
        var txtPaceMinute = document.getElementById("txtPaceMinute");
        var txtPaceSecond = document.getElementById("txtPaceSecond");
    

  
    //calculate pace or time or distance
    if(timeEmpty == "false" && distanceEmpty == "true" && paceEmpty == "false")
    {
        CalculateDistance();
    }
    else if(timeEmpty == "false" && distanceEmpty == "false" && paceEmpty == "true")
    {
        CalculatePace();
    }
    else if(timeEmpty == "false" && distanceEmpty == "false" && paceEmpty == "false")
    {
        CalculatePace();
    }
        
        var txtHour = document.getElementById("txtHour");
        var txtMinute = document.getElementById("txtMinute");
        var txtSecond = document.getElementById("txtSecond");
        var txtPaceHour = document.getElementById("txtPaceHour");
        var txtPaceMinute = document.getElementById("txtPaceMinute");
        var txtPaceSecond = document.getElementById("txtPaceSecond");
        
      if(txtHour.value == "")
      {
        txtHour.value = "hh";
        txtHour.className = "clsTextBoxDefault";
      }
      if(txtMinute.value == "")
      {
        txtMinute.value = "mm";
        txtMinute.className = "clsTextBoxDefault";
      }
      if(txtSecond.value == "")
      {
        txtSecond.value = "ss";
        txtSecond.className = "clsTextBoxDefault";
      }
      if(txtPaceHour.value == "")
      {
        txtPaceHour.value = "hh";
        txtPaceHour.className = "clsTextBoxDefault";
      }
      if(txtPaceMinute.value == "")
      {
        txtPaceMinute.value = "mm";
        txtPaceMinute.className = "clsTextBoxDefault";
      }
      if(txtPaceSecond.value == "")
      {
        txtPaceSecond.value = "ss";
        txtPaceSecond.className = "clsTextBoxDefault";
      }
  
    
}

function CalculatePace()
{
    var txtHour = document.getElementById("txtHour");  
    var txtMinute = document.getElementById("txtMinute");  
    var txtSecond = document.getElementById("txtSecond");  
    var txtDistance = document.getElementById("txtDistance");  
    var txtPaceHour = document.getElementById("txtPaceHour");  
    var txtPaceMinute = document.getElementById("txtPaceMinute");  
    var txtPaceSecond = document.getElementById("txtPaceSecond");  
    var DistanceUnit = document.getElementById("ddlDistanceUnit").value;  
    var PaceUnit = document.getElementById("ddlPaceUnit").value;  
    
    PaceUnit = PaceUnit + "s";
    
    var timeEmpty = "false";
    var distanceEmpty = "false";
    var paceEmpty = "false";
    
    
    //To check input time values are empty
    if(txtHour.value == "" && txtMinute.value == "" && txtSecond.value == "")
    {
        timeEmpty = "true";
    }
    //To check input distance value is empty
    if(txtDistance.value == "")
    {
        distanceEmpty = "true";
    }
    //To check input pace values are empty
    if(txtPaceHour.value == "" && txtPaceMinute.value == "" && txtPaceSecond.value == "")
    {
        paceEmpty = "true";
    }
    
    //To display proper message or calculate result depending on the input
    if(timeEmpty == "true" && distanceEmpty == "true")
    {
        //alert("To calculate pace, enter time and distance which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the pace, enter the required time and distance.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(distanceEmpty == "true")
    {
        //alert("To calculate pace, enter distance which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate pace, enter the required distance.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(timeEmpty == "true")
    {
        //alert("To calculate pace, enter time which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate pace, enter the required time.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else
    {
        calculate = "p";
        factor = convUnit(DistanceUnit,PaceUnit);
        EvaluatePaceCalc();
    }
}

function CalculateTime()
{
    var txtHour = document.getElementById("txtHour");  
    var txtMinute = document.getElementById("txtMinute");  
    var txtSecond = document.getElementById("txtSecond");  
    var txtDistance = document.getElementById("txtDistance");  
    var txtPaceHour = document.getElementById("txtPaceHour");  
    var txtPaceMinute = document.getElementById("txtPaceMinute");  
    var txtPaceSecond = document.getElementById("txtPaceSecond");  
    
    var DistanceUnit = document.getElementById("ddlDistanceUnit").value;  
    var PaceUnit = document.getElementById("ddlPaceUnit").value;  
    
    PaceUnit = PaceUnit + "s";
    
    var timeEmpty = "false";
    var distanceEmpty = "false";
    var paceEmpty = "false";
    
    
    //To check input time values are empty
    if(txtHour.value == "" && txtMinute.value == "" && txtSecond.value == "")
    {
        timeEmpty = "true";
    }
    //To check input distance value is empty
    if(txtDistance.value == "")
    {
        distanceEmpty = "true";
    }
    //To check input pace values are empty
    if(txtPaceHour.value == "" && txtPaceMinute.value == "" && txtPaceSecond.value == "")
    {
        paceEmpty = "true";
    }
    
    //To display proper message or calculate result depending on the input
    if(paceEmpty == "true" && distanceEmpty == "true")
    {
        //alert("To calculate time, enter distance and pace which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the time, enter the required distance and pace.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(distanceEmpty == "true")
    {
        //alert("To calculate time, enter distance which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate time, enter the required distance.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(paceEmpty == "true")
    {
        //alert("To calculate time, enter pace which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the time, enter the required pace.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else
    {
        calculate = "t";
        factor = convUnit(DistanceUnit,PaceUnit);
        EvaluatePaceCalc();
    }
}

function CalculateDistance()
{
    var txtHour = document.getElementById("txtHour");  
    var txtMinute = document.getElementById("txtMinute");  
    var txtSecond = document.getElementById("txtSecond");  
    var txtDistance = document.getElementById("txtDistance");  
    var txtPaceHour = document.getElementById("txtPaceHour");  
    var txtPaceMinute = document.getElementById("txtPaceMinute");  
    var txtPaceSecond = document.getElementById("txtPaceSecond");  
    
    var DistanceUnit = document.getElementById("ddlDistanceUnit").value;  
    var PaceUnit = document.getElementById("ddlPaceUnit").value;  
    
    PaceUnit = PaceUnit + "s";
    
    var timeEmpty = "false";
    var distanceEmpty = "false";
    var paceEmpty = "false";
    
    
    //To check input time values are empty
    if(txtHour.value == "" && txtMinute.value == "" && txtSecond.value == "")
    {
        timeEmpty = "true";
    }
    //To check input distance value is empty
    if(txtDistance.value == "")
    {
        distanceEmpty = "true";
    }
    //To check input pace values are empty
    if(txtPaceHour.value == "" && txtPaceMinute.value == "" && txtPaceSecond.value == "")
    {
        paceEmpty = "true";
    }
    
    //To display proper message or calculate result depending on the input
    if(paceEmpty == "true" && timeEmpty == "true")
    {
        //alert("To calculate distance, enter time and pace which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate the distance, enter the required time and pace.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(timeEmpty == "true")
    {
        //alert("To calculate distance, enter time which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate distance, enter the required time.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(paceEmpty == "true")
    {
        //alert("To calculate distance, enter pace which is required.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="To calculate distance, enter pace which is required.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else
    {
        calculate = "d";
        factor = convUnit(PaceUnit,DistanceUnit);
        EvaluatePaceCalc();
    }
}
function EvaluatePaceCalc()
{
    var txtHour = document.getElementById("txtHour");  
    var txtMinute = document.getElementById("txtMinute");  
    var txtSecond = document.getElementById("txtSecond");  
    var txtDistance = document.getElementById("txtDistance");  
    var txtPaceHour = document.getElementById("txtPaceHour");  
    var txtPaceMinute = document.getElementById("txtPaceMinute");  
    var txtPaceSecond = document.getElementById("txtPaceSecond");  
    
    time = toSecs(txtHour.value,txtMinute.value,txtSecond.value);
    pace = toSecs(txtPaceHour.value,txtPaceMinute.value,txtPaceSecond.value);
    dist = txtDistance.value;
    
    var hour=00;
    var min=00;
    var sec=00;
    
    
   //Calculate pace 
   if(calculate == "p")
    {
        pace = (time / dist ) / factor;
        
       //Added by ritesh
        //pace = parseFloat(Math.round(pace));
        
        hour = HrsFromTSecs(pace);
        min = MinsFromTSecs(pace);
        sec = SecsFromTSecs(pace);
//	    txtPaceHour.value = Math.round(hour);
//	    txtPaceMinute.value = Math.round(min);
//	    txtPaceSecond.value = Math.round(sec);

        
        
	    if(hour.indexOf(".") > 0)
	    {
	        txtPaceHour.value = hour.substr(0,hour.indexOf(".") + 5);
	        txtPaceHour.value = Math.round(hour*100)/100;
	    }
	    else
	    {
	        txtPaceHour.value = hour;
	    }
	        
	    if(min.indexOf(".") > 0)
	    {
	        txtPaceMinute.value = min.substr(0,min.indexOf(".") + 5);
	        txtPaceMinute.value = Math.round(min*100)/100;
	    }
	    else
	    {
	        txtPaceMinute.value = min;
	    }
	        
	    if(sec.indexOf(".") > 0)
	    {
	        txtPaceSecond.value = sec.substr(0,sec.indexOf(".") + 5);
	        //txtPaceSecond.value = sec = Math.round(sec*100)/100;
	        txtPaceSecond.value = Math.round(sec*100)/100;
	    }
	    else
	    {
	        txtPaceSecond.value = sec;
	    }
	   //spanPaceHead
	   //spanPaceResult
	   document.getElementById("spanPaceHead").innerHTML = "Pace: ";
	   document.getElementById("spanPaceResultHH").innerHTML = txtPaceHour.value;
	   document.getElementById("spanPaceResultMM").innerHTML = txtPaceMinute.value;
	   document.getElementById("spanPaceResultSS").innerHTML = txtPaceSecond.value;
	   document.getElementById("spanHH").style.display = "";
	   document.getElementById("spanMM").style.display = "";
	   document.getElementById("spanSS").style.display = "";
	   
	   document.getElementById("spanHH").innerHTML = "hh";
	   document.getElementById("spanMM").innerHTML = "mm";
	   document.getElementById("spanSS").innerHTML = "ss";
	   
	    
	}
	//Calculate distance
	else if(calculate == "d")
	{
	    dist = time / (pace / factor);
	    
	    txtDistance.value = Math.round(dist*1000)/1000;
	    //txtDistance.value = dist;
	    
	   document.getElementById("spanPaceHead").innerHTML = "Distance: ";
	   
	    document.getElementById("spanPaceResultHH").innerHTML = Math.round(dist*1000)/1000;
	  
	   document.getElementById("spanHH").innerHTML = document.getElementById("ddlDistanceUnit").options[document.getElementById("ddlDistanceUnit").selectedIndex].value;
	     document.getElementById("spanPaceResultMM").innerHTML = "";
	   document.getElementById("spanPaceResultSS").innerHTML = "";
	   document.getElementById("spanMM").style.display = "none";
	   document.getElementById("spanSS").style.display = "none";
	}
	//Calculate time
	else if(calculate == "t")
	{
	    time = dist  * pace * factor;
	    
	    txtHour.value = HrsFromTSecs(time);
	    txtMinute.value = MinsFromTSecs(time);
	    txtSecond.value = SecsFromTSecs(time);
	    
	    if(txtHour.value.indexOf(".") > 0)
	    {
	        txtHour.value = txtHour.value.substr(0,txtHour.value.indexOf(".") + 3);
	    }
	   
	        
	    if(txtMinute.value.indexOf(".") > 0)
	    {
	        txtMinute.value = txtMinute.value.substr(0,txtMinute.value.indexOf(".") + 3);
	    }
	  
	        
	    if(txtSecond.value.indexOf(".") > 0)
	    {
	        txtSecond.value = txtSecond.value.substr(0,txtSecond.value.indexOf(".") + 3);
	    }
	   
	    
	    document.getElementById("spanPaceHead").innerHTML = "Time: ";
	  
	   
	     document.getElementById("spanPaceResultHH").innerHTML = txtHour.value;
	   document.getElementById("spanPaceResultMM").innerHTML = txtMinute.value;
	   document.getElementById("spanPaceResultSS").innerHTML = txtSecond.value;
	   document.getElementById("spanHH").style.display = "";
	   document.getElementById("spanMM").style.display = "";
	   document.getElementById("spanSS").style.display = "";
	   
	   document.getElementById("spanHH").innerHTML = "hh";
	   document.getElementById("spanMM").innerHTML = "mm";
	   document.getElementById("spanSS").innerHTML = "ss";
	    
	}
	calculate = "";
	
}

//Convert hr, min and seconds into total seconds
function toSecs(hr, min, sec)
{
// Convert each component to a number (remove leading 0) and sum them
	var hour = 0;
	var minute = 0;
	var second = 0;
	
	if(hr != "")
	{
	    hour = parseFloat(hr, 10);
	}
	    
	if(min != "")
	{
	    minute = parseFloat(min, 10);
	}
	
	if(sec != "")
	{
	    second = parseFloat(sec, 10);
	}
	    
	var hsecs = parseFloat(hour * 3600);
	var msecs = parseFloat(minute * 60);
	var total = hsecs + msecs + second;
	
    return total;
}

//To get hrs from the total seconds
function HrsFromTSecs(totsecs)
{
// Gets hr component for hr:min:sec string
	var hrs; // hr component as string
	var flthrs = totsecs / 3600;
	hrs = Math.floor(flthrs); //get next int less or equal
	hrs = hrs.toString(10);
	if (hrs.length == 1) 
	{   
	    hrs = "0" + hrs;
	}
    return hrs;
}

//To get minutes from total seconds
function MinsFromTSecs(totsecs)
{
// Gets min component for  hr:min:sec string
	var mins; // hr component as string
	var hrs = HrsFromTSecs(totsecs);
	var nsecs = hrs * 3600;
	var secsleft = totsecs - nsecs;
	var fltmin = secsleft / 60;
	mins = Math.floor(fltmin); //conv to integer
	mins = mins.toString(10);
	if (mins.length == 1)
	{
	    mins = "0" + mins;
	}
    return mins;
}

//To get seconds from total seconds
function SecsFromTSecs(totsecs)
{
// Converts total seconds number to hr:min:sec string
// secs is only component that may have a decimal value
	var secs; // hr component as string
	secs = totsecs - (HrsFromTSecs(totsecs) * 3600) - (MinsFromTSecs(totsecs) * 60);
	secs = secs.toString(10);
	if (secs.length == 1)
	{
		secs = "0" + secs;
	}
	else
	{ // check for a decimal point
		for (var i = 0; i < secs.length; i++)
		{
			tchar = secs.charAt(i);
			if (i == 1 && tchar == ".")
			{
				secs = "0" + secs;
				break;
			}
		}
	}
    return secs;
}

//To convert units of the output
function convUnit (funit, tunit)
{
		if (funit == tunit) 
		{
		    return 1;
		}
		else 
		if (funit == "Miles" && tunit == "Kilometers") 
		{   
		    return 1.609344;
		}
		else 
		if (funit == "Miles" && tunit == "Meters") 
		{   
		    return 1609.344;
		}
		else 
		if (funit == "Miles" && tunit == "Yards") 
		{   
		    return  1760;
		}	
		else
		if (funit == "Kilometers" && tunit == "Miles")
		{  
		     return .6213712;
		}
		else
	    if (funit == "Kilometers" && tunit == "Meters") 
	    {       
	        return 1000;
	    }
		else 
		if (funit == "Kilometers" && tunit == "Yards") 
		{   
		    return  1093.613;
		}	
		else
	    if (funit == "Meters" && tunit == "Miles")
	    {   
	         return .0006213712;
	    }
		else 
		if (funit == "Meters" && tunit == "Kilometers")
		{   
		     return .001;
		}
		else 
		if (funit == "Meters" && tunit == "Yards")
		{
		     return  1.093613;
		}	
		else 
		if (funit == "Yards" && tunit == "Miles") 
		{   
		    return .0005681; // (1/1760=)
	    }
		else 
		if (funit == "Yards" && tunit == "Kilometers") 
		{       
		    return .0009144;
		}
		else
	    if (funit == "Yards" && tunit == "Meters") 
	    {   
	        return  .9144;
	    }	
}

//To calculate heart rate
function CalculateHeartRate()
{
    var HRMALE = 220; // Heart Rate Constant for Male
    var HRFEMALE = 226; // Heart Rate Constant for Female
    var LOWENDHR = 0.65; // Heart Rate Constant for Low End
    var HIGHENDHR = 0.85; // Heart Rate Constant for High End

    var age = document.getElementById("txtAge").value;  
//    var weight = document.getElementById("txtWeight").value;  
//    var weightUnit = document.getElementById("ddlWeightUnit").value;  
    var rhr = document.getElementById("txtRHR").value;  
    var rdbMale = document.getElementById("rdbMale");  
    var rdbFemale = document.getElementById("rdbFemale");  
    
//    var rowResultMHR = document.getElementById("rowResultMHR");  
//    var rowResultTHRR = document.getElementById("rowResultTHRR");  
    
    var spanmaxHeartRate = document.getElementById("spanmaxHeartRate");  
    var spanTargetHeartRate = document.getElementById("spanTargetHeartRate");  
    
    var hrConst;
    
    if(document.getElementById("rdbGender").value=="M")
    {
        hrConst = HRMALE;
    }
    else
    {
        hrConst = HRFEMALE;
    }
    
    var mhr = hrConst - age;
    var hrr = mhr - rhr;
    var upEndHR = (hrr * HIGHENDHR);
    var lowEndHR = (hrr * LOWENDHR);
    upEndHR = parseFloat(upEndHR) + parseFloat(rhr);
    lowEndHR = parseFloat(lowEndHR) + parseFloat(rhr);
//    rowResultMHR.style.display = "block";
//    rowResultTHRR.style.display = "block";
   
    spanmaxHeartRate.innerHTML = Math.round(mhr);
    spanTargetHeartRate.innerHTML = Math.round(lowEndHR) + "-" + Math.round(upEndHR);
    return false;
    
}
//To calculate 
function CalculateCalories()
{
    //alert("Calculating calories");
//    var METSRUNNING = 0.790;
//    var METSCYCLING = 0.28;
//    var METSSWIMMING = 2.93;
    
    var caloriesBurn = 0;
    var duration = 0;
    var metsCoefficient = document.getElementById("ddlSport").value;   
    var weight = document.getElementById("txtWeight").value;  
    var weightUnit = document.getElementById("ddlWeightUnit").value;  
    
    var txtDurationHour = document.getElementById("txtDurationHour");
    var txtDurationMinute = document.getElementById("txtDurationMinute");
    var txtDurationSec = document.getElementById("txtDurationSec");
//    var distance = document.getElementById("txtWorkoutDistance").value;  
//    var distanceUnit = document.getElementById("ddlWorkoutDistanceUnit").value;  
//    var sport = document.getElementById("ddlSport").value;  
    
    if(txtDurationHour.value == "hh")
        txtDurationHour.value = "";
    if(txtDurationMinute.value == "mm")
        txtDurationMinute.value = "";
    if(txtDurationSec.value == "ss")
        txtDurationSec.value = "";
        
        
    
    
    
    
    
    duration = toSecs(txtDurationHour.value,txtDurationMinute.value,txtDurationSec.value);
    duration = duration / 60;
//    var rowResultCalories = document.getElementById("rowResultCalories");  
    
    var txtCaloriesBurned = document.getElementById("lblCaloriesBurnt");  
   
   //To check input time values are empty
    if(txtDurationHour.value == "" && txtDurationMinute.value == "" && txtDurationSec.value == "")
    {
       // alert("Please enter all mandatory fields.");
         document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Please enter all mandatory fields.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    
    if (weightUnit == "Pounds") 
    {
		weight = weight * 0.45359237;
	}
	
    
    caloriesBurn = Math.round(((metsCoefficient * 3.5 * weight)/200) * duration);
	txtCaloriesBurned.innerHTML = Math.round(caloriesBurn*1000)/1000;
	if(txtDurationHour.value == "" || txtDurationHour.value == "hh")
        txtDurationHour.value = "hh";
    if(txtDurationMinute.value == "" || txtDurationHour.value == "mm")
        txtDurationMinute.value = "mm";
    if(txtDurationSec.value == "" || txtDurationHour.value == "ss")
        txtDurationSec.value = "ss";
	
	
	return false;
}


function CalculateDistances()
{
    var miles = document.getElementById("txtMiles").value;
    var kms = document.getElementById("txtKM").value;
    var yards = document.getElementById("txtYards").value;
    var meters = document.getElementById("txtMeters").value;
    var feets = document.getElementById("txtFeet").value;
    var inches = document.getElementById("txtInches").value;
    
    var factormiles = 0.0000621371;            // mm to miles.
    var factorkms = 0.0001;  // mm to kilomtr.
    var factoryards = 0.1093613298; //mm to yards.
    var factormeters = 0.1;  // mm to mtr.
    var factorfeets = 0.3280839895;  // mm to feet.
    var factorinches = 3.937007874;  // mm to in.
    
    if(miles == "" && kms == "" && yards == "" && meters == "" && feets == "" && inches == "")
    {
        //alert("Please enter the value in any unit of distance.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Please enter the value in a unit of Distance specifically.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    else if(miles != "" && kms != "" && yards != "" && meters != "" && feets != "" && inches != "")
    {
        return false;
    }
    
  if(miles == 0 || kms == 0 || yards == 0 || meters == 0 || feets == 0 || inches == 0)
   {
      document.getElementById("txtMiles").value = 0;
      document.getElementById("txtKM").value = 0;
      document.getElementById("txtYards").value = 0;
      document.getElementById("txtMeters").value = 0;
      document.getElementById("txtFeet").value = 0;
      document.getElementById("txtInches").value = 0;
   } 
    
    var firstvalue = 0;
    var count = 0;
    var rsize = 15;
    
    // Find first non-blank entry

   if (miles != null && miles != 0) 
   {
      firstvalue = miles / factormiles;
   }
   else if (kms != null && kms != 0) 
   {
      firstvalue = kms / factorkms;
   }
   else if (yards != null && yards != 0) 
   {
      firstvalue = yards / factoryards;
   }
   else if (meters != null && meters != 0) 
   {
      firstvalue = meters / factormeters;
   }
   else if (feets != null && feets != 0) 
   {
      firstvalue = feets / factorfeets;
   }
   else if (inches != null && inches != 0) 
   {
      firstvalue = inches / factorinches;
   }

//    document.getElementById("txtMiles").value = formatvalue((firstvalue * factormiles), rsize);
//    document.getElementById("txtKM").value = formatvalue((firstvalue * factorkms), rsize);
//    document.getElementById("txtYards").value = formatvalue((firstvalue * factoryards), rsize);
//    document.getElementById("txtMeters").value = formatvalue((firstvalue * factormeters), rsize);
//    document.getElementById("txtFeet").value = formatvalue((firstvalue * factorfeets), rsize);
//    document.getElementById("txtInches").value = formatvalue((firstvalue * factorinches), rsize);

    var convertedMiles  = Math.round(formatvalue((firstvalue * factormiles), rsize)* 1000)/1000;
    var convertedKM = Math.round(formatvalue((firstvalue * factorkms), rsize)* 1000)/1000;
    var convertedYards = Math.round(formatvalue((firstvalue * factoryards), rsize)* 1000)/1000;
    var convertedMeters = Math.round(formatvalue((firstvalue * factormeters), rsize)* 1000)/1000;
    var convertedFeets = Math.round(formatvalue((firstvalue * factorfeets), rsize)* 1000)/1000;
    var convertedInches = Math.round(formatvalue((firstvalue * factorinches), rsize)* 1000)/1000;
    
    
    document.getElementById("txtMiles").value = convertedMiles;
    document.getElementById("txtKM").value = convertedKM;
    document.getElementById("txtYards").value = convertedYards;
    document.getElementById("txtMeters").value = convertedMeters ;
    document.getElementById("txtFeet").value = convertedFeets;
    document.getElementById("txtInches").value = convertedInches;
    
    if(document.getElementById("txtInches").value.length > 10)
        {
          var myNum = document.getElementById("txtInches").value;
          var num = new Number(myNum);
          document.getElementById("txtInches").value = (num.toExponential(2) );
        }
        
    if(document.getElementById("txtKM").value.length > 10)
        {
          var myNum = document.getElementById("txtKM").value;
          var num = new Number(myNum);
          document.getElementById("txtKM").value = (num.toExponential(2) );
        } 
           
     if(document.getElementById("txtYards").value.length > 10)
        {
          var myNum = document.getElementById("txtYards").value;
          var num = new Number(myNum);
          document.getElementById("txtYards").value = (num.toExponential(2) );
        }    
        
     if(document.getElementById("txtMeters").value.length > 10)
        {
          var myNum = document.getElementById("txtMeters").value;
          var num = new Number(myNum);
          document.getElementById("txtMeters").value = (num.toExponential(2) );
        }  
         
      if(document.getElementById("txtFeet").value.length > 10)
        {
          var myNum = document.getElementById("txtFeet").value;
          var num = new Number(myNum);
          document.getElementById("txtFeet").value = (num.toExponential(2) );
        }  
        
      if(document.getElementById("txtMiles").value.length > 10)
        {
          var myNum = document.getElementById("txtMiles").value;
          var num = new Number(myNum);
          document.getElementById("txtMiles").value = (num.toExponential(2) );
        }  
        
    //document.getElementById("txtMiles").focus();
}

function CalculateDistancesParticular(_controlId)
{
    document.getElementById("divWarningMsg").style.display = "none";
    var varTemp = document.getElementById(_controlId);  
    var alertName = "";
    if(_controlId == "txtMiles")
    {
        alertName = "Miles";
    }
    else if(_controlId == "txtKM")
    {
        alertName = "Kilometers";
    }
    else if(_controlId == "txtYards")
    {
        alertName = "Yards";
    }
    else if(_controlId == "txtMeters")
    {
        alertName = "Meters";
    }
    else if(_controlId == "txtFeet")
    {
        alertName = "Feets";
    }
    else if(_controlId == "txtInches")
    {
        alertName = "Inches";
    }
    var isMandatory = 'False'; 
    errors = "";
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
    {   
        errors = errors.replace(/[/]/g, "" );
        errors = errors.replace(/<li>/g, "" );
        errors = errors.replace(/<ul>/g, "" );
        errors = errors.replace(/<ul>+/g, "" );
        errors = errors.replace(/<br>+/g, "\n" ); 
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        document.getElementById(_controlId).focus();
        return false;
    }
    var miles = document.getElementById("txtMiles").value;
    var kms = document.getElementById("txtKM").value;
    var yards = document.getElementById("txtYards").value;
    var meters = document.getElementById("txtMeters").value;
    var feets = document.getElementById("txtFeet").value;
    var inches = document.getElementById("txtInches").value;
    
    var factormiles = 0.0000621371;            // mm to miles.
    var factorkms = 0.0001;  // mm to kilomtr.
    var factoryards = 0.1093613298; //mm to yards.
    var factormeters = 0.1;  // mm to mtr.
    var factorfeets = 0.3280839895;  // mm to feet.
    var factorinches = 3.937007874;  // mm to in.
//    
//    if(miles == "" && kms == "" && yards == "" && meters == "" && feets == "" && inches == "")
//    {
//        //alert("Please enter the value in any unit of distance.");
//        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Please enter the value in a unit of Distance specifically.";
//        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//        document.getElementById("divWarningMsg").style.display = "block";
//        return false;
//    }
    
    var firstvalue = 0;
    var count = 0;
    var rsize = 15;
    var _flag = 0;
    
    // Find first non-blank entry
    
   if(miles == 0 || kms == 0 || yards == 0 || meters == 0 || feets == 0 || inches == 0)
   {
      document.getElementById("txtMiles").value = 0;
      document.getElementById("txtKM").value = 0;
      document.getElementById("txtYards").value = 0;
      document.getElementById("txtMeters").value = 0;
      document.getElementById("txtFeet").value = 0;
      document.getElementById("txtInches").value = 0;
   } 

   if (miles != null && miles != 0 && _controlId == "txtMiles") 
   {
      firstvalue = miles / factormiles;
      _flag = 1;
   }
   else if (kms != null && kms != 0 && _controlId == "txtKM") 
   {
      firstvalue = kms / factorkms;
      _flag = 1;
   }
   else if (yards != null && yards != 0 && _controlId == "txtYards") 
   {
      firstvalue = yards / factoryards;
      _flag = 1;
   }
   else if (meters != null && meters != 0 && _controlId == "txtMeters") 
   {
      firstvalue = meters / factormeters;
      _flag = 1;
   }
   else if (feets != null && feets != 0 && _controlId == "txtFeet") 
   {
      firstvalue = feets / factorfeets;
      _flag = 1;
   }
   else if (inches != null && inches != 0 && _controlId == "txtInches") 
   {
      firstvalue = inches / factorinches;
      _flag = 1;
   }
    if(_flag == 1)
    {
        document.getElementById("txtMiles").value = Math.round(formatvalue((firstvalue * factormiles), rsize)*1000)/1000;
        document.getElementById("txtKM").value = Math.round(formatvalue((firstvalue * factorkms), rsize)*1000)/1000;
        document.getElementById("txtYards").value = Math.round(formatvalue((firstvalue * factoryards), rsize)*1000)/1000;
        document.getElementById("txtMeters").value = Math.round(formatvalue((firstvalue * factormeters), rsize)*1000)/1000;
        document.getElementById("txtFeet").value = Math.round(formatvalue((firstvalue * factorfeets), rsize)*1000)/1000;
        document.getElementById("txtInches").value = Math.round(formatvalue((firstvalue * factorinches), rsize)*1000)/1000;
        
        if(document.getElementById("txtInches").value.length > 10)
        {
          var myNum = document.getElementById("txtInches").value;
          var num = new Number(myNum);
          document.getElementById("txtInches").value = (num.toExponential(2) );
        }
        
    if(document.getElementById("txtKM").value.length > 10)
        {
          var myNum = document.getElementById("txtKM").value;
          var num = new Number(myNum);
          document.getElementById("txtKM").value = (num.toExponential(2) );
        } 
           
     if(document.getElementById("txtYards").value.length > 10)
        {
          var myNum = document.getElementById("txtYards").value;
          var num = new Number(myNum);
          document.getElementById("txtYards").value = (num.toExponential(2) );
        }    
        
     if(document.getElementById("txtMeters").value.length > 10)
        {
          var myNum = document.getElementById("txtMeters").value;
          var num = new Number(myNum);
          document.getElementById("txtMeters").value = (num.toExponential(2) );
        }  
         
      if(document.getElementById("txtFeet").value.length > 10)
        {
          var myNum = document.getElementById("txtFeet").value;
          var num = new Number(myNum);
          document.getElementById("txtFeet").value = (num.toExponential(2) );
        }  
        
      if(document.getElementById("txtMiles").value.length > 10)
        {
          var myNum = document.getElementById("txtMiles").value;
          var num = new Number(myNum);
          document.getElementById("txtMiles").value = (num.toExponential(2) );
        }  
        
        
       
    }
    //document.getElementById("txtMiles").focus();
}

function formatvalue(input, rsize) 
{

   var invalid = "**************************";

   var nines = "999999999999999999999999";

   var strin = "" + input;

   var fltin = parseFloat(strin);

   if (strin.length <= rsize) 
   {   
        return strin;
   }

   if (strin.indexOf("e") != -1 || fltin > parseFloat(nines.substring(0,rsize)+".4"))
   {
      return invalid.substring(0, rsize);
   }

   var rounded = "" + (fltin + (fltin - parseFloat(strin.substring(0, rsize))));

   return rounded.substring(0, rsize);

}


function CalculateWeights()
{
    var metrictons = document.getElementById("txtMetricTons").value;
    var tons = document.getElementById("txtTons").value;
    var kilograms = document.getElementById("txtKilograms").value;
    var pounds = document.getElementById("txtPounds").value;
    var oz = document.getElementById("txtOZ").value;
    var grams = document.getElementById("txtGrams").value;
    
    var factormetrictons = 0.001; //KG To MTon;
    var factortons = 0.0011023; //KG To Tons;
    var factorkilograms = 1; //KG;
    var factorpounds = 2.2046215; //KG TO Pounds;
    var factoroz = 35.27396; //KG To Oz;
    var factorgrams = 1000; //KG To Gram;
    
    if(metrictons == "" && tons == "" && kilograms == "" && pounds == "" && oz == "" && grams == "")
    {
        //alert("Please enter the value in any unit of weight.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Please enter the value in a unit of Weight specifically.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        return false;
    }
    if(metrictons != "" && tons != "" && kilograms != "" && pounds != "" && oz != "" && grams != "")
    {
        return false;
    }
    
    if(metrictons == 0 || tons == 0 || kilograms == 0 || pounds == 0 || oz == 0 || grams == 0)
    {
       document.getElementById("txtMetricTons").value = "0";
       document.getElementById("txtTons").value = "0";
       document.getElementById("txtKilograms").value = "0";
       document.getElementById("txtPounds").value = "0" ;
       document.getElementById("txtOZ").value = "0";
       document.getElementById("txtGrams").value = "0" ; 
    
    }
    var firstvalue = 0;
    var count = 0;
    var rsize = 15;
    
    // Find first non-blank entry

   if (metrictons != null && metrictons != 0) 
   {
      firstvalue = metrictons / factormetrictons;
   }
   else if (tons != null && tons != 0) 
   {
      firstvalue = tons / factortons;
   }
   else if (kilograms != null && kilograms != 0) 
   {
      firstvalue = kilograms / factorkilograms;
   }
   else if (pounds != null && pounds != 0) 
   {
      firstvalue = pounds / factorpounds;
   }
   else if (oz != null && oz != 0) 
   {
      firstvalue = oz / factoroz;
   }
   else if (grams != null && grams != 0) 
   {
      firstvalue = grams / factorgrams;
   }

    var convertedMetricTon  = Math.round(formatvalue((firstvalue * factormetrictons), rsize)* 1000)/1000;
    var convertedTon = Math.round(formatvalue((firstvalue * factortons), rsize)* 1000)/1000;
    var convertedKG = Math.round(formatvalue((firstvalue * factorkilograms), rsize)* 1000)/1000;
    var convertedPound = Math.round(formatvalue((firstvalue * factorpounds), rsize)* 1000)/1000;
    var convertedOZ = Math.round(formatvalue((firstvalue * factoroz), rsize)* 1000)/1000;
    var convertedGrams = Math.round(formatvalue((firstvalue * factorgrams), rsize)* 1000)/1000;
    
    document.getElementById("txtMetricTons").value = convertedMetricTon;
    document.getElementById("txtTons").value = convertedTon;
    document.getElementById("txtKilograms").value = convertedKG;
    document.getElementById("txtPounds").value = convertedPound ;
    document.getElementById("txtOZ").value = convertedOZ;
    document.getElementById("txtGrams").value = convertedGrams;
    
    if(document.getElementById("txtGrams").value.length > 10)
        {
          var myNum = document.getElementById("txtGrams").value;
          var num = new Number(myNum);
          document.getElementById("txtGrams").value = (num.toExponential(2) );
        }
        
     if(document.getElementById("txtOZ").value.length > 10)
        {
          var myNum = document.getElementById("txtOZ").value;
          var num = new Number(myNum);
          document.getElementById("txtOZ").value = (num.toExponential(2) );
        }   
        
     if(document.getElementById("txtPounds").value.length > 10)
        {
          var myNum = document.getElementById("txtPounds").value;
          var num = new Number(myNum);
          document.getElementById("txtPounds").value = (num.toExponential(2) );
        }   
        
     if(document.getElementById("txtKilograms").value.length > 10)
        {
          var myNum = document.getElementById("txtKilograms").value;
          var num = new Number(myNum);
          document.getElementById("txtKilograms").value = (num.toExponential(2) );
        }   
        
     if(document.getElementById("txtTons").value.length > 10)
        {
          var myNum = document.getElementById("txtTons").value;
          var num = new Number(myNum);
          document.getElementById("txtTons").value = (num.toExponential(2) );
        }   
        
    if(document.getElementById("txtMetricTons").value.length > 10)
        {
          var myNum = document.getElementById("txtMetricTons").value;
          var num = new Number(myNum);
          document.getElementById("txtMetricTons").value = (num.toExponential(2) );
        }    
    
    //document.getElementById("txtMetricTons").focus();
}

function CalculateWeightsFocusLost(_controlId)
{
    var metrictons = document.getElementById("txtMetricTons").value;
    var tons = document.getElementById("txtTons").value;
    var kilograms = document.getElementById("txtKilograms").value;
    var pounds = document.getElementById("txtPounds").value;
    var oz = document.getElementById("txtOZ").value;
    var grams = document.getElementById("txtGrams").value;
    
    var factormetrictons = 0.001; //KG To MTon;
    var factortons = 0.0011023; //KG To Tons;
    var factorkilograms = 1; //KG;
    var factorpounds = 2.2046215; //KG TO Pounds;
    var factoroz = 35.27396; //KG To Oz;
    var factorgrams = 1000; //KG To Gram;
    var _flag = 0;
    
    
    
    var varTemp = document.getElementById(_controlId);  
    var alertName = "";
    if(_controlId == "txtMetricTons")
    {
        alertName = "Metric Tons";
    }
    else if(_controlId == "txtTons")
    {
        alertName = "Tons";
    }
    else if(_controlId == "txtKilograms")
    {
        alertName = "Kilograms";
    }
    else if(_controlId == "txtPounds")
    {
        alertName = "Pounds";
    }
    else if(_controlId == "txtOZ")
    {
        alertName = "OZ";
    }
    else if(_controlId == "txtGrams")
    {
        alertName = "Grams";
    }
    var isMandatory = 'False'; 
    errors = "";
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
    {   
        errors = errors.replace(/[/]/g, "" );
        errors = errors.replace(/<li>/g, "" );
        errors = errors.replace(/<ul>/g, "" );
        errors = errors.replace(/<ul>+/g, "" );
        errors = errors.replace(/<br>+/g, "\n" ); 
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        document.getElementById(_controlId).focus();
        return false;
    }
    
//    if(metrictons == "" && tons == "" && kilograms == "" && pounds == "" && oz == "" && grams == "")
//    {
//        //alert("Please enter the value in any unit of weight.");
//        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Please enter the value in a unit of Weight specifically.";
//        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//        document.getElementById("divWarningMsg").style.display = "block";
//        return false;
//    }
    
    var firstvalue = 0;
    var count = 0;
    var rsize = 15;
    
    if(metrictons == 0 || tons == 0 || kilograms == 0 || pounds == 0 || oz == 0 || grams == 0)
    {
       document.getElementById("txtMetricTons").value = "0";
       document.getElementById("txtTons").value = "0";
       document.getElementById("txtKilograms").value = "0";
       document.getElementById("txtPounds").value = "0" ;
       document.getElementById("txtOZ").value = "0";
       document.getElementById("txtGrams").value = "0" ; 
    
    }
    
    // Find first non-blank entry

   if (metrictons != null && metrictons != 0 && _controlId == "txtMetricTons") 
   {
      firstvalue = metrictons / factormetrictons;
      _flag = 1;
   }
   else if (tons != null && tons != 0 && _controlId == "txtTons") 
   {
      firstvalue = tons / factortons;
      _flag = 1;
   }
   else if (kilograms != null && kilograms != 0 && _controlId == "txtKilograms") 
   {
      firstvalue = kilograms / factorkilograms;
      _flag = 1;
   }
   else if (pounds != null && pounds != 0 && _controlId == "txtPounds") 
   {
      firstvalue = pounds / factorpounds;
      _flag = 1;
   }
   else if (oz != null && oz != 0 && _controlId == "txtOZ") 
   {
      firstvalue = oz / factoroz;
      _flag = 1;
   }
   else if (grams != null && grams != 0 && _controlId == "txtGrams") 
   {
      firstvalue = grams / factorgrams;
      _flag = 1;
   }
    
    if(_flag == 1)
    {
        document.getElementById("txtMetricTons").value = Math.round(formatvalue((firstvalue * factormetrictons), rsize)*1000)/1000;
        document.getElementById("txtTons").value = Math.round(formatvalue((firstvalue * factortons), rsize)*1000)/1000;
        document.getElementById("txtKilograms").value = Math.round(formatvalue((firstvalue * factorkilograms), rsize)*1000)/1000;
        document.getElementById("txtPounds").value = Math.round(formatvalue((firstvalue * factorpounds), rsize)*1000)/1000;
        document.getElementById("txtOZ").value = Math.round(formatvalue((firstvalue * factoroz), rsize)*1000)/1000;
        document.getElementById("txtGrams").value = Math.round(formatvalue((firstvalue * factorgrams), rsize)*1000)/1000;
    }
    
    if(document.getElementById("txtGrams").value.length > 10)
        {
          var myNum = document.getElementById("txtGrams").value;
          var num = new Number(myNum);
          document.getElementById("txtGrams").value = (num.toExponential(2) );
        }
     if(document.getElementById("txtOZ").value.length > 10)
        {
          var myNum = document.getElementById("txtOZ").value;
          var num = new Number(myNum);
          document.getElementById("txtOZ").value = (num.toExponential(2) );
        }   
        
     if(document.getElementById("txtPounds").value.length > 10)
        {
          var myNum = document.getElementById("txtPounds").value;
          var num = new Number(myNum);
          document.getElementById("txtPounds").value = (num.toExponential(2) );
        }   
        
     if(document.getElementById("txtKilograms").value.length > 10)
        {
          var myNum = document.getElementById("txtKilograms").value;
          var num = new Number(myNum);
          document.getElementById("txtKilograms").value = (num.toExponential(2) );
        }   
        
     if(document.getElementById("txtTons").value.length > 10)
        {
          var myNum = document.getElementById("txtTons").value;
          var num = new Number(myNum);
          document.getElementById("txtTons").value = (num.toExponential(2) );
        }   
        
    if(document.getElementById("txtMetricTons").value.length > 10)
        {
          var myNum = document.getElementById("txtMetricTons").value;
          var num = new Number(myNum);
          document.getElementById("txtMetricTons").value = (num.toExponential(2) );
        }    
    //document.getElementById("txtMetricTons").focus();
}

function ClearDistanceConverter()
{
    document.getElementById("txtMiles").value = "";
    document.getElementById("txtKM").value = "";
    document.getElementById("txtYards").value = "";
    document.getElementById("txtMeters").value = "";
    document.getElementById("txtFeet").value = "";
    document.getElementById("txtInches").value = "";
}
function ClearWeightConverter()
{
    document.getElementById("txtMetricTons").value = "";
    document.getElementById("txtTons").value = "";
    document.getElementById("txtKilograms").value = "";
    document.getElementById("txtPounds").value = "";
    document.getElementById("txtOZ").value = "";
    document.getElementById("txtGrams").value = "";
}

function ValidatePaceCalculatorForm(calc) 
   {
          mandatoryFieldsErrorFlag = false;
          var status = ValidatePaceCalculatorFormRoutines();
          if(status == false)
          {
//                errors = errors.replace(/[/]/g, "" );
//                errors = errors.replace(/<li>/g, "" );
//                errors = errors.replace(/<ul>/g, "" );
//                errors = errors.replace(/<ul>+/g, "" );
//                errors = errors.replace(/<br>+/g, "\n" );
                
                //alert(errors);
                document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                errors = "";
             
            
              /*
                var messageErrorsDiv = document.getElementById("MessageErrors");
                
                messageErrorsDiv.style.display = "block";
                errors +='</ul>';
                messageErrorsDiv.innerHTML = "";
                
                messageErrorsDiv.innerHTML = errors; 
                errors = "<center>Some errors were encountered while processing your submission.</center><br /><ul>";
                */
                return false;   
          }
          else 
          {
            /*
            var messageErrorsDiv = document.getElementById("MessageErrors");
            
            messageErrorsDiv.innerHTML = "<img src='../../Images/home page/loading.gif' alt='Loading...' />Sending Message...";           
            messageErrorsDiv.style.display = "block";
            */
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
            document.getElementById("divWarningMsg").style.display = "none";
            Calculate();
            
//            if(calc == "1")
//                CalculateTime();
//            else if(calc == "2")
//                CalculateDistance();
//            else if(calc == "3")
//                CalculatePace();
            
            return false;
          }
          return false;
   }
   
   //------------------------------------------------------------------------------------------
 function ValidatePaceCalculatorFormRoutines()
 {
    
   var status = true;
       
   
        // validating hour of time
   var varTemp = document.getElementById("txtHour");  
    if(varTemp.value == "hh")
   {
        varTemp.value = "";
    }
   var alertName = "Time Hour";
   var isMandatory = 'False';
   if(bValidate(varTemp, "Float" ,isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Time is invalid. Please enter valid time.";
        varTemp.value = "";
   }
        // validating minute of time
    varTemp = document.getElementById("txtMinute");  
     if(varTemp.value == "mm")
   {
        varTemp.value = "";
    }
    alertName = "Time Minute";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Time is invalid. Please enter valid time.";
        varTemp.value = "";
   }  
    
        // validating second of time
    varTemp = document.getElementById("txtSecond");  
     if(varTemp.value == "ss")
   {
        varTemp.value = "";
    }
    alertName = "Time Second";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Time is invalid. Please enter valid time.";
        varTemp.value = "";
   }
                    
      // validating distance
   
   varTemp = document.getElementById("txtDistance");  
   alertName = "Distance";
   isMandatory = 'False';
   if(bValidate(varTemp, "Float" ,isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Distance is invalid. Please enter valid distance.";
        varTemp.value = "";
   }
   
    // validating hour of pace
   varTemp = document.getElementById("txtPaceHour");  
    if(varTemp.value == "hh")
   {
        varTemp.value = "";
    }
   alertName = "Pace Hour";
   isMandatory = 'False';
   if(bValidate(varTemp, "Float" ,isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Pace is invalid. Please enter valid pace.";
        varTemp.value = "";
   }   
        
        // validating minute of pace
    varTemp = document.getElementById("txtPaceMinute");
     if(varTemp.value == "mm")
   {
        varTemp.value = "";
    }  
    alertName = "Pace Minute";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Pace is invalid. Please enter valid pace.";
        varTemp.value = "";
   }
    
        // validating second of pace
    varTemp = document.getElementById("txtPaceSecond"); 
     if(varTemp.value == "ss")
   {
        varTemp.value = "";
    } 
    alertName = "Pace Second";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
        status = false;   
        errors = "Pace is invalid. Please enter valid pace.";
        varTemp.value = "";
   }   
                    
    
   if( status == false)
   {
        return false;
   }  
   else
   {
        return true;
   }
 }
 //-------------------------------------------------------------------------------------------    

   function ValidateHeartRateCalculatorForm() 
   {
         mandatoryFieldsErrorFlag = false;
          var status = ValidateHeartRateCalculatorFormRoutines();
          if(status == false)
          {
                errors = errors.replace(/[/]/g, "" );
                errors = errors.replace(/<li>/g, "" );
                errors = errors.replace(/<ul>/g, "" );
                errors = errors.replace(/<ul>+/g, "" );
                errors = errors.replace(/<br>+/g, "\n" );
                
                //alert(errors);
                 document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                errors = "";
                
              /*
                var messageErrorsDiv = document.getElementById("MessageErrors");
                
                messageErrorsDiv.style.display = "block";
                errors +='</ul>';
                messageErrorsDiv.innerHTML = "";
                
                messageErrorsDiv.innerHTML = errors; 
                errors = "<center>Some errors were encountered while processing your submission.</center><br /><ul>";
                */
                return false;   
          }
          else 
          {
            /*
            var messageErrorsDiv = document.getElementById("MessageErrors");
            
            messageErrorsDiv.innerHTML = "<img src='../../Images/home page/loading.gif' alt='Loading...' />Sending Message...";           
            messageErrorsDiv.style.display = "block";
            */
             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
                document.getElementById("divWarningMsg").style.display = "none";
            CalculateHeartRate();
            return true;
          }
   }
   
   //------------------------------------------------------------------------------------------
 function ValidateHeartRateCalculatorFormRoutines()
 {
    
   var status = true;
   // validating age
   var varTemp = document.getElementById("txtAge");  
   var alertName = "Age";
   var isMandatory = 'True';
   if(bValidate(varTemp, "Numeric" ,isMandatory , alertName) != true)
   {
        varTemp.focus();
        status = false;  
        return false;
   }
   if(varTemp.value > 100)
   {
        errors = "Age should be less than or equal to 100.";
        varTemp.value = "";
        varTemp.focus();
        status = false;  
        return false;
   }
   
   if(varTemp.value == "")
   {
        errors = "Age cannot be blank.";
        varTemp.value = "";
        varTemp.focus();
        status = false;  
        return false;
   }
   if(varTemp.value == "0")
   {
        errors = "Age cannot be 0.";
        varTemp.value = "";
        varTemp.focus();
        status = false;  
        return false;
   }
   
   
//        // validating weight
//    varTemp = document.getElementById("txtWeight");  
//    alertName = "Weight";
//    isMandatory = 'True'; 
//   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
//         status = false;   
    
        // validating resting heart rate
    varTemp = document.getElementById("txtRHR");  
    alertName = "Resting Heart Rate";
    isMandatory = 'True'; 
   if(bValidate(varTemp,"Numeric",isMandatory , alertName) != true)
   {
        varTemp.focus();
        status = false;  
        return false;
   } 
     
     if(document.getElementById("txtRHR").value == "0")
     {
        errors = "Resting Heart Rate cannot be 0.";
        varTemp.value = "";
        varTemp.focus();
        status = false;  
        return false;
     }
     
     
     
//   if( status == false)
//   {
//        return false;
//   }  
//   else
//   {
        return true;
   //}
 }
 
 //-------------------------------------------------------------------------------------------    

   function ValidateCalorieMeterForm() 
   {
         mandatoryFieldsErrorFlag = false;
          var status = ValidateCalorieMeterFormRoutines();
          if(status == false)
          {
                errors = errors.replace(/[/]/g, "" );
                errors = errors.replace(/<li>/g, "" );
                errors = errors.replace(/<ul>/g, "" );
                errors = errors.replace(/<ul>+/g, "" );
                errors = errors.replace(/<br>+/g, "\n" );
                
                //alert(errors);
                 document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                
//                 document.getElementById("txtDurationHour").value = "Hours";
//                 document.getElementById("txtDurationHour").className = "clsTextBoxDefault";
//                 document.getElementById("txtDurationMinute").value = "Minutes";
//                 document.getElementById("txtDurationMinute").className = "clsTextBoxDefault";
//                 document.getElementById("txtDurationSec").value = "Seconds";
//                 document.getElementById("txtDurationSec").className = "clsTextBoxDefault";
            
                errors = "";
                
              /*
                var messageErrorsDiv = document.getElementById("MessageErrors");
                
                messageErrorsDiv.style.display = "block";
                errors +='</ul>';
                messageErrorsDiv.innerHTML = "";
                
                messageErrorsDiv.innerHTML = errors; 
                errors = "<center>Some errors were encountered while processing your submission.</center><br /><ul>";
                */
                return false;   
          }
          else 
          {
            /*
            var messageErrorsDiv = document.getElementById("MessageErrors");
            
            messageErrorsDiv.innerHTML = "<img src='../../Images/home page/loading.gif' alt='Loading...' />Sending Message...";           
            messageErrorsDiv.style.display = "block";
            */
              document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
                document.getElementById("divWarningMsg").style.display = "none";
            CalculateCalories();
            return true;
          }
   }
   
   //------------------------------------------------------------------------------------------
 function ValidateCalorieMeterFormRoutines()
 {
    
   var status = true;
       
   
        // validating weight
    var varTemp = document.getElementById("txtWeight");  
    var alertName = "Weight";
    var isMandatory = 'True'; 
    if(document.getElementById("txtWeight").value =="")
   {
        status = false;   
        errors =alertName + " can not be blank.";
        varTemp.focus();
        return false;
   }
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {    
        status = false;   
        errors =alertName + " should contain only numbers.";
        return false;
   }
   
    //height
//    varTemp = document.getElementById("txtHeight");  
//    alertName = "Height";
//    isMandatory = 'True'; 
//    
//    if(document.getElementById("txtHeight").value =="")
//   {
//        status = false;   
//        errors =alertName + " can not be blank.";
//        varTemp.focus();
//        return false;
//   }
//   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
//   {    
//        status = false;   
//        errors =alertName + " should contain only numbers.";
//        return false;
//        
//   }
   
    
//        // validating distance
//    varTemp = document.getElementById("txtWorkoutDistance");  
//    alertName = "Distance";
//    isMandatory = 'True'; 
//   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
//         status = false;   

// validating hour of duration excercise
   varTemp = document.getElementById("txtDurationHour");  
//   if(varTemp.value == "Hours")
//   {
//    varTemp.value = "";
//   }
   alertName = "Duration Hour";
   isMandatory = 'False';
   if(varTemp.value != "hh")
   {
       if(bValidate(varTemp, "Float" ,isMandatory , alertName) != true)
       {
            status = false;   
            errors = "Duration is invalid. Please enter valid duration.";
            varTemp.value = "";
            return false;
       }   
    }
        
    // validating minute of duration excercise
    varTemp = document.getElementById("txtDurationMinute");  
//    if(varTemp.value == "Minutes")
//   {
//        varTemp.value = "";
//    }
    alertName = "Duration Minute";
    isMandatory = 'False'; 
    if(varTemp.value != "mm")
    {
       if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
       {
            status = false;   
            errors = "Duration is invalid. Please enter valid duration.";
            varTemp.value = "";
            return false;
       }
    }
    
        // validating second of duration excercise
    varTemp = document.getElementById("txtDurationSec");  
//   if(varTemp.value == "Seconds")
//   {
//    varTemp.value = "";
//   }
    alertName = "Duration Second";
    isMandatory = 'False'; 
    if(varTemp.value != "ss")
    {
       if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
       {
            status = false;   
            errors = "Duration is invalid. Please enter valid duration.";
            varTemp.value = "";
            return false;
       }   
     }
   
   
   if( (document.getElementById("txtDurationMinute").value == "" || document.getElementById("txtDurationMinute").value == "mm") && (document.getElementById("txtDurationSec").value =="ss" || document.getElementById("txtDurationSec").value == "") &&  (document.getElementById("txtDurationHour").value =="hh" || document.getElementById("txtDurationHour").value == "") )
   {
        status = false;   
        errors = "Duration can not be blank.";
        //varTemp.focus();
            document.getElementById("txtDurationHour").value = "hh";
            document.getElementById("txtDurationHour").className = "clsTextBoxDefault";
            document.getElementById("txtDurationMinute").value = "mm";
            document.getElementById("txtDurationMinute").className = "clsTextBoxDefault";
            document.getElementById("txtDurationSec").value = "ss";
            document.getElementById("txtDurationSec").className = "clsTextBoxDefault";
        return false;
   }
   
   if(parseFloat(document.getElementById("txtDurationHour").value) > 24 || parseFloat(document.getElementById("txtDurationMinute").value) > 59 || parseFloat(document.getElementById("txtDurationSec").value) > 59 )
   {
        if(parseFloat(document.getElementById("txtDurationHour").value) > 24)
             errors = "Hours should be between 0 to 24.";
        else if(parseFloat(document.getElementById("txtDurationMinute").value) > 59)
            errors = "Minutes should be between 0 to 59.";
        else if(parseFloat(document.getElementById("txtDurationSec").value) > 59)
             errors = "Seconds should be between 0 to 59.";
        status = false;   
        //errors = "Duration can not be blank.";
        //varTemp.focus();
                if(document.getElementById("txtDurationHour").value == "")
                {
                    document.getElementById("txtDurationHour").value = "hh";
                    document.getElementById("txtDurationHour").className = "clsTextBoxDefault";
                }
                if(document.getElementById("txtDurationMinute").value == "")
                {
                    document.getElementById("txtDurationMinute").value = "mm";
                    document.getElementById("txtDurationMinute").className = "clsTextBoxDefault";
                }
                if(document.getElementById("txtDurationSec").value == "")
                {
                    document.getElementById("txtDurationSec").value = "ss";
                    document.getElementById("txtDurationSec").className = "clsTextBoxDefault";
                }
       return false;
   
   }
   
   
   
   
   
   
//   varTemp = document.getElementById("txtNumberOfDays")
//   alertName = "Days";
//   isMandatory = 'False'; 
//   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
//   {
//        status = false;   
//        errors = "No of Days are invalid.";
//        varTemp.value = "";
//        return false;
//   }
      
//   if( status == false)
//   {
//        return false;

//   }  
//   else
//   {
        return true;
   //}
 }
 
   function ValidateDistanceConverter()
   {
         mandatoryFieldsErrorFlag = false;
          if(document.getElementById("divWarningMsg").style.display != "block" )
          {
//              var status = ValidateDistanceConverterRoutines();
//              if(status == false)
//              {
//                    errors = errors.replace(/[/]/g, "" );
//                    errors = errors.replace(/<li>/g, "" );
//                    errors = errors.replace(/<ul>/g, "" );
//                    errors = errors.replace(/<ul>+/g, "" );
//                    errors = errors.replace(/<br>+/g, "\n" );
//                    
//                    document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
//                    document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//                    document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//                    document.getElementById("divWarningMsg").style.display = "block";
//                    
//                    errors = "";
//                
//                    return false;   
//              }
//              else 
             // {
               document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
                    document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
                    document.getElementById("divWarningMsg").style.display = "none";
                CalculateDistances();
                return true;
              //}
          }
   }
   
   //------------------------------------------------------------------------------------------
 function ValidateDistanceConverterRoutines()
 {
    
   var status = true;
       
   
        // validating miles
    var varTemp = document.getElementById("txtMiles");  
    var alertName = "Miles";
    var isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
    {    
         status = false;   
    }
    
        // validating kilometers
    varTemp = document.getElementById("txtKM");  
    alertName = "Kilometers";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
    
    // validating yards
    varTemp = document.getElementById("txtYards");  
    alertName = "Yards";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
   // validating meters
    varTemp = document.getElementById("txtMeters");  
    alertName = "Meters";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
   
   // validating feet
    varTemp = document.getElementById("txtFeet");  
    alertName = "Feets";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
                
   // validating inches
    varTemp = document.getElementById("txtInches");  
    alertName = "Inches";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false; 
   }  
         
   if( status == false)
   {
        return false;
   }  
   else
   {
        return true;
   }
 }
 
 //-------------------------------------------------------------------------------------------    

   function ValidateWeightConverter()
   {
         mandatoryFieldsErrorFlag = false;
         if(document.getElementById("divWarningMsg").style.display != "block")
         {
//          var status = ValidateWeightConverterRoutines();
//          if(status == false)
//          {
//                errors = errors.replace(/[/]/g, "" );
//                errors = errors.replace(/<li>/g, "" );
//                errors = errors.replace(/<ul>/g, "" );
//                errors = errors.replace(/<ul>+/g, "" );
//                errors = errors.replace(/<br>+/g, "\n" );
//                
//               // alert(errors);
//                document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
//                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//                document.getElementById("divWarningMsg").style.display = "block";
//                
//                errors = "";
//                
//              /*
//                var messageErrorsDiv = document.getElementById("MessageErrors");
//                
//                messageErrorsDiv.style.display = "block";
//                errors +='</ul>';
//                messageErrorsDiv.innerHTML = "";
//                
//                messageErrorsDiv.innerHTML = errors; 
//                errors = "<center>Some errors were encountered while processing your submission.</center><br /><ul>";
//                */
//                return false;   
//          }
//          else 
//          {
            /*
            var messageErrorsDiv = document.getElementById("MessageErrors");
            
            messageErrorsDiv.innerHTML = "<img src='../../Images/home page/loading.gif' alt='Loading...' />Sending Message...";           
            messageErrorsDiv.style.display = "block";
            */
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
            document.getElementById("divWarningMsg").style.display = "none";
            CalculateWeights();
            return true;
        }
   }
   
   //------------------------------------------------------------------------------------------
 function ValidateWeightConverterRoutines()
 {
    
   var status = true;
       
   // validating MetricTons
    var varTemp = document.getElementById("txtMetricTons");  
    var alertName = "Metric Tons";
    var isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
        // validating Tons
    varTemp = document.getElementById("txtTons");  
    alertName = "Tons";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
    
    // validating Kilograms
    varTemp = document.getElementById("txtKilograms");  
    alertName = "Kilograms";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
   
   // validating Pounds
    varTemp = document.getElementById("txtPounds");  
    alertName = "Pounds";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
   
   // validating OZ
    varTemp = document.getElementById("txtOZ");  
    alertName = "OZ";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
                
   // validating Grams
    varTemp = document.getElementById("txtGrams");  
    alertName = "Grams";
    isMandatory = 'False'; 
   if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
   {
         status = false;   
   }
   
   if( status == false)
   {
        return false;
   }  
   else
   {
        return true;
   }
 }
 
 function HandleException()
 {
      if (!document.all)
       {
            window.onbeforeunload = function()
             {
               Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequest);
              }
      }
  }

  function endRequest(sender, e)
  {
        var err = e.get_error();
        if (err)
        {
              if (err.name == "Sys.WebForms.PageRequestManagerServerErrorException") 
              {
                e.set_errorHandled(true);
              }
              if (err.name == "Sys.WebForms.PageRequestManagerParserErrorException") 
              {
                e.set_errorHandled(true);
              }
        }
  }


function ValidateRaceTimePredictorForm() 
{
       mandatoryFieldsErrorFlag = false;
       var status = ValidateRaceTimePredictorFormRoutines();
       if(status == false)
       {     
            errors = errors.replace(/[/]/g, "" );
            errors = errors.replace(/<li>/g, "" );
            errors = errors.replace(/<ul>/g, "" );
            errors = errors.replace(/<ul>+/g, "" );
            errors = errors.replace(/<br>+/g, "\n" );                
            document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
            document.getElementById("divWarningMsg").style.display = "block";
            errors = "";              
            return false;   
       }
       else 
       {    
            document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="";
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
            document.getElementById("divWarningMsg").style.display = "none";      
            CalculateRaceTime();
            return true;
       }
       return false;
}
function ValidateRaceTimePredictorFormRoutines() 
{
   var varTemp = document.getElementById("txtRecentRaceLength");  
   if(bValidate(varTemp,"Float",'False' , "Recent Race Length") != true)
   {
        status = false;   
        errors = "Recent Race Length is invalid.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   }   
   if (trim(varTemp.value) == "")
   {
        status = false;   
        errors = "Recent Race Length can not be blank.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   }
   
   varTemp = document.getElementById("txtTimeHH");  
    if(varTemp.value == "hh")
   {
        varTemp.value = "";
    }
   if(bValidate(varTemp, "Float" ,'False' , "Recent Race time") != true)
   {
        status = false;   
        errors = "Recent Race time is invalid.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   }       
   varTemp = document.getElementById("txtTimeMM");  
    if(varTemp.value == "mm")
   {
        varTemp.value = "";
    }
   if(bValidate(varTemp,"Float",'False' , "Recent Race time") != true)
   {
        status = false;   
        errors = "Recent Race time is invalid.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   }
   
   varTemp = document.getElementById("txtTimeSS");  
    if(varTemp.value == "ss")
   {
        varTemp.value = "";
    }
   if(bValidate(varTemp,"Float",'False' , "Recent Race time") != true)
   {
        status = false;   
        errors = "Recent Race time is invalid.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   }
   if ((trim(document.getElementById("txtTimeHH").value) == "") && (trim(document.getElementById("txtTimeMM").value) == "") && (trim(document.getElementById("txtTimeSS").value) == "")) 
   {
        errors = "Recent Race time can not be blank.";
        document.getElementById("txtTimeHH").value = "";
        document.getElementById("txtTimeHH").focus();
        status = false;  
        return false;
   }
   if(parseFloat(document.getElementById("txtTimeHH").value) > 24 || parseFloat(document.getElementById("txtTimeMM").value) > 59 || parseFloat(document.getElementById("txtTimeSS").value) > 59)
   {
        if(parseFloat(document.getElementById("txtTimeHH").value) > 24)
            errors = "Hours Should be between 0 to 24";
        else if(parseFloat(document.getElementById("txtTimeMM").value) > 59)
            errors = "Minutes Should be between 0 to 59";
        else if(parseFloat(document.getElementById("txtTimeSS").value) > 59)
            errors = "Seconds Should be between 0 to 59";
            
//             document.getElementById("txtTimeHH").value = "";
//        document.getElementById("txtTimeHH").focus();
        status = false;  
        return false;
   
   }
   
     
   varTemp = document.getElementById("txtEstimatedRaceLength");  
   if(bValidate(varTemp,"Float",'False' , "Future Race Length") != true)
   {
        status = false;   
        errors = "Future Race Length is invalid.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   }
   if (trim(varTemp.value) == "")
   {
        status = false;   
        errors = "Future Race Length can not be blank.";
        varTemp.value = "";
        varTemp.focus();
        return false;
   } 
   return true;
}

function CalculateRaceTime()
{
    var txtTimeHH = document.getElementById("txtTimeHH");
    var txtTimeMM = document.getElementById("txtTimeMM");
    var txtTimeSS = document.getElementById("txtTimeSS");
    var time = toSecs(txtTimeHH.value,txtTimeMM.value,txtTimeSS.value);
    //var pace = toSecs(txtPaceHour.value,txtPaceMinute.value,txtPaceSecond.value);
    //var dist = txtDistance.value;
    if(parseFloat( document.getElementById("txtRecentRaceLength").value.toString() ) == "0" )
    {
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Recent race length field cannot be zero. Please enter a valid value.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        document.getElementById("txtRecentRaceLength").value = "";
        document.getElementById("txtRecentRaceLength").focus();
        return false;
    }
    if(time == 0)
    {
        //alert("Time can not be zero. Please enter valid time.");
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Time field cannot be zero. Please enter a valid time.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        
        document.getElementById("txtTimeHH").value = "hh";
        document.getElementById("txtTimeHH").className = "clsTextBoxDefault";
        
        document.getElementById("txtTimeMM").value = "mm";
        document.getElementById("txtTimeMM").className = "clsTextBoxDefault";
        
        document.getElementById("txtTimeSS").value = "ss";
        document.getElementById("txtTimeSS").className = "clsTextBoxDefault";
        
        return false;
    }

    if(parseFloat( document.getElementById("txtEstimatedRaceLength").value.toString() ) == "0" )
    {
        document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Future race length field cannot be zero. Please enter a valid value.";
        document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
        document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
        document.getElementById("divWarningMsg").style.display = "block";
        
        document.getElementById("txtEstimatedRaceLength").value = "";
        document.getElementById("txtEstimatedRaceLength").focus();
        return false;
    }
    
    var hh = document.getElementById("txtTimeHH").value;  
    var mm = document.getElementById("txtTimeMM").value;  
    var ss = document.getElementById("txtTimeSS").value;  
    
    var lengthDone = document.getElementById("txtRecentRaceLength").value;
    var lengthEst = document.getElementById("txtEstimatedRaceLength").value;
    
    if(document.getElementById("ddlEstimatedRaceUnit").value == 'Kilometres')
    {
        lengthDone *= 1000;
    }  
    else 
    {
        lengthDone *= 1609;
    }
    if(document.getElementById("ddlEstimatedRaceUnit").value == 'Kilometres')
    {
        lengthEst *= 1000;
    }  
    else 
    {
        lengthEst *= 1609;
    }
 
    //Formula: T2 = T1 x (D2/D1)1.06
    var recentTime = toSecs(hh, mm, ss)    
    
    var PredictedTime = recentTime * Math.pow((lengthEst / lengthDone), 1.06);    
    if (Math.round(HrsFromTSecs(PredictedTime)) < 10)
    {
        document.getElementById("txtPredictedTimeHH").value = '0' + Math.round(HrsFromTSecs(PredictedTime));
    }
    else
    {
        document.getElementById("txtPredictedTimeHH").value = Math.round(HrsFromTSecs(PredictedTime));
    }
    if (Math.round(MinsFromTSecs(PredictedTime)) <10)
    {
	    document.getElementById("txtPredictedTimeMM").value = '0' + Math.round(MinsFromTSecs(PredictedTime));
	}
	else
	{
	    document.getElementById("txtPredictedTimeMM").value = Math.round(MinsFromTSecs(PredictedTime));
	}
	if ( Math.round(SecsFromTSecs(PredictedTime)) < 10)
	{
	    document.getElementById("txtPredictedTimeSS").value = '0' + Math.round(SecsFromTSecs(PredictedTime));
	}
	else 
	{
	    document.getElementById("txtPredictedTimeSS").value = Math.round(SecsFromTSecs(PredictedTime));
	}
    
    document.getElementById("spanResultHH").innerHTML = document.getElementById("txtPredictedTimeHH").value;
	   document.getElementById("spanResultMM").innerHTML = document.getElementById("txtPredictedTimeMM").value;
	   document.getElementById("spanResultSS").innerHTML = document.getElementById("txtPredictedTimeSS").value;	
	   
	   
	if(document.getElementById("txtTimeHH").value == "" || document.getElementById("txtTimeHH").value == "hh")
        document.getElementById("txtTimeHH").value = "hh";
    if(document.getElementById("txtTimeMM").value == "" || document.getElementById("txtTimeMM").value == "mm")
        document.getElementById("txtTimeMM").value = "mm";
    if(document.getElementById("txtTimeSS").value == "" || document.getElementById("txtTimeSS").value == "ss")
        document.getElementById("txtTimeSS").value = "ss";
	   
}
function ClearText(args)
{
    if(args != null)
    {
        args.value = "";
        args.className = "clsTextBoxYellow";
    }
}

function SetText(args,defaultValue)
{
    if(args != null)
    {
        if(args.value == "")
        {   
            args.value = defaultValue;
            args.className = "clsTextBoxDefault";
        }
    }
}



function ValidateBMICalculatorFormRoutines()
{
    var status = true;
   // validating weight
   
    if(  document.getElementById("rdoMetricUnit").checked==true)
    {
            var varTemp = document.getElementById("txtBMIMetricWeight");  
            var alertName = "Weight";
            var isMandatory = 'True'; 
            if(document.getElementById("txtBMIMetricWeight").value == "")
           {
                status = false;   
                errors =alertName + " can not be blank.";
                varTemp.focus();
                 return status;
           }
           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
           {    
                status = false;   
                errors =alertName + " should contain only numbers.";
                 return status;
           }
             var varTemp = document.getElementById("txtBMIMetricHeight");  
            var alertName = "Height";
            var isMandatory = 'True'; 
            if(document.getElementById("txtBMIMetricHeight").value =="")
           {
                status = false;   
                errors =alertName + " can not be blank.";
                varTemp.focus();
                 return status;
                
           }
           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
           {    
                status = false;   
                errors =alertName + " should contain only numbers.";
                 return status;
                
           }
    }
    else
    {
            var varTemp = document.getElementById("txtBMIWeight");  
            var alertName = "Weight";
            var isMandatory = 'False'; 
           if(document.getElementById("txtBMIWeight").value == "")
           {
                status = false;   
                errors =alertName + " can not be blank.";
                varTemp.focus();
                 return status;
                
           }
           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
           {    
                status = false;   
                errors =alertName + " should contain only numbers.";
                 return status;
                
           }
           
           // validating Height
            var varTemp = document.getElementById("ddlBMIHeightFeet");  
            var alertName = "Height";
            var isMandatory = 'False'; 
            if(document.getElementById("ddlBMIHeightFeet").selectedIndex ==0 && document.getElementById("ddlBMIHeightInches").selectedIndex ==0)
           {
                status = false;   
                errors =alertName + " can not be zero.";
                varTemp.focus();
                 return status;
               
           }
//           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
//           {    
//                status = false;   
//                errors =alertName + " should contain only numbers.";
//                 return status;
//               
//           }
//            var varTemp = document.getElementById("ddlBMIHeightInches");  
//            var alertName = "Height";
////            var isMandatory = 'True'; 
////            if(document.getElementById("txtBMIHeightInches").value =="")
////           {
////                status = false;   
////                errors =alertName + " can not be blank.";
////                varTemp.focus();
////                 return status;
////               
////           }
//           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
//           {    
//                status = false;   
//                errors =alertName + " should contain only numbers.";
//                 return status;
//               
//           }
   }
   
    return status;
}


 function ValidateBMICalculatorForm() 
   {
   CalculateBMI();
//         mandatoryFieldsErrorFlag = false;
//          var status = ValidateBMICalculatorFormRoutines();
//          if(status == false)
//          {
//                errors = errors.replace(/[/]/g, "" );
//                errors = errors.replace(/<li>/g, "" );
//                errors = errors.replace(/<ul>/g, "" );
//                errors = errors.replace(/<ul>+/g, "" );
//                errors = errors.replace(/<br>+/g, "\n" );
//                
//                 document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=errors;
//                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
//                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
//                document.getElementById("divWarningMsg").style.display = "block";
//                
//          
//                errors = "";
//                
//           
//                return false;   
//          }
//          else 
//          {
//          
//              document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
//                document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
//                document.getElementById("divWarningMsg").style.display = "none";
//            CalculateBMI();
//            return true;
//          }
   }
   
   
   
   
   
function mod(div,base)
{   
    return Math.round(div - (Math.floor(div/base)*base));   
}   
function CalculateBMI()
{   
    if(document.getElementById("rdoNormalUnit").checked==true)
    {
    
        var varTemp = document.getElementById("txtBMIWeight");  
        var alertName = "Weight";
        var isMandatory = 'False'; 
        var w = document.getElementById("txtBMIWeight").value;   
        var HeightFeetInt =  document.getElementById("ddlBMIHeightFeet").value * 1;   
        var HeightInchesInt = document.getElementById("ddlBMIHeightInches").value * 1 ;  
        
        HeightFeetConvert = HeightFeetInt * 12;   
        h =  parseInt(parseInt(HeightFeetConvert) + parseInt(HeightInchesInt));   
        displaybmi = ((w * 703) / (h * h));   
        displaybmi= roundNumber(displaybmi,1);
        var rvalue = true;   
        
       if(document.getElementById("txtBMIWeight").value == "")
       {
            document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=alertName + " can not be blank.";
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
            document.getElementById("divWarningMsg").style.display = "block";
            rvalue = false; 
            varTemp.focus();
            return status;
            
       }
       if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
       {    
            document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=alertName + " should contain only numbers.";
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
            document.getElementById("divWarningMsg").style.display = "block";
            rvalue = false; 
            varTemp.focus();
            return status;
            
       }
        if ( (w < 20) || (w > 450) ) 
        {   
           // alert ("Invalid data.  Please check and re-enter!");   
              document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Invalid weight. Please enter the weight in the range of 20 to 450 lbs.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false; 
                return false;  
        }   
       
       // validating Height
        var varTemp = document.getElementById("ddlBMIHeightFeet");  
        var alertName = "Height";
        var isMandatory = 'False'; 
        if(document.getElementById("ddlBMIHeightFeet").selectedIndex ==0 && document.getElementById("ddlBMIHeightInches").selectedIndex ==0)
       {
       
             
            document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Invalid height. Please enter the height more than 2 feet.";
            document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
            document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
            document.getElementById("divWarningMsg").style.display = "block";
            rvalue = false; 
            varTemp.focus();
            return status;
       }
    
       
        
       
        if((h < 24) || (h >= 120))
        {
              document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Invalid height. Please enter the height more than 2 feet.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false; 
                return false;  
        }
        if (rvalue)
        {   
//                if (HeightInchesInt > 11)
//                {   
//                        reminderinches = mod(HeightInchesInt,12);   
//                       // document.getElementById("txtBMIHeightInches").value = reminderinches;   
//                      //  document.getElementById("txtBMIHeightFeet").value = HeightFeetInt +  ((HeightInchesInt - reminderinches)/12);   
//                          
//                }   


                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
                document.getElementById("divWarningMsg").style.display = "none";
                if (displaybmi < 18.5)    
                {
                    document.getElementById("spanBMIText").innerHTML = "Underweight";   
                }
                if (displaybmi >= 18.5 && displaybmi <= 24.9)
                {    
                   document.getElementById("spanBMIText").innerHTML= "Normal";   
                }
                if (displaybmi >=25 && displaybmi <=29.9)  
                {  
                  document.getElementById("spanBMIText").innerHTML= "Overweight";   
                }
                if (displaybmi >= 30)    
                {
                     document.getElementById("spanBMIText").innerHTML = "Obese";   
                }
              
            document.getElementById("spanBMIValue").innerHTML = displaybmi; 
            }
     
        
        return rvalue;   
    }
    else
    {
    
            var varTemp = document.getElementById("txtBMIMetricWeight");  
            var alertName = "Weight";
            var isMandatory = 'True'; 
            var weight = document.getElementById("txtBMIMetricWeight").value*1;   
            var HeightInCM =  document.getElementById("txtBMIMetricHeight").value * 1;  
            var rvalue = true; 
            if(document.getElementById("txtBMIMetricWeight").value == "")
           {
                
                document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=alertName + " can not be blank.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false;   
                varTemp.focus();
                return false;  
           }
           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
           {    
                 
                document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=alertName + " should contain only numbers.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false;   
                varTemp.focus();
                return false;  
                 
           }
           if ( (weight <= 9) || (weight > 200) ) 
            {   
                  document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Invalid weight. Please enter the weight in the range of 10 to 200 kg.";
                    document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                    document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                    document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false; 
                 varTemp.focus();  
                return false;  
            }   
            
             var varTemp = document.getElementById("txtBMIMetricHeight");  
            var alertName = "Height";
            var isMandatory = 'True'; 
            if(document.getElementById("txtBMIMetricHeight").value =="")
           {
                document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=alertName + " can not be blank.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false; 
                varTemp.focus();  
                return false;  
           }
           if(bValidate(varTemp,"Float",isMandatory , alertName) != true)
           {    
                document.getElementById("WarningMsgs_RegistrationErrors").innerHTML=alertName + " should contain only numbers.";
                document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                document.getElementById("divWarningMsg").style.display = "block";
                rvalue = false; 
                varTemp.focus();  
                return false;  
           }
            if((HeightInCM < 50) || (HeightInCM > 300))
            {
                  document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="Invalid height. Please enter the height in the range of 50 to 300 cm.";
                    document.getElementById("WarningMsgs_RegistrationErrors").style.display = "block";;
                    document.getElementById("WarningMsgs_divWarningInfo").style.display = "block";
                    document.getElementById("divWarningMsg").style.display = "block";
                    rvalue = false; 
                    return false;  
            }
        
        
      if (rvalue)
        {  
        //displaybmi = (Math.round((weight/(HeightInCM * HeightInCM))*10000));   
        
           document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";;
                document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
                document.getElementById("divWarningMsg").style.display = "none";
            displaybmi = ((weight/(HeightInCM * HeightInCM))*10000);   
           displaybmi= roundNumber(displaybmi,1);
            
            
            if (displaybmi < 18.5)    
            {
                document.getElementById("spanBMIText").innerHTML = "Underweight";   
            }
            if (displaybmi >= 18.5 && displaybmi <= 24.9)
            {    
               document.getElementById("spanBMIText").innerHTML= "Normal";   
            }
            if (displaybmi >=25 && displaybmi <=29.9)  
            {  
              document.getElementById("spanBMIText").innerHTML= "Overweight";   
            }
            if (displaybmi >= 30)    
            {
                 document.getElementById("spanBMIText").innerHTML = "Obese";   
            }
            document.getElementById("spanBMIValue").innerHTML = displaybmi; 
       }
            
     
        
        return rvalue;  
    }
}   

function ResetBMICalculator()
{
        if(document.getElementById("txtBMIWeight")!=null)
        {
            document.getElementById("txtBMIWeight").value="";
        }
        if(document.getElementById("ddlBMIHeightFeet")!=null)
        {
            document.getElementById("ddlBMIHeightFeet").selectedIndex=0;
        }
        if(document.getElementById("ddlBMIHeightInches")!=null)
        {
            document.getElementById("ddlBMIHeightInches").selectedIndex=0;
         }
         
            if(document.getElementById("txtBMIMetricHeight")!=null)
        {
            document.getElementById("txtBMIMetricHeight").value="";
        }
        if(document.getElementById("txtBMIMetricWeight")!=null)
        {
            document.getElementById("txtBMIMetricWeight").value="";
         }
        if( document.getElementById("WarningMsgs_divWarningInfo")!=null)
        {
             document.getElementById("WarningMsgs_RegistrationErrors").innerHTML="";
             document.getElementById("WarningMsgs_RegistrationErrors").style.display = "none";
             document.getElementById("WarningMsgs_divWarningInfo").style.display = "none";
             document.getElementById("divWarningMsg").style.display = "none";
        }
        if(document.getElementById("spanBMIValue")!=null)
        {
            document.getElementById("spanBMIValue").innerHTML="00";
        }
         if(document.getElementById("spanBMIText")!=null)
        {
            document.getElementById("spanBMIText").innerHTML="";
        }
        
        return false;
}

function ChangeUnitForBMI()
{
        if(document.getElementById("rdoMetricUnit")!= null && document.getElementById("rdoMetricUnit").checked==true)
        {
            if(document.getElementById("tdMetricWeight") != null)
                document.getElementById("tdMetricWeight").style.display="block";
            if(document.getElementById("tdMetricHeight") != null)                
                document.getElementById("tdMetricHeight").style.display="block";
            
            if(document.getElementById("tdStdWeight") != null) 
                document.getElementById("tdStdWeight").style.display="none";
            if(document.getElementById("tdStdHeight") != null) 
                document.getElementById("tdStdHeight").style.display="none";
          //  document.getElementById("rdoNormalUnit").checked=false;
           // document.getElementById("rdoMetricUnit").checked=true;
        }
        else
        {
            if(document.getElementById("tdMetricWeight") != null) 
                document.getElementById("tdMetricWeight").style.display="none";
            if(document.getElementById("tdMetricHeight") != null) 
                document.getElementById("tdMetricHeight").style.display="none";
            
            if(document.getElementById("tdStdWeight") != null) 
                document.getElementById("tdStdWeight").style.display="block";
            if(document.getElementById("tdStdHeight") != null) 
                document.getElementById("tdStdHeight").style.display="block";
          //  document.getElementById("rdoNormalUnit").checked=true;
          //  document.getElementById("rdoMetricUnit").checked=false;
            
        }
   ResetBMICalculator();
   
}
function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}
