$(function(){

  $('#cadastroForm').submit(function(){
    flashMessage('Carregando...', 'waiting');
    $.post(
      $('#cadastroForm').attr('action'),
      $(this).serializeArray(),
      afterValidate,
      "json"
    );
    
    return false;
  });
  
  
  function afterValidate(data, status)  {
    if (data.success) {
      flashMessage(data.success.message, 'success');
    } else {
      flashMessage(data.error.message, 'error');
    }
  }
  
  function flashMessage(message, fmClass) {
    $("#flashMessage").fadeOut().remove();
    
    var _insert = $(document.createElement('div')).css('display', 'none');
    _insert.attr('id', 'flashMessage').addClass(fmClass).html(message);
    _insert.insertAfter($("#cadastroForm")).fadeIn();
  }
  
  
});
