Auto Open Ajax Cart

Тема в разделе "OpenCart", создана пользователем ferments, 7 дек 2012.

  1. ferments

    ferments

    Регистрация:
    8 ноя 2012
    Сообщения:
    115
    Симпатии:
    2
  2. Ping

    Ping PingWin always win

    Регистрация:
    29 окт 2012
    Сообщения:
    445
    Симпатии:
    302
    в сборке от Maxystore такое реализовано
    вот их демо
     
  3. ferments

    ferments

    Регистрация:
    8 ноя 2012
    Сообщения:
    115
    Симпатии:
    2
    Ага нашёл тока как мне это к себе вытащить?
     
  4. einshtein

    einshtein

    Регистрация:
    3 дек 2012
    Сообщения:
    71
    Симпатии:
    28
    Советовал бы поставить вот этот модуль, корзина как на розетке при нажатии на кнопку купить:

    Вот тема с тех поддержкой:
     
  5. ferments

    ferments

    Регистрация:
    8 ноя 2012
    Сообщения:
    115
    Симпатии:
    2
    Может у кого есть фаил с maxystore 1.5.4.1 common.js?
     
  6. Ping

    Ping PingWin always win

    Регистрация:
    29 окт 2012
    Сообщения:
    445
    Симпатии:
    302
  7. ferments

    ferments

    Регистрация:
    8 ноя 2012
    Сообщения:
    115
    Симпатии:
    2
    вобшем я заменил все ровно не открывает :( что то ещё надо заманить ?
     
  8. Ping

    Ping PingWin always win

    Регистрация:
    29 окт 2012
    Сообщения:
    445
    Симпатии:
    302
    Думаю прийти к ним на форум и спросить.
     
  9. Baco

    Baco Антихронофаг Команда форума

    Регистрация:
    9 окт 2012
    Сообщения:
    803
    Симпатии:
    399
    Делал недавно такое автооткрытие, там пару строк поменять нужно, а вот где, не вспомню... но что то со скриптом повязано )
    --- добавлено: 7 дек 2012 в 17:09 ---
    В общем так... в файле common.js нужно заменить функцию:
    Код:
    function addToCart(product_id, quantity) {
    quantity = typeof(quantity) != 'undefined' ? quantity : 1;
    
    $.ajax({
    url: 'index.php?route=checkout/cart/add',
    type: 'post',
    data: 'product_id=' + product_id + '&quantity=' + quantity,
    dataType: 'json',
    success: function(json) {
    $('.success, .warning, .attention, .information, .error').remove();
    
    if (json['redirect']) {
    location = json['redirect'];
    }
    
    if (json['success']) {
    $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<span><img src="catalog/view/theme/theme015/image/close.png" alt="" class="close" /></span></div>');
    
    $('.success').fadeIn('slow');
    
    $('#cart-total').html(json['total']);
    
    }
    }
    });
    }
    
    на
    Код:
    function addToCart(product_id, quantity) {
    quantity = typeof(quantity) != 'undefined' ? quantity : 1;
    
    $.ajax({
    url: 'index.php?route=checkout/cart/add',
    type: 'post',
    data: 'product_id=' + product_id + '&quantity=' + quantity,
    dataType: 'json',
    success: function(json) {
    $('.success, .warning, .attention, .information, .error').remove();
    
    if (json['redirect']) {
    location = json['redirect'];
    }
    
    if (json['success']) {
    
    $('#cart-total').html(json['total']);
    
    //ADD THE FOLLOWING CODE TO YOUR COMMON.JS FILE - START
    
    $('#cart').addClass('active');
    
    $('#cart').load('index.php?route=module/cart #cart > *');
    
    setTimeout(function() {
    $('#cart').removeClass('active');
    }, 5000);
    
    //END
    
    $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
    
    $('.success').fadeIn('slow');
    
    
    
    $('html, body').animate({ scrollTop: 0 }, 'slow');
    }
    }
    });
    }
    
    а теперь в файле \catalog\view\theme\default\template\product\product.tpl нужно заменить кусок кода:
    Код:
    <script type="text/javascript"><!--
    $('#button-cart').bind('click', function() {
    $.ajax({
    url: 'index.php?route=checkout/cart/add',
    type: 'post',
    data: $('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\']:checked, .product-info input[type=\'checkbox\']:checked, .product-info select, .product-info textarea'),
    dataType: 'json',
    success: function(json) {
    $('.success, .warning, .attention, information, .error').remove();
    
    if (json['error']) {
    if (json['error']['option']) {
    for (i in json['error']['option']) {
    $('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>');
    }
    }
    }
    
    if (json['success']) {
    $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
    
    $('.success').fadeIn('slow');
    
    $('#cart-total').html(json['total']);
    
    $('html, body').animate({ scrollTop: 0 }, 'slow');
    }
    }
    });
    });
    //--></script>
    
    на
    Код:
    <script type="text/javascript"><!--
    $('#button-cart').bind('click', function() {
    $.ajax({
    url: 'index.php?route=checkout/cart/add',
    type: 'post',
    data: $('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\']:checked, .product-info input[type=\'checkbox\']:checked, .product-info select, .product-info textarea'),
    dataType: 'json',
    success: function(json) {
    $('.success, .warning, .attention, information, .error').remove();
    
    if (json['error']) {
    if (json['error']['option']) {
    for (i in json['error']['option']) {
    $('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>');
    }
    }
    }
    
    if (json['success']) {
    $('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
    
    $('.success').fadeIn('slow');
    
    $('#cart-total').html(json['total']);
    
    $('#cart').addClass('active');
    
    $('#cart').load('index.php?route=module/cart #cart > *');
    
    setTimeout(function() {$('#cart').removeClass('active');}, 5000);
    
    $('html, body').animate({ scrollTop: 0 }, 'slow');
    }
    }
    });
    });
    //--></script>
    
    Вот и вся магия за 10 $ :coffee:
     
    vadik21 нравится это.
  10. ferments

    ferments

    Регистрация:
    8 ноя 2012
    Сообщения:
    115
    Симпатии:
    2
    Спасибо!!! Всё работает как часики :wink:
     
  11. v@dim

    v@dim

    Регистрация:
    31 окт 2012
    Сообщения:
    132
    Симпатии:
    21
    Нормально. Мне только не нравится что корзина перекрывает всплывающее уведомление.
     
  12. KIa87

    KIa87

    Регистрация:
    15 окт 2012
    Сообщения:
    182
    Симпатии:
    52
    Гм.. z-index проблеме не поможет?
     
  13. v@dim

    v@dim

    Регистрация:
    31 окт 2012
    Сообщения:
    132
    Симпатии:
    21
    Тогда уведомление закроет корзину. Просто эти уведомления нужно переделать. Наметки есть, сделаю оглашу:wink: