function showCal2(i,f,d){
  var c = document.getElementById(i);
  var p = document.getElementById(d);
  if (c!=null){
    if (p.value==''){
      c.src='/common/calendar2.cfm?i=' + i + '&f=' + f;
    }else{
      if(p.value=='mm/dd/yyyy'){
        p.value='';
        c.src='/common/calendar2.cfm?i=' + i + '&f=' + f;
      }else{
        c.src='/common/calendar2.cfm?i=' + i + '&f=' + f + '&Date=' + p.value;
      }
    }
    c.style.display = 'block';
  }
}

function showCalByText2(i,f,d){
  var c = document.getElementById(f);
  if(c.value=='mm/dd/yyyy'){
    c.value='';
  }else{
    c.select();
  }
  showCal2(i,f,d);
}

function initCal(){
  closeAllCal()
}

function closeAllCal(){
  for(var i=1; i <= 10; i++){
    thisFrame = 'CalFrame' + i;
    closeCal(thisFrame);
  }
}

function closeCal(i){
  var c = document.getElementById(i);
  if (c!=null){
    c.src='/images/spacer.gif';
    c.style.display = 'none';
  }
}

function setDate2(i,f,d){
  document.getElementById(f).value=d;
  document.getElementById('t' + f).value=d;
  for(var x=1; x <= 10; x++){
    thisFrame = 'CalFrame' + x;
    if(i==thisFrame){
      var timeField = 'DepTime' + x;
      var c = document.getElementById(timeField);
    }
  }
  closeCal(i);
}

function showAptSearch(f){
  var c = document.getElementById('AirportSearch');
  if (c!=null){
    c.src='/common/ifAirports.cfm?Field=' + f;
    c.style.display = 'block';
  }
}

function closeApt(){
  var c = document.getElementById('AirportSearch');
  c.src='/images/spacer.gif';
  c.style.display = 'none';
}

function setApt(c,f){
  document.getElementById(f).value=c;
  closeApt();
}

function setAptSelectList(c,v,f){
  //add value(c) and item(v) to the select list(f) and preselect it
  d = document.getElementById(f);

  newIDX = d.length;
  d.options[newIDX] = new Option(v,c,1,1);
  closeApt();
}

//checks date values
function checkDate(i,c){
  d = document.getElementById(i);
  if(d.value!=''){
    var dt = new Date(d.value);
    if (isNaN(dt.valueOf()) || (dt.valueOf() == 0)){
      alert('Date must be valid format!\n Please enter as "mm/dd/yyyy".');
      d.value = '';
      d.focus();
    }else{
      tmpDate = new Date();
      tmpDate.setHours(0);
      tmpDate.setMinutes(0);
      tmpDate.setSeconds(0);
      dt.setSeconds(1);
      if(dt < tmpDate){
        alert('All dates must be in the future!\n Please enter as "mm/dd/yyyy".');
        d.value = '';
        d.focus();
      }
    }
  }
}

function retActive(){
  document.frmBPQuote.DepTime2.selectedIndex = 33;
}

function retInActive(){
  document.frmBPQuote.DepDate2.value='';
  document.frmBPQuote.DepTime2.selectedIndex = 0;
}

function checkDateTime(d,t,n){
  c = document.getElementById(d);
  if(c.value!=''){
    dt = new Date(c.value);
    if (isNaN(dt.valueOf()) || (dt.valueOf() == 0)){
      alert('Date must be valid format!\n Please enter as "mm/dd/yyyy".');
      c.value = '';
      c.focus();
      return;
    }else{
      tmpDate = new Date();
      tmpDate.setHours(0);
      tmpDate.setMinutes(0);
      tmpDate.setSeconds(0);
      dt.setSeconds(1);
      if(dt < tmpDate){
        alert('All dates must be in the future!\n Please enter as "mm/dd/yyyy".');
        c.value = '';
        c.focus();
        return;
      }else{/* raw date ok now add the time and check */
        tmpDate = new Date();
        c = document.getElementById(t);
        if(c.value!=''){
          tmpHr = c.value.substring(0,c.value.indexOf(':'));
          tmpMin = c.value.substring(c.value.indexOf(':')+1,c.value.length);
        }else{
          alert('Please enter a time!');
          c.focus();
          return;
        }
        dt.setHours(tmpHr);
        dt.setMinutes(tmpMin);
        if(dt < tmpDate){
          alert('Time must be greater that the current time!');
          c.value = '';
          c.focus();
          return;
        }else{
          //loop through dts check for sequence errors
          if(n > 1){
            for(i=1; i <= n; i++){
              tmpDateField = 'DepDate' + i;
              tmpTimeField = 'DepTime' + i;
              nd = i+1;
              seqDateField = 'DepDate' + nd;
              seqTimeField = 'DepTime' + nd;
              if(nd <= n){//build the complete date time and compare
                //alert(tmpDateField + ', ' + tmpTimeField + ', ' + seqDateField + ', ' + seqTimeField);
                c = document.getElementById(tmpDateField);
                dt = new Date(c.value);
                c = document.getElementById(tmpTimeField);
                tmpHr = c.value.substring(0,c.value.indexOf(':'));
                tmpMin = c.value.substring(c.value.indexOf(':')+1,c.value.length);
                dt.setHours(tmpHr);
                dt.setMinutes(tmpMin);
                c = document.getElementById(seqDateField);
                seq_dt = new Date(c.value);
                c = document.getElementById(seqTimeField);
                tmpHr = c.value.substring(0,c.value.indexOf(':'));
                tmpMin = c.value.substring(c.value.indexOf(':')+1,c.value.length);
                seq_dt.setHours(tmpHr);
                seq_dt.setMinutes(tmpMin);
                //alert(dt + ' \n ' + seq_dt);
                if(seq_dt < dt){
                  alert('Dates and times must be in sequence.\n Next must occur after the previous.');
                  c = document.getElementById(seqDateField);
                  c.value = '';
                  c.focus();
                  return;
                }
              }else{
                return;
              }
            }
          }else{
            return;
          }
        }
      }
    }
  }
}

function showWizard(){
  var c = document.getElementById('TripWizard');
  if (c!=null){
    c.style.display = 'block';
  }
}

function CloseWizard(){
  var c = document.getElementById('TripWizard');
  c.style.display = 'none';
}