RCP90 Posted January 23, 2014 Share Posted January 23, 2014 (edited) Hello, I am using PS 1.5.6.1 and blocklayered 1.10.1. I just noticed that when a filter in the layered nav is selected the price filter does not update to the corresponding products, it will just stay with the previous price range. In the screen shot you can see this. A filter has been selected but the price range does not reflect the filtered products. I rebuilt the indexes in the layered nav and also reset the module, but it still will not update. The price filter itself will filter the products fine, it just does not update when other filters are selected. http://puu.sh/6v4ef.jpg As you can see the 4 products have a price range of £82.80 - £754.80, but the price filters shows £13 - £995 (which was correct before the products were filtered) Edited January 23, 2014 by RCP90 (see edit history) Link to comment Share on other sites More sharing options...
RCP90 Posted January 24, 2014 Author Share Posted January 24, 2014 Anyone have any ideas on this one? Link to comment Share on other sites More sharing options...
annashial Posted October 4, 2015 Share Posted October 4, 2015 I have this issue too. I found another post, stating the same issue but no replies. Anything new here?Did you find a solution? Link to comment Share on other sites More sharing options...
rufusqueen Posted October 10, 2015 Share Posted October 10, 2015 Same issue. In fact any product attributes that I want to filter is not updating. I cant even sort by the product I cant even navigate to category page other than page 1. Only stay at the same page 1, and the word Loading.. just keep on appearing endlessly. Link to comment Share on other sites More sharing options...
gabdara Posted October 12, 2015 Share Posted October 12, 2015 It could be a problem with the ajax call of blocklayered module. This doesn't output an error by default in PS 1.5 and 1.6. To find out what is your error first make sure you have development mode enabled. Then go to YOUR_THEME/js/modules/blocklayered/blocklayered.js and look for the function reloadContent(). In this function look for the ajax call: ajaxQuery = $.ajax( { type: 'GET', url: baseDir + 'modules/blocklayered/blocklayered-ajax.php', data: data + params_plus + n, dataType: 'json', cache: false, // @todo see a way to use cache and to add a timestamps parameter to refresh cache each 10 minutes for example success: function (result) { ... Above the success parameter add an error parameter: ajaxQuery = $.ajax( { type: 'GET', url: baseDir + 'modules/blocklayered/blocklayered-ajax.php', data: data + params_plus + n, dataType: 'json', cache: false, // @todo see a way to use cache and to add a timestamps parameter to refresh cache each 10 minutes for example error: function (error) { console.error(error); }, success: function (result) { ... Save the file, go to your browser, clear cache and reload the category page. Select a value from the filter and open the browser console. If there is an error from blocklayered.js look through the object to find what's wrong. Link to comment Share on other sites More sharing options...
rufusqueen Posted October 12, 2015 Share Posted October 12, 2015 Hi Thanx for replying.. I followed the step as you wrote above.. Then the error console come out as this: [Warning] Unexpected CSS token: : (category.css, line 91) [Error] Object error (blocklayered.js, line 494) j (jquery-1.11.0.min.js, line 2) fireWith (jquery-1.11.0.min.js, line 2) x (jquery-1.11.0.min.js, line 4) abort (jquery-1.11.0.min.js, line 4) stopAjaxQuery (blocklayered.js, line 411) reloadContent (blocklayered.js, line 417) click (blocklayered.js, line 105) dispatch (jquery-1.11.0.min.js, line 3) handle (jquery-1.11.0.min.js, line 3) [Error] Object error (blocklayered.js, line 494) j (jquery-1.11.0.min.js, line 2) fireWith (jquery-1.11.0.min.js, line 2) x (jquery-1.11.0.min.js, line 4) abort (jquery-1.11.0.min.js, line 4) stopAjaxQuery (blocklayered.js, line 411) reloadContent (blocklayered.js, line 417) (anonymous function) (blocklayered.js, line 42) dispatch (jquery-1.11.0.min.js, line 3) handle (jquery-1.11.0.min.js, line 3) Any step how I should go further? I am not a web developer that knows high tech stuff. Link to comment Share on other sites More sharing options...
gabdara Posted October 12, 2015 Share Posted October 12, 2015 Open one of the error Object and see what it says on responseText. Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 What do you mean by response text.. all i see are codes such as this: console.error(error); "function" === d ? a.unique && k.has© || h.push© : c && c.length && "string" !== d && f© c = d === h ? this : this.clone(!0), n(g[d])©, f.apply(e, c.get()); 2 !== t && (t = 2, g && clearTimeout(g), i = void 0, f = d || "", v.readyState = a > 0 ? 4 : 0, j = a >= 200 && 300 > a || 304 === a, c && (u = Pc(k, v, c)), u = Qc(k, u, v, j), j ? (k.ifModified && (w = v.getResponseHeader("Last-Modified"), w && (n.lastModified[e] = w), w = v.getResponseHeader("etag"), w && (n.etag[e] = w)), 204 === a || "HEAD" === k.type ? x = "nocontent" : 304 === a ? x = "notmodified" : (x = u.state, r = u.data, s = u.error, j=!s)) : (s = x, (a ||!x) && (x = "error", 0 > a && (a = 0))), v.status = a, v.statusText = (b || x) + "", j ? o.resolveWith(l, [r, x, v]) : o.rejectWith(l, [v, x, s]), v.statusCode(q), q = void 0, h && m.trigger(j ? "ajaxSuccess" : "ajaxError", [v, k, j ? r: s]), p.fireWith(l, [v, x]), h && (m.trigger("ajaxComplete", [v, k]), --n.active || n.event.trigger("ajaxStop"))) } return i && i.abort(, x(0, , this stopAjaxQuery(); while ((e = f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re || a.namespace_re.test(e.namespace)) && (a.handleObj = e, a.data = e.data, c = ((n.event.special[e.origType] || {}).handle || e.handler).apply(f.elem, i), void 0 !== c && (a.result = c)===!1 && (a.preventDefault(), a.stopPropagation()) return typeof n === L || a && n.event.triggered === a.type ? void 0 : n.event.dispatch.apply(k.elem, arguments) Link to comment Share on other sites More sharing options...
gabdara Posted October 13, 2015 Share Posted October 13, 2015 try console.error(error.responseText); Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 where should i put the text above? Link to comment Share on other sites More sharing options...
gabdara Posted October 13, 2015 Share Posted October 13, 2015 In the ajax call at error parameter. ajaxQuery = $.ajax( { type: 'GET', url: baseDir + 'modules/blocklayered/blocklayered-ajax.php', data: data + params_plus + n, dataType: 'json', cache: false, // @todo see a way to use cache and to add a timestamps parameter to refresh cache each 10 minutes for example error: function (error) { console.error(error.responseText); }, success: function (result) { ... Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 What should i see if the response text can be seen? all i see if i click on the link on the right to the error object is things such as this: function stopAjaxQuery() { if (typeof(ajaxQueries) == 'undefined') ajaxQueries = new Array(); for(i = 0; i < ajaxQueries.length; i++) ajaxQueries.abort(); ajaxQueries = new Array(); function reloadContent(params_plus) { stopAjaxQuery(); if (!ajaxLoaderOn) { $('.product_list').prepend($('#layered_ajax_loader').html()); $('.product_list').css('opacity', '0.7'); ajaxLoaderOn = 1; } // Click on label $('#layered_block_left label a').on({ click: function(e) { e.preventDefault(); var disable = $(this).parent().parent().find('input').attr('disabled'); if (disable == '' || typeof(disable) == 'undefined' || disable == false) { $(this).parent().parent().find('input').click(); reloadContent(); } } }); Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 How do I make the layered navigation just work? Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 if i open using chrome google, and see the error.. this came out what does this means? Link to comment Share on other sites More sharing options...
gabdara Posted October 13, 2015 Share Posted October 13, 2015 Do you have a link where I can look through it? Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 Here is the link.. http://www.iwantmylulu.com/en/30-baby-lulu Link to comment Share on other sites More sharing options...
gabdara Posted October 13, 2015 Share Posted October 13, 2015 Replace console.error with console.log and also add it to success parameter. ... error: function (error) { console.log(error); }, success: function (result) { console.log(result); ... Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 I already put it in the code.. What difference should i be seeing now? Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 /* * 2007-2015 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Academic Free License (AFL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/afl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2015 PrestaShop SA * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registred Trademark & Property of PrestaShop SA */ var ajaxQueries = new Array(); var ajaxLoaderOn = 0; var sliderList = new Array(); var slidersInit = false; $(document).ready(function() { cancelFilter(); openCloseFilter(); // Click on color $(document).on('click', '#layered_form input[type=button], #layered_form label.layered_color', function(e) { if (!$('input[name=+$(this).attr('name')+][type=hidden]').length) $('<input />').attr('type', 'hidden').attr('name', $(this).attr('name')).val($(this).data('rel')).appendTo('#layered_form'); else $('input[name=+$(this).attr('name')+][type=hidden]').remove(); reloadContent(true); }); $(document).on('click', '#layered_form input[type=checkbox], #layered_form input[type=radio]', function() { reloadContent(true); }); // Doesn't work with document element $('body').on('change', '#layered_form .select', function() { reloadContent(true); }); // Changing content of an input text $(document).on('keyup', '#layered_form input.layered_input_range', function(e){ if ($(this).attr('timeout_id')) window.clearTimeout($(this).attr('timeout_id')); // IE Hack, setTimeout do not acept the third parameter var reference = this; $(this).attr('timeout_id', window.setTimeout(function(it){ if (!$(it).attr('id')) it = reference; var filter = $(it).attr('id').replace(/^layered_(.+)_range_.*$/, '$1'); var value_min = parseInt($('#layered_'+filter+'_range_min').val()); if (isNaN(value_min)) value_min = 0; $('#layered_'+filter+'_range_min').val(value_min); var value_max = parseInt($('#layered_'+filter+'_range_max').val()); if (isNaN(value_max)) value_max = 0; $('#layered_'+filter+'_range_max').val(value_max); if (value_max < value_min) { $('#layered_'+filter+'_range_max').val($(it).val()); $('#layered_'+filter+'_range_min').val($(it).val()); } reloadContent(); }, 500, this)); }); $(document).on('click', '#layered_block_left .radio', function(e){ var name = $(this).attr('name'); $.each($(this).parent().parent().find('input[type=button]'), function (it, item) { if ($(item).hasClass('on') && $(item).attr('name') != name) $(item).click(); }); return true; }); // Click on label $('#layered_block_left label a').on({ click: function(e) { e.preventDefault(); var disable = $(this).parent().parent().find('input').attr('disabled'); if (disable == '' || typeof(disable) == 'undefined' || disable == false) { $(this).parent().parent().find('input').click(); reloadContent(); } } }); layered_hidden_list = {}; $('.hide-action').on('click', function(e){ if (typeof(layered_hidden_list[$(this).parent().find('ul').attr('id')]) == 'undefined' || layered_hidden_list[$(this).parent().find('ul').attr('id')] == false) layered_hidden_list[$(this).parent().find('ul').attr('id')] = true; else layered_hidden_list[$(this).parent().find('ul').attr('id')] = false; hideFilterValueAction(this); }); $('.hide-action').each(function() { hideFilterValueAction(this); }); $('.selectProductSort').unbind('change').bind('change', function(event) { $('.selectProductSort').val($(this).val()); if($('#layered_form').length > 0) reloadContent(true); }); $(document).off('change').on('change', 'select[name=n]', function(e) { $('select[name=n]').val($(this).val()); reloadContent(true); }); paginationButton(false); initLayered(); }); function initFilters() { if (typeof filters !== 'undefined') { for (key in filters) { if (filters.hasOwnProperty(key)) var filter = filters[key]; if (typeof filter.slider !== 'undefined' && parseInt(filter.filter_type) == 0) { var filterRange = parseInt(filter.max)-parseInt(filter.min); var step = filterRange / 100; if (step > 1) step = parseInt(step); addSlider(filter.type, { range: true, step: step, min: parseInt(filter.min), max: parseInt(filter.max), values: [filter.values[0], filter.values[1]], slide: function(event, ui) { stopAjaxQuery(); if (parseInt($(event.target).data('format')) < 5) { from = formatCurrency(ui.values[0], parseInt($(event.target).data('format')), $(event.target).data('unit')); to = formatCurrency(ui.values[1], parseInt($(event.target).data('format')), $(event.target).data('unit')); } else { from = ui.values[0] + $(event.target).data('unit'); to = ui.values[1] + $(event.target).data('unit'); } $('#layered_' + $(event.target).data('type') + '_range').html(from + ' - ' + to); }, stop: function () { reloadContent(true); } }, filter.unit, parseInt(filter.format)); } else if(typeof filter.slider !== 'undefined' && parseInt(filter.filter_type) == 1) { $('#layered_' + filter.type + '_range_min').attr('limitValue', filter.min); $('#layered_' + filter.type + '_range_max').attr('limitValue', filter.max); } $('.layered_' + filter.type).show(); } initUniform(); } } function initUniform() { if (!!$.prototype.uniform) $("#layered_form input[type=checkbox], #layered_form input[type=radio], select.form-control").uniform(); } function hideFilterValueAction(it) { if (typeof(layered_hidden_list[$(it).parent().find('ul').attr('id')]) == 'undefined' || layered_hidden_list[$(it).parent().find('ul').attr('id')] == false) { $(it).parent().find('.hiddable').hide(); $(it).parent().find('.hide-action.less').hide(); $(it).parent().find('.hide-action.more').show(); } else { $(it).parent().find('.hiddable').show(); $(it).parent().find('.hide-action.less').show(); $(it).parent().find('.hide-action.more').hide(); } } function addSlider(type, data, unit, format) { sliderList.push({ type: type, data: data, unit: unit, format: format }); } function initSliders() { $(sliderList).each(function(i, slider){ $('#layered_'+slider['type']+'_slider').slider(slider['data']); var from = ''; var to = ''; switch (slider['format']) { case 1: case 2: case 3: case 4: from = formatCurrency($('#layered_'+slider['type']+'_slider').slider('values', 0), slider['format'], slider['unit']); to = formatCurrency($('#layered_'+slider['type']+'_slider').slider('values', 1), slider['format'], slider['unit']); break; case 5: from = $('#layered_'+slider['type']+'_slider').slider('values', 0)+slider['unit'] to = $('#layered_'+slider['type']+'_slider').slider('values', 1)+slider['unit']; break; } $('#layered_'+slider['type']+'_range').html(from+' - '+to); }); } function initLayered() { initFilters(); initSliders(); initLocationChange(); updateProductUrl(); if (window.location.href.split('#').length == 2 && window.location.href.split('#')[1] != '') { var params = window.location.href.split('#')[1]; reloadContent('&selected_filters='+params); } } function paginationButton(nbProductsIn, nbProductOut) { if (typeof(current_friendly_url) === 'undefined') current_friendly_url = '#'; $('div.pagination a').not(':hidden').each(function () { if ($(this).attr('href').search(/(\?|&)p=/) == -1) var page = 1; else var page = parseInt($(this).attr('href').replace(/^.*(\?|&)p=(\d+).*$/, '$2')); var location = window.location.href.replace(/#.*$/, ''); $(this).attr('href', location + current_friendly_url.replace(/\/page-(\d+)/, '') + '/page-' + page); }); $('div.pagination li').not('.current, .disabled').each(function () { var nbPage = 0; if ($(this).hasClass('pagination_next')) nbPage = parseInt($('div.pagination li.current').children().children().html())+ 1; else if ($(this).hasClass('pagination_previous')) nbPage = parseInt($('div.pagination li.current').children().children().html())- 1; $(this).children().children().on('click', function(e) { e.preventDefault(); if (nbPage == 0) p = parseInt($(this).html()) + parseInt(nbPage); else p = nbPage; p = '&p='+ p; reloadContent(p); nbPage = 0; }); }); //product count refresh if(nbProductsIn!=false) { if(isNaN(nbProductsIn) == 0) { // add variables var productCountRow = $('.product-count').html(); var nbPage = parseInt($('div.pagination li.current').children().children().html()); var nb_products = nbProductsIn; if ($('#nb_item option:selected').length == 0) var nbPerPage = nb_products; else var nbPerPage = parseInt($('#nb_item option:selected').val()); isNaN(nbPage) ? nbPage = 1 : nbPage = nbPage; nbPerPage*nbPage < nb_products ? productShowing = nbPerPage*nbPage :productShowing = (nbPerPage*nbPage-nb_products-nbPerPage*nbPage)*-1; nbPage==1 ? productShowingStart=1 : productShowingStart=nbPerPage*nbPage-nbPerPage+1; //insert values into a .product-count productCountRow = $.trim(productCountRow); productCountRow = productCountRow.split(' '); var backStart = new Array; for (row in productCountRow) if (parseInt(productCountRow[row]) + 0 == parseInt(productCountRow[row])) backStart.push(row); if (typeof backStart[0] !== 'undefined') productCountRow[backStart[0]] = productShowingStart; if (typeof backStart[1] !== 'undefined') productCountRow[backStart[1]] = (nbProductOut != 'undefined') && (nbProductOut > productShowing) ? nbProductOut : productShowing; if (typeof backStart[2] !== 'undefined') productCountRow[backStart[2]] = nb_products; if (typeof backStart[1] !== 'undefined' && typeof backStart[2] !== 'undefined' && productCountRow[backStart[1]] > productCountRow[backStart[2]]) productCountRow[backStart[1]] = productCountRow[backStart[2]]; productCountRow = productCountRow.join(' '); $('.product-count').html(productCountRow); $('.product-count').show(); } else $('.product-count').hide(); } } function cancelFilter() { $(document).on('click', '#enabled_filters a', function(e){ if ($(this).data('rel').search(/_slider$/) > 0) { if ($('#'+$(this).data('rel')).length) { $('#'+$(this).data('rel')).slider('values' , 0, $('#'+$(this).data('rel')).slider('option' , 'min' )); $('#'+$(this).data('rel')).slider('values' , 1, $('#'+$(this).data('rel')).slider('option' , 'max' )); $('#'+$(this).data('rel')).slider('option', 'slide')(0,{values:[$('#'+$(this).data('rel')).slider( 'option' , 'min' ), $('#'+$(this).data('rel')).slider( 'option' , 'max' )]}); } else if($('#'+$(this).data('rel').replace(/_slider$/, '_range_min')).length) { $('#'+$(this).data('rel').replace(/_slider$/, '_range_min')).val($('#'+$(this).data('rel').replace(/_slider$/, '_range_min')).attr('limitValue')); $('#'+$(this).data('rel').replace(/_slider$/, '_range_max')).val($('#'+$(this).data('rel').replace(/_slider$/, '_range_max')).attr('limitValue')); } } else { if ($('option#'+$(this).data('rel')).length) $('#'+$(this).data('rel')).parent().val(''); else { $('#'+$(this).data('rel')).attr('checked', false); $('.'+$(this).data('rel')).attr('checked', false); $('#layered_form input[type=hidden][name=+$(this).data('rel')+]').remove(); } } reloadContent(true); e.preventDefault(); }); } function openCloseFilter() { $(document).on('click', '#layered_form span.layered_close a', function(e) { if ($(this).html() == '<') { $('#'+$(this).data('rel')).show(); $(this).html('v'); $(this).parent().removeClass('closed'); } else { $('#'+$(this).data('rel')).hide(); $(this).html('<'); $(this).parent().addClass('closed'); } e.preventDefault(); }); } function stopAjaxQuery() { if (typeof(ajaxQueries) == 'undefined') ajaxQueries = new Array(); for(i = 0; i < ajaxQueries.length; i++) ajaxQueries.abort(); ajaxQueries = new Array(); } function reloadContent(params_plus) { stopAjaxQuery(); if (!ajaxLoaderOn) { $('.product_list').prepend($('#layered_ajax_loader').html()); $('.product_list').css('opacity', '0.7'); ajaxLoaderOn = 1; } data = $('#layered_form').serialize(); $('.layered_slider').each( function () { var sliderStart = $(this).slider('values', 0); var sliderStop = $(this).slider('values', 1); if (typeof(sliderStart) == 'number' && typeof(sliderStop) == 'number') data += '&'+$(this).attr('id')+'='+sliderStart+'_'+sliderStop; }); $(['price', 'weight']).each(function(it, sliderType) { if ($('#layered_'+sliderType+'_range_min').length) data += '&layered_'+sliderType+'_slider='+$('#layered_'+sliderType+'_range_min').val()+'_'+$('#layered_'+sliderType+'_range_max').val(); }); $('#layered_form .select option').each( function () { if($(this).attr('id') && $(this).parent().val() == $(this).val()) data += '&'+$(this).attr('id') + '=' + $(this).val(); }); if ($('.selectProductSort').length && $('.selectProductSort').val()) { if ($('.selectProductSort').val().search(/orderby=/) > 0) { // Old ordering working var splitData = [ $('.selectProductSort').val().match(/orderby=(\w*)/)[1], $('.selectProductSort').val().match(/orderway=(\w*)/)[1] ]; } else { // New working for default theme 1.4 and theme 1.5 var splitData = $('.selectProductSort').val().split(':'); } data += '&orderby='+splitData[0]+'&orderway='+splitData[1]; } if ($('select[name=n]:first').length) { if (params_plus) data += '&n=' + $('select[name=n]:first').val(); else data += '&n=' + $('div.pagination form.showall').find('input[name=n]').val(); } var slideUp = true; if (typeof params_plus === undefined || !(typeof params_plus === 'string')) { params_plus = ''; slideUp = false; } // Get nb items per page var n = ''; if (params_plus) { $('div.pagination select[name=n]').children().each(function(it, option) { if (option.selected) n = '&n=' + option.value; }); } ajaxQuery = $.ajax( { type: 'GET', url: baseDir + 'modules/blocklayered/blocklayered-ajax.php', data: data+params_plus+n, dataType: 'json', cache: false, // @todo see a way to use cache and to add a timestamps parameter to refresh cache each 10 minutes for example error: function (error) { console.log(error); }, success: function(result) { console.log(result); if (result.meta_description != '') $('meta[name=description]').attr('content', result.meta_description); if (result.meta_keywords != '') $('meta[name=keywords]').attr('content', result.meta_keywords); if (result.meta_title != '') $('title').html(result.meta_title); if (result.heading != '') $('h1.page-heading .cat-name').html(result.heading); $('#layered_block_left').replaceWith(utf8_decode(result.filtersBlock)); $('.category-product-count, .heading-counter').html(result.categoryCount); if (result.nbRenderedProducts == result.nbAskedProducts) $('div.clearfix.selector1').hide(); if (result.productList) { //$('.product_list').replaceWith(utf8_decode(result.productList)); var $container = $('#product_list'); var string_append = "<div id='div_append' style='display:none'>" + utf8_decode(result.productList) + "</div>"; $('body').append(string_append); var new_result_html = $('#div_append #product_list').html(); $('#div_append').remove(); var selector = '.ajax_block_product'; var $removable = $container.find(selector); $container.isotope( 'remove', $removable); var $container = $('#product_list'); $('#product_list').html(''); $container.isotope( 'insert', $(new_result_html) ); imagesLoaded( $container, function() { $container.isotope('reLayout'); }); $('#product_list').css('overflow','visible'); } else { $('.product_list').html(''); $('#product_list').removeClass('isotope'); } $('.product_list').css('opacity', '1'); if ($.browser.msie) // Fix bug with IE8 and aliasing $('.product_list').css('filter', ''); if (result.pagination.search(/[^\s]/) >= 0) { var pagination = $('<div/>').html(result.pagination) var pagination_bottom = $('<div/>').html(result.pagination_bottom); if ($('<div/>').html(pagination).find('#pagination').length) { $('#pagination').show(); $('#pagination').replaceWith(pagination.find('#pagination')); } else $('#pagination').hide(); if ($('<div/>').html(pagination_bottom).find('#pagination_bottom').length) { $('#pagination_bottom').show(); $('#pagination_bottom').replaceWith(pagination_bottom.find('#pagination_bottom')); } else $('#pagination_bottom').hide(); } else { $('#pagination').hide(); $('#pagination_bottom').hide(); } paginationButton(result.nbRenderedProducts, result.nbAskedProducts); ajaxLoaderOn = 0; // On submiting nb items form, relaod with the good nb of items $('div.pagination form').on('submit', function(e) { e.preventDefault(); val = $('div.pagination select[name=n]').val(); $('div.pagination select[name=n]').children().each(function(it, option) { if (option.value == val) $(option).attr('selected', true); else $(option).removeAttr('selected'); }); // Reload products and pagination reloadContent(); }); if (typeof(ajaxCart) != "undefined") ajaxCart.overrideButtonsInThePage(); if (typeof(reloadProductComparison) == 'function') reloadProductComparison(); filters = result.filters; initFilters(); initSliders(); current_friendly_url = result.current_friendly_url; // Currente page url if (typeof(current_friendly_url) === 'undefined') current_friendly_url = '#'; // Get all sliders value $(['price', 'weight']).each(function(it, sliderType) { if ($('#layered_'+sliderType+'_slider').length) { // Check if slider is enable & if slider is used if (typeof($('#layered_'+sliderType+'_slider').slider('values', 0)) != 'object') { if ($('#layered_'+sliderType+'_slider').slider('values', 0) != $('#layered_'+sliderType+'_slider').slider('option' , 'min') || $('#layered_'+sliderType+'_slider').slider('values', 1) != $('#layered_'+sliderType+'_slider').slider('option' , 'max')) current_friendly_url += '/'+blocklayeredSliderName[sliderType]+'-'+$('#layered_'+sliderType+'_slider').slider('values', 0)+'-'+$('#layered_'+sliderType+'_slider').slider('values', 1) } } else if ($('#layered_'+sliderType+'_range_min').length) current_friendly_url += '/'+blocklayeredSliderName[sliderType]+'-'+$('#layered_'+sliderType+'_range_min').val()+'-'+$('#layered_'+sliderType+'_range_max').val(); }); window.location.href = current_friendly_url; if (current_friendly_url != '#/show-all') $('div.clearfix.selector1').show(); lockLocationChecking = true; if (slideUp) $.scrollTo('.product_list', 400); updateProductUrl(); $('.hide-action').each(function() { hideFilterValueAction(this); }); if (display instanceof Function) { var view = $.totalStorage('display'); if (view && view != 'grid') display(view); } } }); ajaxQueries.push(ajaxQuery); } function initLocationChange(func, time) { if (!time) time = 500; var current_friendly_url = getUrlParams(); setInterval(function() { if(getUrlParams() != current_friendly_url && !lockLocationChecking) { // Don't reload page if current_friendly_url and real url match if (current_friendly_url.replace(/^#(\/)?/, '') == getUrlParams().replace(/^#(\/)?/, '')) return; lockLocationChecking = true; reloadContent('&selected_filters='+getUrlParams().replace(/^#/, '')); } else { lockLocationChecking = false; current_friendly_url = getUrlParams(); } }, time); } function getUrlParams() { if (typeof(current_friendly_url) === 'undefined') current_friendly_url = '#'; var params = current_friendly_url; if(window.location.href.split('#').length == 2 && window.location.href.split('#')[1] != '') params = '#'+window.location.href.split('#')[1]; return params; } function updateProductUrl() { // Adding the filters to URL product if (typeof(param_product_url) != 'undefined' && param_product_url != '' && param_product_url !='#') { $.each($('ul.product_list li.ajax_block_product .product_img_link,'+ 'ul.product_list li.ajax_block_product h5 a,'+ 'ul.product_list li.ajax_block_product .product_desc a,'+ 'ul.product_list li.ajax_block_product .lnk_view'), function() { $(this).attr('href', $(this).attr('href') + param_product_url); }); } } /** * Copy of the php function utf8_decode() */ function utf8_decode (utfstr) { var res = ''; for (var i = 0; i < utfstr.length;) { var c = utfstr.charCodeAt(i); if (c < 128) { res += String.fromCharCode©; i++; } else if((c > 191) && (c < 224)) { var c1 = utfstr.charCodeAt(i+1); res += String.fromCharCode(((c & 31) << 6) | (c1 & 63)); i += 2; } else { var c1 = utfstr.charCodeAt(i+1); var c2 = utfstr.charCodeAt(i+2); res += String.fromCharCode(((c & 15) << 12) | ((c1 & 63) << 6) | (c2 & 63)); i += 3; } } return res; } Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 it still not working… still function as loading… forever.. Link to comment Share on other sites More sharing options...
gabdara Posted October 13, 2015 Share Posted October 13, 2015 This console.log lines are to debug the problem, to point in a direction that might tell us what's causing this. It's not the fix. If I click a checkbox it's weird it returns the same products all the time and forgets to remove the loading. If I click on a color I can see in response text: Notice: Undefined offset: 1 in /home2/kittenvo/public_html/lulu/modules/blocklayered/blocklayered.php on line 1716 Have a look on that file at that line, maybe it's something off. Also a few things that I should have suggested at the beginning: 1. Go in BO at the module configuration page and click all the buttons from INDEXES AND CACHES. 2. Go to BO > Advanced Parameters > Performance and click Clear cache button This way if it still doesn't work we'll know it's not a cache problem. To be extra sure it's not from cache you can also go in YOUR_PRESTA/cache/smarty and from folders cache and compile delete everything except index.php. Link to comment Share on other sites More sharing options...
rufusqueen Posted October 13, 2015 Share Posted October 13, 2015 I already click the clear cache button. But result is still the same. How do I find the line 1716 in php file? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now