[Помогите] Mega Filter PRO/PLUS не хочет работать в firefox

Тема в разделе "OpenCart", создана пользователем fanton123, 29 июн 2017.

  1. fanton123

    fanton123

    Регистрация:
    24 дек 2012
    Сообщения:
    279
    Симпатии:
    31
    Проверяя сайт в других браузерах наткнулся на проблему. Mega Filter PRO/PLUS(2.0.5.2) не хочет запускаться в Firefox.
    Проверял в:
    1. Firefox developer edition 44.0a2 (2015-11-22)
    2. Firefox 54.0 (32-бит)
    Консоль выдает:

    Страница для примера:

    В других браузерах вроде работает нормально. Не могу понять почему.
     
  2. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    Неработает и в ие и сафари)))
    Проблема в
    Код:
    MegaFilter.prototype.beforeRequest = function() {
        var self = this;
    };
    В админке фильтра добавлял скрипты какие-то?
    Установка была через vqmod?
     
  3. fanton123

    fanton123

    Регистрация:
    24 дек 2012
    Сообщения:
    279
    Симпатии:
    31
    Устанавливал через OCMod. Некоторые вставки перенёс руками.
    Проблема не только в этой строчке. Очевидно что я пробовал её удалять, результата это не дало продолжали другие ошибки сыпаться. Скрипты не добавлял.
     
  4. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    Может что-то руками добавил и OCMod дописал.
    Два раза, например jquery определено.
    Переустанови, удали что руками перенес.
    Возможно какой-то модуль перебивает(а у тебя там много жс скриптов подключено), поодключай и включай по одному.
    С этой версией проблем небыло в браузерах, скорей не правильная установка или скрипт мешает))
     
  5. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Проблема очень простая и заключается она в том, что нельзя бездумно оптимизировать всё, что попадается на глаза.
    fanton123, зачем у вас при подключении скрипта мегафильтра в теге стоит async? Из-за этого код в теле страницы выполняется раньше, чем загружается сам скрипт.
     
    fanton123 и spy нравится это.
  6. fanton123

    fanton123

    Регистрация:
    24 дек 2012
    Сообщения:
    279
    Симпатии:
    31
    Точно. Проблема в подключении скриптов. Еще вопрос не могу найти где подключается js скрипты МЕГАФИЛЬТРА. В контролере не нашел.
     
  7. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Смотрите модифицированный контроллер и шаблон категории, а также шапки. Если где-то там найдёте, то ищите среди модификаторов. Или можете сразу модификатор фильтра посмотреть.
     
  8. PoTBeJIJIePP

    PoTBeJIJIePP

    Регистрация:
    15 апр 2016
    Сообщения:
    52
    Симпатии:
    41
    Ситуация такая же. Мега фильтр корректно работает только в хроме. В других браузерах все пункты не активны.
    Вот сайт
    В поле добавления скриптов в фильтр следующее
    Код:
    // Product List
    $('#list-view').click(function() {
    $('#content .product-grid > .clearfix').remove();
    
    $('#content .row.products > .product-grid').attr('class', 'product-layout product-list');
    
    $('#list-view').addClass('active');
    $('#grid-view').removeClass('active');
    
    localStorage.setItem('display', 'list');
    });
    
    // Product Grid
    $('#grid-view').click(function() {
    // What a shame bootstrap does not take into account dynamically loaded columns
    var cols = $('#column-right, #column-left').length;
    
    if (cols == 2) {
    $('#content .row.products > .product-list').attr('class', 'product-layout product-grid');
    } else if (cols == 1) {
    $('#content .row.products > .product-list').attr('class', 'product-layout product-grid');
    } else {
    $('#content .row.products > .product-list').attr('class', 'product-layout product-grid');
    }
    $('#grid-view').addClass('active');
    $('#list-view').removeClass('active');
    
    localStorage.setItem('display', 'grid');
    });
    
    if (localStorage.getItem('display') == 'list') {
    $('#list-view').trigger('click');
    
    $('#list-view').addClass('active');
    $('#grid-view').removeClass('active');
    
    } else if (localStorage.getItem('display') == 'grid') {
    $('#grid-view').trigger('click');
    
    $('#grid-view').addClass('active');
    $('#list-view').removeClass('active');
    }
    MegaFilter.prototype.afterRender = function( htmlResponse, htmlContent, json ) {
            var self = this;
            $.ajax({
                url: 'index.php?route=module/avail/getConfig', // получаем настройки
                type: 'post',
                data: '',
                dataType: 'json',
                success:function(json){
                    all_button_id = json.all_button_id;     //кнопка купить на миниатюрах
                    block_product = json.block_product;    // блок продукта на миниатюрах
                    status = json.button; // включен модуль по опциям или без
                    avail_default = json.avail_default; // актывный шаблон базовый или нет
                    text = json.text; // название кнопки
                    button_avail_help = json.button_avail_help; // подсказка при наведении
                    blok_in_productpage = json.avail_block_option_productpage; // блок данных по родукту страница товара
                    button_cart_productpage    = json.avail_button_cart_productpage; // слас кнопки купить на странице товара
                    avail_options_status = json.avail_options_status; // работать с опциями или без
                    avail_button_other_productpage = json.avail_button_other_productpage; // дополнительная кнопка(например быстрый заказ)
                    // если модуль включен
                    avail_background_button_open_notify = json.avail_background_button_open_notify;
                    avail_background_button_send_notify = json.avail_background_button_send_notify;
                    avail_border_button_open_notify = json.avail_border_button_open_notify;
                    avail_border_button_send_notify = json.avail_border_button_send_notify;
                    avail_icon_open_notify = json.avail_icon_open_notify;
                    avail_icon_send_notify = json.avail_icon_send_notify;
                    avail_text_button_open_notify = json.avail_text_button_open_notify;
                    avail_text_button_send_notify = json.avail_text_button_send_notify;
                    button_type = 'button';
                    ButtonAtherPage(json,button_type);
                  
    
                  
                }
            });
            }
     
  9. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Проблема абсолютно другая! С самим фильтром у вас никаких проблем нет, все скрипты загружаются правильно и никаких ошибок. Проблема в данных, вероятно тех, которые приходят отсюда:
    https://автомузыка.com.ua/index.php...urers,filter&mfilterLPath=/videoregistratory/

    В Хроме тут приходит нормальный ответ, а в Мозилле - 301 на https://автомузыка.com.ua/videoregi...urers,filter&mfilterLPath=/videoregistratory/
    А там в ответ приходит страница категории, а не тот ответ, который ожидает фильтр.

    Попробуйте переместить ползунок цены, после этого фильтр приходит в себя. Там уже и в Мозилле приходит нормальный ответ на запрос к https://автомузыка.com.ua/videoregi...lterLPath=/videoregistratory/&_=1499211295907
     
  10. PoTBeJIJIePP

    PoTBeJIJIePP

    Регистрация:
    15 апр 2016
    Сообщения:
    52
    Симпатии:
    41
    Да, после перемещения ползунка фильтр оживает...
    Но, что с этим поведением делать???
    Не каждый посетитель будет двигать ползунок, чтобы заработал фильтр
     
  11. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Я уже написал в чём причина проблемы. Дальше стоит начать с обращения к автору фильтра. Если он скажет, что с самим фильтром это не связано, то обращаться за платной помощью.
     
  12. fanton123

    fanton123

    Регистрация:
    24 дек 2012
    Сообщения:
    279
    Симпатии:
    31
    Не нашел нигде =(. Даже поиск прямой по всем файлам не помог. Думаю что подключение организовано в закодированом файле =(
     
  13. fanton123

    fanton123

    Регистрация:
    24 дек 2012
    Сообщения:
    279
    Симпатии:
    31
    Снова вопрос с фильтром. Теперь не хочет работать с кириллицей.
    Пример:
    Если у товара забита характеристика на кириллицей, а это практически все товары. То фильтр странно себя ведет при фильтрации. Вроде фильтрует, затем перезагружает страницу и выдает пустой результат(без товаров). И в Url кириллические названия характеристик выглядят типа:

    Перестроение индекса помогает, но не надолго. Не могу понять почему так происходит и как поправить.