onload = set_field_methods;

var lead_fields =
[
  {name: 'CampusID', value: lang.CampusID, required: true, type: 'select'},
  {name: 'ProgramID', value: lang.ProgramID, required: true, type: 'select'},
  //{name: 'Salutation', value: 'Salutation', required: false, type: 'select'},
  {name: 'FirstName', value: lang.FirstName, required: true, type: 'text'},
  {name: 'LastName', value: lang.LastName, required: true, type: 'text'},
  //{name: 'Address1', value: 'Address*', required: true, type: 'text'},
  //{name: 'Address2', value: 'Apt Number', required: false, type: 'text'},
  //{name: 'City', value: 'City*', required: true, type: 'text'},
  //{name: 'CountryID', value: 'Country*', required: true, type: 'select'},
  //{name: 'ProvinceStateID', value: 'Province/State*', required: true, type: 'select'},
  //{name: 'PostalZipCode', value: lang.PostalZipCode, required: true, type: 'text'},
  {name: 'Telephone', value: lang.Telephone, required: true, type: 'text'},
  //{name: 'CustField2', value: 'Mobile Number', required: false, type: 'text'},
  {name: 'Email', value: lang.Email, required: true, type: 'text'}
  //{name: 'Comment1', value: lang.Comment1, required: true, type: 'textarea'}
];

function set_field_methods()
{
  var form = document.lead_form;
  for (var i in lead_fields)
  {
    var field = lead_fields[i];
    var input = form[field.name];

    switch (field.type)
    {
    case 'text':
    case 'textarea':
      input.onclick = new Function('clear_field(this, "' + field.value + '")');
      input.onfocus = new Function('clear_field(this, "' + field.value + '")');
      input.onblur = new Function('reset_field(this, "' + field.value + '")');
    break;
    }
  }
}

function clear_field(input, value)
{
  if (input.value == value)
  {
    input.value = '';
  }
}

function reset_field(input, value)
{
  if (input.value == '')
  {
    input.value = value;
  }
}

function send_lead_form()
{
  var form = document.lead_form;
  var error = false;
  var email = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

  for (var i = 0; i < lead_fields.length; i ++)
  {
    var field = lead_fields[i];

    if (!field.required)
    {
      continue;
    }

    var input = form[field.name];
    var value = input.value;
    input.className = '';

    switch (true)
    {
    case field.name == 'Email' && !email.test(value):
    case value == '':
    case value == 0:
    case value.length == 0:
    case value == field.value:
      error = true;
      input.className = 'error';

      if (field.type == 'text')
      {
        input.value = field.value;
      }

      if (field.type == 'select')
      {
        input.selected = input.options[0];
      }
    break;
    }
  }

  if (!error)
  {
    form.submit();
  }
}

function update_programs(location)
{
  var courses = false;

  var select = document.lead_form.ProgramID;
  select.options.length = 0;
  select.options[0] = new Option(lang.ProgramID, 0);

  for (var i = 0; i < programs.length; i ++)
  {
    if (programs[i].program == location)
    {
      var courses = programs[i].courses;
    }
  }

  if (!courses)
  {
    return false;
  }

  for (var i = 0; i < courses.length; i ++)
  {
    select.options[i + 1] = new Option(courses[i].name, courses[i].id);
  }
}


