$(document).ready(function() {
  
  // Input Mask
  $('.mask_numbers').setMask({
    mask: '9',
    type: 'repeat'
  });
  $('.mask_decimal').setMask({
    mask : '99,999.999.999.999',
    type : 'reverse',
    defaultValue: '000'
  });
  $('.mask_date').setMask({
    mask : '39/19/9999'
  });
  $('.mask_cep').setMask({
    mask : '99999-999'
  });
  $('.mask_phone').setMask({
    mask : '(99) 9999-9999'
  });
  $('.mask_cpf').setMask({
    mask : '999.999.999-99'
  });
  $('.mask_cnpj').setMask({
    mask : '99.999.999/9999-99'
  });
  
  if ($('#topbanners ul li').length > 1) {
    $('#topbanners ul').innerfade({
      speed: 1000,
    	timeout: 5000,
    	type: 'sequence',
    	containerheight: $('#topbanners ul').css('height')
    });
  }
  
  $('.grades .grade ul li').click(function() {
    $(this).parents('ul').find('li').removeClass('selected');
    $(this).addClass('selected');
  });

  $('.buy button').click(function() {
    $this = $(this);
    
    $.ajax({
      url: '/carrinho_ajax/add/' + $this.parents('form').attr('action').split('/')[3],
      type: 'POST',
      dataType: 'html',
      data: ({
        'data[Produto][quantidade]': $this.next().val(),
        'data[Produto][cor_id]': $('.grades .grade.cor li.selected label').attr('for'),
        'data[Produto][tamanho_id]': $('.grades .grade.tamanho li.selected label').attr('for'),
        'data[Produto][material_id]': $('.grades .grade.material select').val()
      }),
      beforeSend: function() {
        $('.buy .success').html('<img src="/img/loading.gif" />');
      },
      success: function(data) {
        $('.buy .success').html('');
        $('.buy .error').remove();
        if (data == "1") {
          carrinho_text();
          $('.buy .success').html('Produto adicionado ao seu <a href="/carrinho">carrinho</a>.');
        } else if (data == "2") {
          $('.buy .amount').after('<div class="error">É necessário que você faça uma combinação.</div>');
        } else if (data == "0") {
          $('.buy .success').html('A quantidade que você selecionou é diferente da que podemos atender, entretanto a quantidade máxima foi enviada ao seu <a href="/carrinho">carrinho</a>.');
        }
      }
    });
    return false;
  });

  function query() {
    $.ajax({
      url: '/carrinho_ajax/query/' + $('.buy').find('form').attr('action').split('/')[3],
      type: 'POST',
      dataType: 'html',
      data: ({
        'data[Produto][quantidade]': $('.buy').find('form input').val(),
        'data[Produto][cor_id]': $('.grades .grade.cor li.selected label').attr('for'),
        'data[Produto][tamanho_id]': $('.grades .grade.tamanho li.selected label').attr('for'),
        'data[Produto][material_id]': $('.grades .grade.material select').val()
      }),
      beforeSend: function() {
        $('.buy .amount').hide();
        $('.buy .success').html('<img src="/img/loading.gif" />');
      },
      success: function(data) {
        $('.buy .success').html('');
        $('.buy .error').remove();
        if (data == "0") {
          $('.buy .amount').after('<div class="error">A combinação selecionada não está disponível.</div>');
        } else {
          $('.buy .amount').show();
        }
      }
    });
  }

  $('.grades .grade li label').live('click', function() {
    query();
  });
  
  $('.grades .grade select').live('change', function() {
    query();
  });

  $(".clientes#address .delete").click(function() {
    if (confirm("Você realmente deseja deletar este endereço?")) {
      return true;
    } else {
      return false;
    }
  });
  $("#ClientePessoa").bind('change', function() {
    var input = $('#ClienteCadastro');

    if ($(this).val() == 'juridica') {
      input.setMask({
        mask: '99.999.999/9999-99'
      });
    } else {
      input.setMask({
        mask: '999.999.999-99'
      });
    }
  });
});
