window.onload = function()
{
   offset = 0;
   pagina = 1;
   paginas = 1;
   limite = 12;

   fk_categoria = 0;
   lista_lacamentos = 0;

   document.getElementById("anterior").style.cursor = "pointer";
   document.getElementById("anterior").onclick = function()
   {
      muda_pagina(this.id);
   }

   document.getElementById("proxima").style.cursor = "pointer";
   document.getElementById("proxima").onclick = function()
   {
      muda_pagina(this.id);
   }

   document.getElementById("txt_busca").onkeyup = function()
   {
      fk_categoria = 0;
      listar();
   }

   document.getElementById("referencia").onclick = function()
   {
      document.getElementById("txt_busca").value = "";
      document.getElementById("txt_busca").focus();
   }

   document.getElementById("descricao").onclick = function()
   {
      document.getElementById("txt_busca").value = "";
      document.getElementById("txt_busca").focus();
   }

   listar();
}

function listar()
{
   var datapost = "";
   var ajax = openAjax();

   ajax.open('POST', 'inc/listar.php', true);

   ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

   ajax.onreadystatechange = function()
   {
      if(ajax.readyState == 1)
      {
         // Cria o efeito de loading
         carregando(true, 100, 150);
      }

      if(ajax.readyState == 4 && ajax.status == 200)
      {
         document.getElementById("listagem").innerHTML = "";

         var result = ajax.responseXML;

         var itens = result.getElementsByTagName("item");

         insere_item("listagem", itens);

         carregando(false);
      }
   }

   datapost += "txt_busca=" + document.getElementById("txt_busca").value;
   datapost += (document.getElementById("referencia").checked) ? "&por=" + document.getElementById("referencia").value : "";
   datapost += (document.getElementById("descricao").checked) ? "&por=" + document.getElementById("descricao").value : "";

   datapost += (fk_categoria > 0) ? "&fk_categoria=" + fk_categoria : "";
   
   datapost += (lista_lacamentos > 0) ? "&lista_lacamentos=" + lista_lacamentos : "";

   datapost += "&offset=" + offset;
   datapost += "&limite=" + limite;

   ajax.send(datapost);

   return false;
}

function insere_item(id, itens)
{
   var conteiner = document.getElementById(id);
   var tem_produto = false;

   for(var i = 0; i < itens.length; i++)
   {
      var novo_item = document.createElement("ul");

      if(/MSIE (\d+\.\d+);/.test(navigator.userAgent))
      {
         ieversion = new Number(RegExp.$1)

         if(ieversion < 8)
         {
            novo_item.setAttribute("className", "produto_lista");
         }
         else
         {
            novo_item.setAttribute("class", "produto_lista");
         }
      }
      else
      {
         novo_item.setAttribute("class", "produto_lista");
      }

      var campos = itens[i].getElementsByTagName("campo");

      for(var j = 0; j < campos.length; j++)
      {
         var campo = campos[j].getAttribute('id');
         var conteudo = null;

         tem_produto = true;

         if(campo != "paginas")
         {
            var novo_campo = document.createElement("li");

            switch(campo)
            {
               case "descricao":
                  novo_campo.style.height = "35px";
                  conteudo = campos[j].childNodes[0].data;
                  break;
						
               case "tamanho":
                  conteudo = campos[j].childNodes[0].data;
                  break;

					case "referencia":
                  novo_campo.style.height = "15px";
						novo_campo.style.color = "#ff5a00";
						novo_campo.style.fontSize = "11pt";
                  conteudo = campos[j].childNodes[0].data;
                  break;	

               case "foto":
                  conteudo = document.createElement("a");
                  conteudo.href = "inc/mostra_foto.php?id=" + campos[j].childNodes[0].data.split(",")[0];
                  conteudo.desc_prod = campos[j].childNodes[0].data.split(",")[2];
                  conteudo.onclick = function()
                  {
                     return hs.htmlExpand(this, { headingText: this.desc_prod,
                       								     dimmingOpacity: 0.35,
                                                  outlineType: 'rounded-white',
                                                  wrapperClassName: 'draggable-header',
                                                  objectType: 'iframe',
                                                  width: 410,
                                                  height: 510,
                                                  align: 'center' } )
                  }

                  conteudo.innerHTML = "<img src='fotos/" + campos[j].childNodes[0].data.split(",")[1] + "' />";
                  break;

               case "id":
                  var ids = campos[j].childNodes[0].data.split(",");

                  conteudo = "<div id='conteiner-botoes'>"
                  conteudo += "<button class='botao_escuro' style='cursor: pointer;' type='button' name='comprar' id='comprar' onclick='comprar(" + ids[0] + ");'>Adicionar aos<br />meus pedidos</button>";
                  conteudo += "</div>";
                  break;
            }

            if(campo == "foto")
            {
               novo_campo.appendChild(conteudo);
            }
            else
            {
               novo_campo.innerHTML = conteudo;
            }

            novo_item.appendChild(novo_campo);
         }
         else
         {
            paginas = campos[j].childNodes[0].data;
            document.getElementById("conta_pagina").innerHTML = pagina + " de " + paginas;

            if(paginas < 2)
            {
               document.getElementById("conteiner-paginacao").style.display = "none";
            }
            else
            {
               document.getElementById("conteiner-paginacao").style.display = "block";
            }
         }
      }

      conteiner.appendChild(novo_item);
   }
   
   if(!tem_produto)
   {
      document.getElementById("conteiner-paginacao").style.display = "none";
   }
}

function comprar(chave)
{
   var datapost = "";
   var ajax = openAjax();

   ajax.open('POST', 'inc/man_carrinho.php', true);

   ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

   ajax.onreadystatechange = function()
   {
      if(ajax.readyState == 4 && ajax.status == 200)
      {
         var url = "carrinho.php";
         window.location = url;
      }
   }

   datapost += "acao=a";
   datapost += "&chave=" + chave;

   ajax.send(datapost);
}

function muda_pagina(sentido)
{
   var lista = false;

   if((sentido == "anterior") && (offset >= limite))
   {
      lista = true;
      offset -= eval(limite);
      pagina--;
   }

   if(sentido == "proxima" && (pagina < paginas))
   {
      lista = true;
      offset += eval(limite);
      pagina++;
   }

   if(lista)
   {
      listar();
   }
}

function muda_categoria(id)
{
   offset = 0;
   pagina = 1;
   lista_lacamentos = 0;
   fk_categoria = id;

   document.getElementById("txt_busca").value = "";

   listar();
   
   return false;
}

function listar_lancamentos()
{
   offset = 0;
   pagina = 1;
   fk_categoria = 0;
   lista_lacamentos = 1;
   
   listar();
   
   return false;
}
