Перейти к содержанию
zrishat

Модификация формы оформления заказа

Рекомендуемые сообщения

Где собирается

index.php?route=checkout/checkout

?

Хочу оставить только личные данные, без регистрации.

Ну и кнопку подтвердить.

Подключать дополнительный модуль не вариант, хочется разобраться, где и как все это собирается.

В checkout.tpl только как я понял js для перехода по пунктам.

версия опенкарта 1.5.5.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Собирается все в контроллере

/catalog/controller/checkout/checkout.php

Тплка - только выводит готовые данные. Купите за 30 долларов симплу, и не мучайтесь. Установка на ура, инструкция подробная, настроек миллион, ваши задачи решает с головой...

Если будете сами колупаться, проколупаетесь месяц. Потратите времени сколько... Вряд ли оно стоит меньше чем 30 бакинских.

  • +1 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поковырял ajax, понял, что ковыряю правильно.

Мне как раз надо было изменить отображение (checkout.tpl )

Сменил:

checkout/login

на

checkout/guest

Теперь как надо, но как вывести все пункты сразу? Чтобы не было анимации

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сократил до такого состояния, правда теперь при нажатии на кнопку продолжить не знаю как вывести checkout/success

чтобы заказ реально оформился

<script type="text/javascript">
$(document).ready(function() {
$.ajax({
 url: 'index.php?route=checkout/guest',
 dataType: 'html',
 success: function(html) {
  $('#payment-address .checkout-content').html(html);
},
 error: function(xhr, ajaxOptions, thrownError) {
  alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
 }
});
});
// Guest
$('#button-guest').live('click', function() {
$.ajax({
 url: 'index.php?route=checkout/guest/validate',
 type: 'post',
 data: $('#payment-address input[type=\'text\'], #payment-address input[type=\'checkbox\']:checked, #payment-address input[type=\'radio\']:checked, #payment-address input[type=\'hidden\'], #payment-address select'),
 dataType: 'json',
 beforeSend: function() {
  $('#button-guest').attr('disabled', true);
  $('#button-guest').after('<span class="wait"> <img src="catalog/view/theme/default/image/loading.gif" alt="" /></span>');
 },
 complete: function() {
  $('#button-guest').attr('disabled', false);
  $('.wait').remove();
 },  
 success: function(json) {
  $('.warning, .error').remove();

  if (json['redirect']) {
   location = json['redirect'];
  } else if (json['error']) {
   if (json['error']['warning']) {
 $('#payment-address .checkout-content').prepend('<div class="warning" style="display: none;">' + json['error']['warning'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');

 $('.warning').fadeIn('slow');
   }

   if (json['error']['firstname']) {
 $('#payment-address input[name=\'firstname\'] + br').after('<span class="error">' + json['error']['firstname'] + '</span>');
   }

   if (json['error']['lastname']) {
 $('#payment-address input[name=\'lastname\'] + br').after('<span class="error">' + json['error']['lastname'] + '</span>');
   }

   if (json['error']['email']) {
 $('#payment-address input[name=\'email\'] + br').after('<span class="error">' + json['error']['email'] + '</span>');
   }

   if (json['error']['telephone']) {
 $('#payment-address input[name=\'telephone\'] + br').after('<span class="error">' + json['error']['telephone'] + '</span>');
   }

   if (json['error']['company_id']) {
 $('#payment-address input[name=\'company_id\'] + br').after('<span class="error">' + json['error']['company_id'] + '</span>');
   }

   if (json['error']['tax_id']) {
 $('#payment-address input[name=\'tax_id\'] + br').after('<span class="error">' + json['error']['tax_id'] + '</span>');
   }

   if (json['error']['address_1']) {
 $('#payment-address input[name=\'address_1\'] + br').after('<span class="error">' + json['error']['address_1'] + '</span>');
   }

   if (json['error']['city']) {
 $('#payment-address input[name=\'city\'] + br').after('<span class="error">' + json['error']['city'] + '</span>');
   }

   if (json['error']['postcode']) {
 $('#payment-address input[name=\'postcode\'] + br').after('<span class="error">' + json['error']['postcode'] + '</span>');
   }

   if (json['error']['country']) {
 $('#payment-address select[name=\'country_id\'] + br').after('<span class="error">' + json['error']['country'] + '</span>');
   }

   if (json['error']['zone']) {
 $('#payment-address select[name=\'zone_id\'] + br').after('<span class="error">' + json['error']['zone'] + '</span>');
   }
  } else {
   alert("test");
   /*
   $.ajax({
 url: 'index.php?route=checkout/confirm',
 dataType: 'html',
 success: function(html) {
  $('#payment-method .checkout-content').html(html);
  //$('#payment-address .checkout-content').slideUp('slow');
  $('#payment-method .checkout-content').slideDown('slow');
  $('#payment-address .checkout-heading a').remove();
  $('#payment-method .checkout-heading a').remove();
  $('#payment-address .checkout-heading').append('<a><?php echo $text_modify; ?></a>');
 },
 error: function(xhr, ajaxOptions, thrownError) {
  alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
 }
   });
   */
  } 
 },
 error: function(xhr, ajaxOptions, thrownError) {
  alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
 }
});
});
</script>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.