// Busca // busca_results_paginacao_automatica_interval_cancel = function () { try { clearInterval(busca_results_paginacao_automatica_interval); } catch (e) {} } busca_results_paginacao_automatica_interval_set = function () { busca_results_paginacao_automatica_interval_cancel(); busca_results_paginacao_automatica_interval = setInterval(function () { try { var paginacao = $j(".conteudo.busca .results .paginacao"), links = paginacao.find("a"), maior = 0, atual = 0, paginacao_height = paginacao.height(), paginacao_position_top = paginacao.position().top, document_scroll_top = $j(document).scrollTop(), window_height = $j(window).height(), diff = 150; if (paginacao_position_top + paginacao_height - diff <= document_scroll_top + window_height) { links.each(function (index, element) { var link = $j(element), x = link.attr("href").split(/[^\d]+/), x = parseInt(x[x.length-1]); if (x > maior) maior = x; if (link.hasClass("atual")) atual = x; }); if (maior > atual) { busca_results_load(atual + 1); } } } catch (e) {} }, 1000); } busca_results_load = function (pagina) { var form = $j(".conteudo.busca form"), results = form.find(".results"), paginacao = results.find(".paginacao"); try { busca_results_load_XMLHTTP.abort(); } catch (e) {} busca_results_load_XMLHTTP = $j.ajax({ type: form.attr("method"), url: "http://www.shoptrans.com.br/antigo/busca-results.php", data: form.serialize() + "&pagina=" + pagina, dataType: "html", beforeSend: function () { $j.each([results, paginacao], function () { $j(this).addClass("loading"); }); busca_results_paginacao_automatica_interval_cancel(); }, error: function () { $j.each([results, paginacao], function () { $j(this).removeClass("loading"); }); busca_results_paginacao_automatica_interval_set(); }, success: function (HTML) { if (pagina > 1) paginacao.before(HTML).remove(); else results.html(HTML); busca_interface_atualiza(); $j.each([results, paginacao], function () { $j(this).removeClass("loading"); }); busca_results_paginacao_automatica_interval_set(); } }); } busca_categoria_select_load = function () { var form = $j(".conteudo.busca form"), categoria_select = form.find(".categoria-select"), select = categoria_select.find(".select"); try { busca_categoria_select_load_XMLHTTP.abort(); } catch (e) {} busca_categoria_select_load_XMLHTTP = $j.ajax({ type: form.attr("method"), url: "http://www.shoptrans.com.br/antigo/busca-categoria-select.php", data: form.serialize(), dataType: "html", beforeSend: function () { select.addClass("loading"); }, error: function () { select.removeClass("loading"); busca_categoria_select_load(); }, success: function (HTML) { categoria_select.html(HTML); select.removeClass("loading"); busca_interface_atualiza(); } }); } busca_interface_inicializa = function () { var form = $j(".conteudo.busca form"), secoes = form.find(".secoes a"), mes = form.find("input[name=mes]"), categoria = form.find("input[name=categoria]"), secao = form.find("input[name=secao]"), order_by = form.find("input[name=order-by]"); form.unbind("submit").bind("submit", function () { busca_results_load(1); return false; }); secoes.unbind("click").bind("click", function () { var link = $j(this), novo = link.attr("href").split("/"); secoes.removeClass("selected"); link.addClass("selected"); secao.val(novo[3]); categoria.val(""); form.submit(); busca_categoria_select_load(); return false; }); $j.each([mes], function () { $j(this).unbind("change").bind("change", function () { form.submit(); }); }); order_by.unbind("change").bind("change", function () { form.submit(); }); busca_interface_atualiza(); } busca_interface_atualiza = function () { var busca = $j(".conteudo.busca"), title = busca.find(".title"), form = busca.find("form"), categoria = form.find("input[name=categoria]"), results = form.find(".results"), paginacao = results.find(".paginacao"), paginas = paginacao.find("a"); categoria.unbind("change").bind("change", function () { form.submit(); }); paginas.unbind("click").bind("click", function () { var link = $j(this), slices = link.attr("href").split("/pagina/"); try { busca_results_load_XMLHTTP.abort(); } catch (e) {} busca_results_load_XMLHTTP = $j.ajax({ type: form.attr("method"), url: "http://www.shoptrans.com.br/antigo/busca-results.php", data: form.serialize() + "&pagina=" + slices[slices.length-1], dataType: "html", beforeSend: function () { $j.each([results, paginacao], function () { $j(this).addClass("loading"); }); busca_results_paginacao_automatica_interval_cancel(); }, error: function () { $j.each([results, paginacao], function () { $j(this).removeClass("loading"); }); busca_results_paginacao_automatica_interval_set(); }, success: function (HTML) { results.html(HTML); busca_interface_atualiza(); $j(document).scrollTop(title.position().top); $j.each([results, paginacao], function () { $j(this).removeClass("loading"); }); busca_results_paginacao_automatica_interval_set(); } }); return false; }); selects_interface_atualiza(); } $j(document).ready(function () { busca_interface_inicializa(); busca_results_paginacao_automatica_interval_set(); }); // ===== //