EventBus example

by arohy

JavaScript

$(function(){
  // обновляем корзину и виджет
  Events( 'onCart_Update' ).subscribe( function( $data ){
    //console.log( 'onCart_Update',$data );

    // выводим виджет корзины ( из шаблона )
    $( '.basket_list' )
      .html( InSales.Render( $data, 'cart', 'dropdown' ) );

    // пересчет кол-ва товаров в $data
    $('.js-basket-items_count')
      .html( $data.items_count );
    $('.js-basket-total_price')
      .html( InSales.formatMoney( $data.total_price ) );
  });

  // обновляем общую стоимость заказа на странице корзины
  // выводим скидки при обновлении корзины ( из шаблона )
  if( Site.template == 'cart' ){
    Events( 'onCart_Update' ).subscribe( function( $data ){
      //console.log( 'onCart_Update',$data );

      // вставляем в целевой блок шаблон со скидками
      $( '.js-discounts-list' )
        .html( InSales.Render( $data, 'cart', 'discounts' ) );

      $( '.js-cart-total' )
        .html( InSales.formatMoney( $data.total_price ) );
    });
  }
}