Здравствуйте.
В этом случае сделайте откат шаблона(так как большинство изменений идут на кнопки) и сам шаблон Быстрого заказа присутствует у вас до изменений по моей инструкции.
Далее зайдите в шаблон Корзина - в самом конце вставьте:
<div id="globalOrder" style="display: none">
<span class="content-loading"></span>
<div id="OrderAjaxBlock" style="display:none">
<!-- Сюда грузится форма оформления быстрого заказа -->
</div>
</div>
</div>
далее найдите:
<div class="right"><button class="whtblue" type="submit" name="next_step">Заказать на: {% FOR cart_sum %}{cart_sum.NOW_WITH_DISCOUNT | money_format}{% ENDFOR %}</button></div>
замените на:
<div class="right"><button id="startOrder" class="whtblue" type="submit" name="next_step">Заказать на: {% FOR cart_sum %}{cart_sum.NOW_WITH_DISCOUNT | money_format}{% ENDFOR %}</button></div>
Далее зайдите в шаблон main.js - в самом конце вставьте:
// Функция быстрого оформления заказа в корзине
$(document).ready(function(){
// Вызов функции быстрого заказа в корзине
$('#startOrder').live('click', function() {
startOrder();
return false;
});
});
function startOrder(){
var globalOrder = $('#globalOrder');
var closeOrder = $('#closeOrder'); // объект кнопки отмены заказа
var textCloseOrder = '#closeOrder';
// Если форма уже открыта то ничего не делаем.
if (globalOrder.css('display') != 'none') {
// Если блок с формой заказа не скрыт то выходим из функции
return false;
}
//объект блока куда будет выводиться форма быстрого заказа
var OrderAjaxBlock = $('#OrderAjaxBlock');
// объект кнопки "Заказать"
var buttonStartOrder = $('#startOrder');
//объект блока с ajax анимацией
var ajaxLoaderQuickOrder = $('.content-loading');
var urlQuickForm = '/cart/add'; // адрес страницы с формой
// данные которые отарвятся на сервер чтобы получить только форму быстрого заказа без нижней части и верхней части сайта
var quickFormData = [
{name: 'ajax_q', value: 1},
{name: 'fast_order', value: 1}
];
// Скрываем кнопку "Заказать"
buttonStartOrder.hide();
// Отключаем возможность редактирования формы
var cartTable = $('.cartTable');
// открываем общий, глобальный блок
globalOrder.show();
$('html, body').delay(400).animate({scrollTop : jQuery('#globalOrder').offset().top - 100}, 800);
// включаем gif анимацию загрузки
ajaxLoaderQuickOrder.show('slow');
$.ajax({
type: "POST",
cache: false,
url: urlQuickForm,
data: quickFormData,
success: function(data) {
OrderAjaxBlock.html($(data).find('.quickformfast').wrap('<div></div>').html());
// скрываем блок с анимацией
ajaxLoaderQuickOrder.hide();
// раскрываем блок с формаой
OrderAjaxBlock.show('slow');
// удалим обработчик события на кнопке отмена
closeOrder.css('display','block');
cartTable.toggleClass('disable');
q = cartTable.find('.cartqty');
if(q.attr('disabled') == true){q.attr('disabled',false)}else{q.attr('disabled',true)}
$('.cart-info').live('click', textCloseOrder, function() {
//Скрываем блок оформления заказа
ajaxLoaderQuickOrder.hide('fast');
OrderAjaxBlock.hide('fast');
globalOrder.hide('fast');
closeOrder.css('display','none'); // Скрываем кнопку "Отменить"
buttonStartOrder.css('display','block'); // Возврощаем кнопку "Заказать"
// Включаем возможность редактирования формы
cartTable.toggleClass('disable');
if(q.attr('disabled') == true){q.attr('disabled',false)}else{q.attr('disabled',true)}
return false;
});
}
});
return false;
}
В самом начале шаблона Быстрый заказ вставьте:
<div>
<div class="quickformfast">
в самом конце:
</div></div>