function setCarousel(element) {
  $(element + ' img').each(function() {
    var ptop = ($(this).parent().parent().height() - $(this).height()) / 2;
    $(this).css({
      marginTop: ptop + 'px'
    });
  });
  $(element).jMyCarousel({
    visible: '400px'  
  });
}

function mostrarFoto(meta, containerElement) {
  var newImg = containerElement.html();
  newImg = $(newImg).attr('width', meta.width).attr('height', meta.height)
  .attr('src', meta.url + '/' + Math.floor(Math.random() * 1001));
  containerElement.empty().append(newImg);
}

function infoAnimal() {
  if (!$('#js_flag_infoanimal').length) return;
  setCarousel('#js_lista');
  $('.js_verfoto').click(function() {
    var metaArray = $(this).attr('rel').split('x', 3);
    var meta = {
      width: metaArray[0],
      height: metaArray[1],
      url: $(this).attr('href')
    };
    mostrarFoto(meta, $('#fotoanimal'));
    $('#infogeral > table tr').slice(1).remove();
    $.get('?route=Home/obterLegenda/' + metaArray[2], function(data) {
      $('#infogeral > table').append(data);
    });
    return false;
  });
}

function galeriaFotos() {
  if (!$('#js_flag_galeriadefotos').length) return;
  setCarousel('#js_lista');
  $('.js_verfoto').click(function() {
    var metaArray = $(this).attr('rel').split('x', 2);
    var meta = {
      width: metaArray[0],
      height: metaArray[1],
      url: $(this).attr('href')
    };
    mostrarFoto(meta, $('#fotocontainer'));
    return false;
  });
}

function fotosIIEtapaEstadualRJQM() {
  if (!$('#js_flag_fotos_iietapaestadualrjqm').length) return;
  setCarousel('#js_lista');
  $('.js_verfoto').click(function() {
    var metaArray = $(this).attr('rel').split('x', 2);
    var meta = {
      width: metaArray[0],
      height: metaArray[1],
      url: $(this).attr('href')
    };
    mostrarFoto(meta, $('#fotocontainer'));
    return false;
  });
}

function videos() {
  if (!$('#js_flag_videos').length) return;
  $.fn.media.defaults.flvPlayer = 'player.swf';
  $('.media').media({
    width: 320,
    height: 240,
    autoplay: false,
    caption: false,
    flashvars: {bufferlength: 10}
  });
}

function contato() {
  if ($('#js_con_frm').length) {
    $('#js_con_nome').focus();
    $('#js_con_frm').validate({
      rules: {
        con_nome: 'required',
        con_email: {
          required: true,
          email: true
        },
        con_mensagem: 'required'
      },
      submitHandler: function(form) {
        $(form).ajaxSubmit({
          dataType: 'json',
          success: function(data) {
            if (data) {
              $(form).resetForm();
              alert('Mensagem enviada com sucesso.');
            } else {
              alert('Desculpe, ocorreu um erro ao enviar sua mensagem.');
            }
          }
        });
      }
    });
  }
}

$(function() {
  $.blockUI.defaults.overlayCSS = {
    backgroundColor: '#000',
    opacity: 0.5
  };
  $.blockUI.defaults.css.border = 0;
  $.blockUI.defaults.css.padding = '10px';
  
  $.validator.messages.required = 'Preenchimento obrigatório.';
  $.validator.messages.email = 'E-mail inválido.';
  
  $('#js_pub').cycle();
  infoAnimal();
  galeriaFotos();
  videos();
  contato();
  fotosIIEtapaEstadualRJQM();
});