как при оформлении покупки на одной странице перенести поле адреса?

Тема в разделе "PrestaShop", создана пользователем Olen Lja, 6 июн 2016.

  1. Olen Lja

    Olen Lja

    Регистрация:
    21 янв 2016
    Сообщения:
    5
    Симпатии:
    1
    Как при оформлении покупки на одной странице перенести поле адреса и имени&фамилии для доставки из order-opc-new-account.tpl в раздел доставки order-carrier.tpl? Необходимо, что бы эти адрес и имя&фамилия для доставки были после выбора способа доставки.
    В каких классах и контроллерах менять и где? Никак не получается [​IMG] , подскажите советом.
     
  2. sergiykhd

    sergiykhd

    Регистрация:
    22 фев 2013
    Сообщения:
    35
    Симпатии:
    1
    дело в том, что система определяет перевозчика исходя из адреса доставки (смотрите \classes\order order.php). Возможно стоит посмотреть модули типа onepagecheckoutps.
     
  3. Olen Lja

    Olen Lja

    Регистрация:
    21 янв 2016
    Сообщения:
    5
    Симпатии:
    1
    Я хочу перенести только поле address1 и имяфамилиюдля инвойсва, а определяет перевозчика вроде по стране.
    мне бы возможно подошёл, но на сайте мне не хватает сообщений, что скачать.
     
  4. sergiykhd

    sergiykhd

    Регистрация:
    22 фев 2013
    Сообщения:
    35
    Симпатии:
    1
    попросите автора поста написать в личку
     
  5. Olen Lja

    Olen Lja

    Регистрация:
    21 янв 2016
    Сообщения:
    5
    Симпатии:
    1
    Окончательно я запуталась.
    Добавила поле address1 в order-carrier.tpl .
    Теперь, я так понимаю мне нужно его получить в OrderOpcController.php в init() в ветке

    PHP:
                            case 'updateTOSStatusAndGetPayments':
                                if (
    Tools::isSubmit('checked')) {
                                   
                                    
    $address1 Tools::getValue('address1');
                                    
    $tmp_addr = new Address($this->context->cart->id_address_delivery);
                                    if (
    trim($address1) != "")
                                        
    $tmp_addr->address1 $address1;
                                    
    $tmp_addr->update();
                                   
                                   
                                   
                                    
    $this->context->cookie->checkedTOS = (int)Tools::getValue('checked');
                                    
    $this->ajaxDie(Tools::jsonEncode(array(
                                        
    'HOOK_TOP_PAYMENT' => Hook::exec('displayPaymentTop'),
                                        
    'HOOK_PAYMENT' => $this->_getPaymentMethods()
                                    )));
                                }
                                break;

    и обновить значение в уже ранее сохранённом адрессе (выше написала изменённый код). Но не обновляет адрес!
    Что я не так делаю?
    --- Добавлено, 7 июн 2016 ---
    За такое тут могут забанить :(