Проблема с Mega Filter PRO

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

  1. Kavabanga

    Kavabanga

    Регистрация:
    18 июн 2017
    Сообщения:
    22
    Симпатии:
    0
    Я мало знаю и что знаю - научился сам. Исправил на /* */ теперь снова две кнопки. Наверное удалю.
     
  2. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    По корзине
    Откуда такой вывод, что 2й параметр нужно такой? у меня в как было?
    --- Добавлено, 22 июн 2017 ---
    /*____*/ - это правильно, должно работать, можете и удалить
     
  3. Kavabanga

    Kavabanga

    Регистрация:
    18 июн 2017
    Сообщения:
    22
    Симпатии:
    0
    Исправил на /* */ опять две кнопки! Удалил код - две кнопки! :wacko:
    У меня мало знаний в программировании.
    --- Добавлено, 22 июн 2017 ---
    Я уже пробовал без <?php echo $product['minimum']; ?>.
    Никаких изменений.
     
  4. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    1) как код скрипта вставляли, руками или ocmod-ом? Кэш чистили?
    2) у меня не пустой второй параметр,
    2й параметр просто - products
     
  5. Kavabanga

    Kavabanga

    Регистрация:
    18 июн 2017
    Сообщения:
    22
    Симпатии:
    0
    С кнопкой корзины разобрался, исправил - все работает.
    По поводу кода кнопки Купить в один клик - вырезал и руками и редактором из админки - один результат. Кэш чистил всех видов. Все-равно остается. Может что-то не так делаю. Вот весь код Купить в один клик из шапки:

    Код:
    <?php if ( isset($popup_purchase_data['status']) && $popup_purchase_data['status'] ) { ?>
            <script src="catalog/view/javascript/popup_purchase/jquery.magnific-popup.min.js" type="text/javascript"></script>
            <link href="catalog/view/javascript/popup_purchase/magnific-popup.css" rel="stylesheet" media="screen" />
            <link href="catalog/view/theme/default/stylesheet/popup_purchase/stylesheet.css" rel="stylesheet" media="screen" />
            <script type="text/javascript">
            $(function() {
              <?php if ($popup_purchase_data['allow_page']) { ?>
    
    То, что я комментирую или удаляю:
    
              /* $.each($("[onclick^='cart.add']"), function() {
                var product_id = $(this).attr('onclick').match(/[0-9]+/);
                $(this).parent().before("<div class='button-group popup-purchase-button'><button><?php echo $popup_purchase_text['button_purchase_now']; ?></button></div>").prev().attr('onclick', 'get_popup_purchase(\'' + product_id + '\');');
              }); */
    
    продолжение:
    
              $.each($(".product-thumb [onclick^='get_popup_cart']"), function() {
                var product_id = $(this).attr('onclick').match(/[0-9]+/);
                $(this).parent().before("<div class='button-group popup-purchase-button'><button><?php echo $popup_purchase_text['button_purchase_now']; ?></button></div>").prev().attr('onclick', 'get_popup_purchase(\'' + product_id + '\');');
              });
              <?php } ?>
              var main_product_id = $('input[name=\'product_id\']').val();
              $('#button-cart').before( "<button class='btn btn-primary btn-lg btn-block button_in_cart'><?php echo $popup_purchase_text['button_purchase_now']; ?></button>" ).prev().attr('onclick', 'get_popup_purchase(\'' + main_product_id + '\');');
            });
            function get_popup_purchase(product_id) {
              $.magnificPopup.open({
                tLoading: '<img src="catalog/view/theme/default/stylesheet/popup_purchase/ring-alt.svg" />',
                items: {
                  src: 'index.php?route=module/popup_purchase&product_id='+product_id,
                  type: 'ajax'
                }
              });
            }
            </script>
          <?php } ?>
    
     
    Последнее редактирование: 23 июн 2017
  6. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    1) как устанавливали модуль купить в 1 клик?
    2) удаляли код с файла по каком пути
    таком
    /system/storage/modification/view/theme/default/template/common/header.tpl
    или таком
    /catalog/view/theme/default/template/common/header.tpl
    3) тема у вас стандартная или шаблон?
     
  7. Kavabanga

    Kavabanga

    Регистрация:
    18 июн 2017
    Сообщения:
    22
    Симпатии:
    0
    1) Загрузил файлы на сервер --> в админке в "модули", "установка расширений" установил install.ocmod.xml
    2) Удалял из модификатора:
    /system/storage/modification/view/theme/default/template/common/header.tpl
    3) стандартный шаблон
     
  8. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    ясно.
    1) очистите кеш в админке модификаторов
    2) После - проверьте файл в модификаторе на наличие кода js
    3) посмотрите в оригинальный файл(/catalog/view/theme/default/template/common/header.tpl), может туда писали и забыли.
    отпишитесь о результате
     
    Последнее редактирование: 23 июн 2017
  9. Kavabanga

    Kavabanga

    Регистрация:
    18 июн 2017
    Сообщения:
    22
    Симпатии:
    0
    Начал с самого начала - откатил поддомен до всех изменений (еще никаких кнопок не добавлял).
    Зашел по пути: /system/storage/modification/catalog/view/theme/default/template/common/header.tpl
    Вытащил этот файл, открыл, заккоментировал код:
    Код:
    /*
    $.each($("[onclick^='cart.add']"), function() {
               var product_id = $(this).attr('onclick').match(/[0-9]+/);
               $(this).parent().before("<div class='button-group popup-purchase-button'><button><?php echo $popup_purchase_text['button_purchase_now']; ?></button></div>").prev().attr('onclick', 'get_popup_purchase(\'' + product_id + '\');');
             });
    */
    
    Залил обратно, зашел в модификаторы, очистил и обновил кэш модификаторов, вручную удалил системный и vqmod кэш.
    Скачал снова файл, открыл - код заккоментирован!
    Зашел на сайт, кнопка купить в один клик есть и работает!
    Буду сейчас пробовать удалить модуль и установить его заново, вырезав из install.ocmod.xml данный код!
    --- Добавлено, 23 июн 2017 ---
    spy, а точно эта часть кода отвечает за вывод кнопки ?
    после перестановки модуля без этого кода кнопка остается...
    --- Добавлено, 23 июн 2017 ---
    В админке в модуле этом есть пункт "Выводить модуль на других страницах" у меня было включено! Отключил - теперь кнопка выводиться только в карточке товара! В категорию, поиск, производители теперь я знаю как добавить кнопку вручную, что мне и надо, чтоб фильтровать товары и чтобы кнопка не пропадала! А как сделать вывод на главной странице?
     
    Последнее редактирование: 23 июн 2017
  10. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    1) да, это отвечает за кнопку в категории.
    я понял вашу проблему! )):wacko:
    кнопку для по-пап корзины вы сделали раньше чем кнопку в 1клик, а в ней есть 3 функции
    1- за вывод в категориях(поиске и брендах тоже), 2- в карточке и 3я за вывод кнопки как и 1я+но если есть кнопка по-пап корзины!)))
    вы коментили $.each($("[onclick^='cart.add']").....
    а нужно было $.each($(".product-thumb [onclick^='get_popup_cart']")....
    2) как главная - такого файла нет в ОС, туда может быть вынесены модули, вот в какие нужно в такие добавте кнопку как и в категории
     
  11. Kavabanga

    Kavabanga

    Регистрация:
    18 июн 2017
    Сообщения:
    22
    Симпатии:
    0
    Разобрался с главной!
    Ну я думаю если есть настройка в админке для отключения кнопки, мне это и подходит, я не полезу в код.
    spy, Вы здорово мне помогли!
    Еще раз Спасибо Большое!
     
  12. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    Пожалуйста.) Смотрите только, если в админке выключете то кнопка не пропадет, она просто перестанет работать (код же вы руками внесли)) )
    Для благодарности - есть кнопка "мне нравится" -------------->
     
  13. mati

    mati

    Регистрация:
    25 янв 2018
    Сообщения:
    1
    Симпатии:
    0
    Добрый день, помогите пожалуйста, у меня проблема с popup cart (https://opencart2x.ru/moduli/zakaz/korzina-popup) и Mega Filter Pro. После фильтрации не работает корзина, заменял кнопки в category.tpl результата нет,
    в консоли ошибок нет.
    OC Store 2.1.0.1 - шаблон - default
    --- Добавлено, 25 янв 2018 ---
    в модификаторе footer.tpl такой код
    PHP:
    <?php
              $customer_groups 
    = isset($smca_form_data['customer_groups']) ? $smca_form_data['customer_groups'] : array();
              
    $stores = isset($smca_form_data['stores']) ? $smca_form_data['stores'] : array();
            
    ?>
            <?php if ($smca_form_data['activate'] && !in_array($smca_customer_group_id$customer_groups) && !in_array($smca_store_id$stores)) { ?>
            <!-- <?php echo $smca_form_data['front_module_name'].':'.$smca_form_data['front_module_version']; ?> -->
            <script type="text/javascript">
              $(function() {
                $.ajax({
                  type: 'get',
                  url:  'index.php?route=module/ocdev_smart_cart/cartProducts',
                  dataType: 'json',
                  success: function(json) {
                    // one step
                    $.each($("[onclick^='"+json['add_function_selector']+"']"), function() {
                      var product_id = $(this).attr('onclick').match(/[0-9]+/);
                        $(this)
                        .attr('onclick', 'getOCwizardModal_smca(\'' + $(this).attr('onclick').match(/[0-9]+/) + '\',\'' + 'add' + '\');')
                        .addClass('smca-call-button');
                    });
                    var product_id_in_page = $("input[name='product_id']").val();
                      $('#'+json['add_id_selector'])
                      .unbind('click')
                      .attr('onclick', 'getOCwizardModal_smca(\'' + product_id_in_page + '\',\'' + 'add_option' + '\');');
                    // two step
                    if (json['cart_products']) {
                      $.each(json['cart_products'], function(i,value) {
                        $('[onclick="getOCwizardModal_smca(\'' + value + '\',\'' + 'add' + '\');"]')
                        .html('<i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md">' + json['text_in_cart'] + '</span>')
                        .attr('onclick', 'getOCwizardModal_smca(\'' + value + '\',\'' + 'load' + '\');');
                        $('[onclick="getOCwizardModal_smca(\'' + value + '\',\'' + 'add_option' + '\');"]')
                        .html(json['text_in_cart'])
                        .attr('onclick', 'getOCwizardModal_smca(\'' + value + '\',\'' + 'load_option' + '\');');
                      });
                    }
                    if (json['cart_products_vs_options']) {
                      $.each(json['cart_products_vs_options'], function(i,value) {
                        $('[onclick="getOCwizardModal_smca(\'' + value + '\',\'' + 'add' + '\');"]')
                        .html('<i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md">' + json['text_in_cart'] + '</span>');
                        $('[onclick="getOCwizardModal_smca(\'' + value + '\',\'' + 'add_option' + '\');"]')
                        .html(json['text_in_cart_vs_options']);
                      });
                    }
                  }
                });
              });
              function getOCwizardModal_smca(product_id, action) {
                quantity = typeof(quantity) != 'undefined' ? quantity : 1;
                if (action == "add") {
                  $.ajax({
                    url: 'index.php?route=checkout/cart/add',
                    type: 'post',
                    data: 'product_id=' + product_id + '&quantity=' + quantity,
                    dataType: 'json',
                    success: function(json) {
                      if (json['redirect']) {
                        location = json['redirect'];
                      }
                      if (json['success']) {
                        buttonManipulate();
                        getOCwizardModal_smca(product_id,'load');
                        $('#cart-total').html(json['total']);
                      }
                    }
                  });
                }

                if (action == "load" || action == "load_option") {
                  $.magnificPopup.open({
                    tLoading: '<img src="catalog/view/theme/default/stylesheet/ocdev_smart_cart/loading.svg" alt="" />',
                    items: {
                      src: 'index.php?route=module/ocdev_smart_cart',
                      type: 'ajax'
                    },
                    showCloseBtn: false
                  });
                  $('.mfp-bg').css({
                    'background': 'url(image/ocdev_smart_cart/background/<?php echo $smca_form_data['style_beckground']; ?>)',
                    'opacity': '<?php echo ($smca_form_data['background_opacity'] == 0) ? $smca_form_data['background_opacity'] : $smca_form_data['background_opacity']/10?>'
                  });
                }

                if (action == "add_option") {
                  $.ajax({
                    url: 'index.php?route=checkout/cart/add',
                    type: 'post',
                    data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'),
                    dataType: 'json',
                    beforeSend: function() {
                      $('#button-cart').button('loading');
                    },
                    complete: function() {
                      $('#button-cart').button('reset');
                    },
                    success: function(json) {
                      $('.alert, .text-danger').remove();
                      $('.form-group').removeClass('has-error');

                      if (json['error']) {
                        if (json['error']['option']) {
                          for (i in json['error']['option']) {
                            var element = $('#input-option' + i.replace('_', '-'));

                            if (element.parent().hasClass('input-group')) {
                              element.parent().after('<div class="text-danger">' + json['error']['option'] + '</div>');
                            } else {
                              element.after('<div class="text-danger">' + json['error']['option'] + '</div>');
                            }
                          }
                        }
                        $('.text-danger').parent().addClass('has-error');
                      }
                      if (json['success']) {
                        buttonManipulate();
                        getOCwizardModal_smca(product_id, 'load_option');
                        $('#cart-total').html(json['total']);
                      }
                    }
                  });
                }
              }
            </script>
            <!-- <?php echo $smca_form_data['front_module_name'].':'.$smca_form_data['front_module_version']; ?> -->
            <?php ?>
     
    Lasted edited by : 25 янв 2018
  14. andrey231983

    andrey231983

    Регистрация:
    29 май 2014
    Сообщения:
    6
    Симпатии:
    0
    А подскажет ли кто-нибудь, как в этом фильтре отключить ajax выгрузку результатов поиска, и сделать чтобы результаты появлялись после обновления страницы нажатием кнопки "Искать" в фильтре? Понятно, что это менее удобно, но мне необходим именно такой способ. Очень нужно. Заранее спасибо всем, кто откликнется.