function onFocusText(element) {
  $(element).setStyle({border:'1px solid #dddddd'});
  $(element).select();
}

function onBlurText(element) {
  $(element).setStyle({border:'1px solid #aaaaaa'});
  if($(element).identify() == 'contactFormInputEmail') {
    contactFormValidate('email', element);
  } else if($(element).identify() == 'contactFormInputName') {
    contactFormValidate('empty', element);
  } else if($(element).identify() == 'contactFormInputMessage') {
    contactFormValidate('empty', element);
  }
}

function contactFormValidate(type, element) {
  var params = 'type='+type+'&data='+$(element).getValue();
  new Ajax.Request('/ajaxTarget/validateRequest.php', {
    method: 'post',
    parameters: params,
    onComplete: function(transport) {
      if(transport.responseText == '0') {
        $(element).setStyle({border:'1px solid #ff3333'});
        $(element).writeAttribute('pass', '0');
      } else {
        $(element).writeAttribute('pass', '1');
      }
    }
  });
}

function submitContactForm() {
  var formSerialized = $('contactFormForm').serialize();
  var errorCheck = 1;
  var loopCount = 0;
  var successMessage = 'Meddelandet har skickats.';

  Form.getElements($('contactFormForm')).each(function(element) {
    if($(element).readAttribute('validType') != null) {
      contactFormValidate($(element).readAttribute('validType'), element);
      errorCheck *= $(element).readAttribute('pass');
    }
  });

  if(errorCheck == 1) {
    $('contactFormSubmitButton').disable();
    
    $('contactFormForm').reset();
    var formHTML;
    Form.getElements($('contactFormForm')).each(function(element) {
      if($(element).readAttribute('validType') != null) {
        $(element).writeAttribute('pass', '0');
        formHTML = $('contactFormContainer').innerHTML;
      }
    });
    
    $('contactFormContainer').update('<div class="contactFormSuccessDiv" id="contactFormSuccess">'+successMessage+'</div>');
    new PeriodicalExecuter(function(pe) {
      if(loopCount < 3) {
        loopCount++;
        successMessage += '.';
        $('contactFormSuccess').update(successMessage);
      } else {
        $('contactFormContainer').update(formHTML);
        pe.stop()
        $('contactFormSubmitButton').enable();
      }
    }, 1);

    new Ajax.Request('/ajaxTarget/contactFormOutput.php', {
      method: 'post',
      encoding: 'ISO-8859-15',
      parameters: encodeURI(formSerialized),
      onFailure: function() {
        alert('målfil output saknas');
      }
    });
  }
}

