`); }); } else { const field = $(`[name="${index}"][value="${values}"]`); const field_id = field.prop('id'); let field_text = $(`[for="${field_id}"]`).text(); field.prop('checked', true); if (index.includes('range_slider')) { sliderRangeData = values.split('-'); const from = parseFloat(sliderRangeData[0]).toLocaleString('pt-BR', { style: 'currency', currency: 'BRL' }); const to = parseFloat(sliderRangeData[1]).toLocaleString('pt-BR', { style: 'currency', currency: 'BRL' }); $('.of').text(from); $('.until').text(to); field_text = 'De ' + from + ' Até ' + to; } $('.items-selected').append(`
`); } }); } $('.js-remove-filter').on('click', function() { const target = $(this).data('target'); $(target).prop('checked', false); $('.filterForm').submit(); }); $('.js-close-filters').on('click', function() { $('.filterContent').removeAttr('open'); }); $(".filter-bar-price").each(function() { const $filterItem = $(this); const rangeData = $filterItem.data("range").split("-"); const minValue = parseFloat(rangeData[0]); const maxValue = parseFloat(rangeData[1]); const $slider = $filterItem.find("#slider-range"); const val1 = sliderRangeData[0] ? sliderRangeData[0] : minValue; const val2 = sliderRangeData[1] ? sliderRangeData[1] : maxValue; $slider.slider({ range: true, min: minValue, max: maxValue, values: [val1, val2], slide: function(event, ui) { $(".of").text("R$ " + ui.values[0]); $(".until").text("R$ " + ui.values[1]); $('#input-range-slider').val(parseInt(ui.values[0]) + "-" + parseInt(ui.values[1])); } }); $(".of").text("R$ " + $slider.slider("values", 0)); $(".until").text("R$ " + $slider.slider("values", 1)); }); $('.filterForm').on('submit', function(e) { e.preventDefault(); var formDataArray = $(this).serializeArray(); var formDataObject = {}; formDataArray.forEach(function(item) { if (formDataObject[item.name]) { if (!Array.isArray(formDataObject[item.name])) { formDataObject[item.name] = [formDataObject[item.name]]; } formDataObject[item.name].push(item.value); } else { formDataObject[item.name] = item.value; } }); if (Object.entries(formDataObject).length) { const formDataJSON = JSON.stringify(formDataObject); const formDataBase64 = btoa(formDataJSON); addURLParam('filters', formDataBase64); const currentUrl = window.location.href; const isCategoryOrSearch = $('.page-product-category, .page-search, .product-search-searchNewStructure').length > 0; const searchParam = window.location.search.replace(/\?page=\d+/, ''); if (!isCategoryOrSearch) { window.location.href = `/busca${searchParam}&filters=${encodeURIComponent(formDataBase64)}`; } else { window.location.href = currentUrl; } } else { clearFilters(); } }); }); Tratamento
Adicionar à lista de desejos Atenção: Esta loja é apenas uma demonstração. Nenhum pedido deverá ser considerado. Produtos divulgados são apenas testes.