function copyPersonal(f, flag)
{
  if(flag =="N")
  {
    f.billfname.value = f.first_name.value;
    f.billlname.value = f.last_name.value;
    f.middle.value    = f.middle_initial.value;
    f.billemail.value = f.email.value;
    f.billaddr.value  = f.address1.value;
    f.billcity.value  = f.city.value;
    f.billstate.value = f.state.value;
    f.billzip.value   = f.zip.value;
    f.billcountry.value = f.country.value;
    f.billphone.value  = f.phone_day.value;
  }
  else
  {
    f.billfname.value = "";
    f.billlname.value = "";
    f.middle.value    = "";
    f.billemail.value = "";
    f.billaddr.value  = "";
    f.billcity.value  = "";
    f.billstate.value = "";
    f.billzip.value   = "";
    f.billcountry.value = "";
    f.billphone.value  = "";

  }
}

function numbersonly2(myfield, e, dec)
{
  var key;
  var keychar;

  if (window.event)
    key = window.event.keyCode;
  else if (e)
    key = e.which;
  else
    return true;
  keychar = String.fromCharCode(key);

  // control keys
  if ((key==null) || (key==0) || (key==8) ||
      (key==9) || (key==13) || (key==27) )
    return true;

  // numbers
  else if ((("0123456789").indexOf(keychar) > -1))
    return true;

  // decimal point jump
  else if (dec && (keychar == "."))
  {
    myfield.form.elements[dec].focus();
    return false;
  }
  else
    return false;
}

function numbersonly(myfield, e, dec)
{
  var key;
  var keychar;

  if (window.event)
    key = window.event.keyCode;
  else if (e)
    key = e.which;
  else
    return true;
  keychar = String.fromCharCode(key);

  // control keys
  if ((key==null) || (key==0) || (key==8) ||
      (key==9) || (key==13) || (key==27) )
    return true;

  // numbers
  else if ((("0123456789.").indexOf(keychar) > -1))
    return true;

  // decimal point jump
  else if (dec && (keychar == "."))
  {
    myfield.form.elements[dec].focus();
    return false;
  }
  else
    return false;
}

function letternumber(e)
{
  var key;
  var keychar;

  if (window.event)
    key = window.event.keyCode;
  else if (e)
    key = e.which;
  else
    return true;
  keychar = String.fromCharCode(key);
  keychar = keychar.toLowerCase();

  // control keys
  if ((key==null) || (key==0) || (key==8) ||
      (key==9) || (key==13) || (key==27) )
    return true;

  // alphas and numbers
  else if ((("abcdefghijklmnopqrstuvwxyz0123456789").indexOf(keychar) > -1))
    return true;
  else
    return false;
}

function lettersonly(e)
{
  var key;
  var keychar;

  if (window.event)
    key = window.event.keyCode;
  else if (e)
    key = e.which;
  else
    return true;
  keychar = String.fromCharCode(key);
  keychar = keychar.toLowerCase();

  // control keys
  if ((key==null) || (key==0) || (key==8) ||
      (key==9) || (key==13) || (key==27) )
    return true;

  // alphas and numbers
  else if ((("abcdefghijklmnopqrstuvwxyz -.").indexOf(keychar) > -1))
    return true;
  else
    return false;
}

function sch_show(layer_ref, layer_ref2)
{
  var state = 'block';

  if (document.getElementById && !document.all)
  {
    lr = document.getElementById(layer_ref);
    lr2 = document.getElementById(layer_ref2);
    if (lr2) lr2.value = "Yes";
    if (lr) lr.style.display = state;
  }
  else if (document.all) //IS IE 4 or 5 (or 6 beta)
  {
    var style1 = document.all[layer_ref].style;
    document.all[layer_ref2].value="Yes";
    style1.display = "block";
  }
  else if (document.layers) //IS NETSCAPE 4 or below
  {
    document.layers[layer_ref].display = state;
    document.layers[layer_ref2].value = "Yes";
  }
}

function sch_hide(layer_ref,layer_ref2)
{
  var state = 'none';

  if (document.all) //IS IE 4 or 5 (or 6 beta)
  {
    document.all[layer_ref].style.display = state;
    document.all[layer_ref2].value = "No";
    //eval( "document.all." + layer_ref + ".style.display = state");
  }

  if (document.layers) //IS NETSCAPE 4 or below
  {
    document.layers[layer_ref].display = state;
    document.layers[layer_ref2].value = "No";
  }

  if (document.getElementById &&!document.all)
  {
    lr = document.getElementById(layer_ref);
    lr2 = document.getElementById(layer_ref2);
    if (lr) lr.style.display = state;
    if (lr2) lr2.value = "No";
  }
}

function toggleDetail(id,number)
{
  for (i=1;i!=number;i++)
  {
    body=document.getElementById(id+i);
    if (body)
    {
      if (body.style.display == 'none')
      {
        try
        {
          body.style.display='table-row';
        }
        catch(e)
        {
          body.style.display = 'block';
        }
      }
      else
      {
        body.style.display = 'none';
      }
    }
  }
}

function greyOut(this1,start,total)
{
  i=start;
  while (i<total)
  {
    document.donations.elements[i].disabled=true;
    document.donations.elements[i].value="";
	// grey out disabled elements in IE so that it's more obvious. mimicking FF and Opera -CKS
    document.donations.elements[i].style.backgroundColor = "#bbb";

    i++;
  }
  document.donations.greyed.value = "Yes";
  document.donations.auth_ims.disabled = false;
  //document.donations.auth_ims.checked = true; // comment out to force user to manually authorize -CKS
}

function UngreyOut(this1,start,total)
{
  i=start;
  while (i<total)
  {
    document.donations.elements[i].disabled=false;
    document.donations.elements[i].style.backgroundColor = ""; 

    i++;
  }

  document.donations.greyed.value = "No";
  document.donations.auth_ims.checked = false;
  document.donations.auth_ims.disabled = true;
}

function el_show(id)
{
	el = document.getElementById(id);
	el.style.display = '';
}

function el_hide(id)
{
	el = document.getElementById(id);
	el.style.display = 'none';
}

