{% extends 'application/layout.html.twig' %}
{% block content %}
<main class="main">
<div class="breadcrumb">
<div class="container">
<ol class="breadcrumb__list">
<li class="breadcrumb__item"><a href="{{ path('home') }}" class="breadcrumb__link">Главная</a></li>
<li class="breadcrumb__item active" aria-current="page">Корзина</li>
</ol>
</div>
</div>
<div id="cartItems">
{{ include('application/cart/items.html.twig') }}
</div>
</main>
{% endblock %}
{% block scripts %}
<script>
function initCartItems() {
$('#clearPromo').click(function () {
$(this).hide();
$.ajax({
type: "POST",
url: '{{ path('clear-promo-ajax') }}',
success: function (data) {
location.reload();
}
}).fail(function() {
alertPopup('Ошибка');
});
return false;
});
$('#promoForm').submit(function () {
$.ajax({
type: "POST",
url: '{{ path('apply-promo-ajax') }}',
data: $(this).serialize(),
success: function (data) {
if (data.success) {
//alertPopup('Промокод успешно активирован');
/*
$('#promoButton').hide();
$('#promoAlert').show();
$('#clearPromo').show();
promo.attr('disabled', 'disabled');
*/
location.reload();
} else {
alertPopup('Неверный промокод');
}
}
}).fail(function() {
alertPopup('Ошибка');
});
return false;
});
$('.addRelatedProduct').click(function () {
let id = $(this).attr('data-id');
$.ajax({
type: "POST",
url: '{{ path('cart-put-ajax') }}',
data: {
id: id,
count: 1
},
success: function (data) {
$('#cartDiv').html(data.cartHtml);
$('#cartItems').html(data.itemsHtml);
initCartItems();
prepareProductBlockCount($('#cartItems'));
}
}).fail(function() {
alertPopup('Ошибка');
})
});
$('.cart-quantity').change(function () {
let id = $(this).attr('data-id');
let count = $(this).val();
$.ajax({
type: "POST",
url: '{{ path('cart-put-ajax') }}',
data: {
id: id,
count: count
},
success: function (data) {
$('#cartDiv').html(data.cartHtml);
$('#cartItems').html(data.itemsHtml);
initCartItems();
prepareProductBlockCount($('#cartItems'));
}
}).fail(function() {
alertPopup('Ошибка');
})
});
$('.cart-delete').click(function () {
let button = $(this);
let id = button.attr('data-id');
button.attr('disabled', 'disabled');
$.ajax({
type: "POST",
url: '{{ path('cart-delete-ajax') }}',
data: {
id: id
},
success: function (data) {
$('#cartDiv').html(data.cartHtml);
$('#cartItems').html(data.itemsHtml);
initCartItems();
prepareProductBlockCount($('#cartItems'));
}
}).fail(function() {
alertPopup('Ошибка');
}).always(function() {
button.removeAttr('disabled');
});
return false;
});
$('#draftSave').click(function () {
let button = $(this);
button.attr('disabled', 'disabled');
$.ajax({
type: "POST",
url: '{{ path('draft-save-ajax') }}',
success: function (data) {
alertPopup('Черновик сохранен');
}
}).fail(function() {
alertPopup('Ошибка');
}).always(function() {
button.removeAttr('disabled');
});
return false;
});
$('#clearCart').click(function () {
let button = $(this);
button.attr('disabled', 'disabled');
$.ajax({
type: "POST",
url: '{{ path('cart-clear-ajax') }}',
success: function (data) {
$('#cartDiv').html(data.cartHtml);
$('#cartItems').html(data.itemsHtml);
initCartItems();
prepareProductBlockCount($('#cartItems'));
}
}).fail(function() {
alertPopup('Ошибка');
}).always(function() {
button.removeAttr('disabled');
});
return false;
});
$('#cartLoadRetail').click(function () {
let button = $(this);
button.attr('disabled', 'disabled');
$.ajax({
type: "POST",
url: '{{ path('cart-load-retail-ajax') }}',
success: function (data) {
$('#cartDiv').html(data.cartHtml);
$('#cartItems').html(data.itemsHtml);
initCartItems();
prepareProductBlockCount($('#cartItems'));
}
}).fail(function() {
alertPopup('Ошибка');
}).always(function() {
button.removeAttr('disabled');
});
return false;
});
}
initCartItems();
{% if app.request.query.get('changed') %}
alertPopup('Состав корзины был актуализирован в соответствии с доступными остатками');
{% endif %}
{% if app.request.query.get('notInStock') %}
alertPopup('На складе нет нужного количества товаров');
{% endif %}
{% if app.request.query.get('notValid') %}
alertPopup('Для приема заказа недостаточно информации. Просим Вас обратиться к Вашему менеджеру');
{% endif %}
</script>
{% endblock %}