var active_categoria = null;

/**
 * inicializa os efeitos visuais após a página haver sido completamente carregada
 */
jQuery(document).ready(function() {
  enableLavalampMenu();
  enableMenuCategoriaProduto();
  enableNewsletterSignup();
  enableBannerSwitcher();
});

/*
 * habilita os efeitos no menu lateral de categorias de produto
 * 
 */
function enableMenuCategoriaProduto()
{
  $('#categorias UL').hide();
  
  if(active_categoria != null)
    $('#produto-categoria-' + active_categoria + ' UL').show();
  
  $('.menu-produto-categoria').click(function() {
    $(this).parent().find('UL').slideToggle('slow');
  });
}



/**
 * habilita o lavalamp no menu superior
 * 
 */
function enableLavalampMenu()
{
  $(".lavaLamp").lavaLamp({ fx: "backout", speed: 700 });
}



/**
 * habilita as funções relacionadas ao formulario de newsletter
 * 
 */
function enableNewsletterSignup()
{
  // o formulario somente pode ser exibido se houver suporte para jQuery
  $('#newsletter-signup-form').show();
    
  // se o usuário for editar o email, remove o texto de placeholder
  $('#newsletter-signup-email').focus(function() {
    if(this.value == this.getAttribute('placeholder'))
      this.value = '';
  });
  
  // se o usuário deixar o campo em branco, retorna o placeholder
  $('#newsletter-signup-email').blur(function() {
      if(this.value == '')
        this.value = this.getAttribute('placeholder');
  });
  
  // faz submit utilizando ajax
  $('#newsletter-signup-form').submit(function() {
      
    // valida se o usuário informou um email válido
    input = $('#newsletter-signup-email');
    email_validation = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    
    if(email_validation.test(input.val()) == false) {
      alert('Endereço de e-mail inválido');
      return false;
    }
          
    // faz submit com ajax
    $('#newsletter-signup').load(
      $('#newsletter-signup-form').attr('action'),
      { email: input.val() },
      function() { 
        $('#newsletter-signup').fadeIn();
        input.val(input.attr('placeholder'));
      }
    );
    
    return false;
  });
}



/**
 * habilita o carrosel dos banners 
 */
function enableBannerSwitcher()
{
  try {
    qpBannerSwitcher.setBannerClass('banner');
    qpBannerSwitcher.setBannerNavigationClass('banner-navigation');
    qpBannerSwitcher.setActiveClass('on');
    qpBannerSwitcher.setIntervalTime(5)
    qpBannerSwitcher.init();
  } catch(error) {
    // não havia banners para serem exibidos
    // alert(error.message);
  }
}
