Престашоп: изменение способа доставки в админке

Престашоп: изменение способа доставки в админке

Воз­ник­ла необ­хо­ди­мость редак­ти­ро­ва­ния в админ­ке Пре­ста­шо­па спо­со­ба достав­ки. Быст­рое реше­ние с пря­мым редак­ти­ро­ва­ни­ем фай­лов (без моду­ля или созда­ния overrides).

файл \adminXXX\themes\default\template\controllers\orders_shipping.tpl

Было:

<td>{dateFormat date=$line.date_add full=true}</td>
    <td>{$line.type}</td>
    <td>{$line.carrier_name}</td>

Ста­ло:

<td>{dateFormat date=$line.date_add full=true}</td>
    <td>{$line.type}</td>
    {*<td>{$line.carrier_name}</td>*}
    <td>
     <form action='{$smarty.server.REQUEST_URI}' name='wagood_newdeliverymethodform' method="post">
      {*$line.id_carrier} {$line.carrier_name*}
      <select name="delivery_method" class="delivery_method">
       {foreach from=$delivery_methods item=delivery_method}
        <option value="{$delivery_method.id_carrier}" {if $line.id_carrier == $delivery_method.id_carrier}selected{/if}>{$delivery_method.name}</option>
       {/foreach}
      </select>
      <input type="submit" name="wagood_newdeliverymethodsubmit" class="btn btn-default" value="Ok">
     </form>
</td>

файл \controllers\admin\AdminOrdersController.php

Было:

if (Tools::isSubmit('submitShippingNumber') && isset($order))

Ста­ло:

if (Tools::isSubmit('wagood_newdeliverymethodsubmit') && isset($order))
  {
   $order_carrier = new OrderCarrier((int)$order->getIdOrderCarrier());
   if (!Validate::isLoadedObject($order_carrier))
    $this->errors[] = Tools::displayError('The order carrier ID is invalid.');
   else {
    $order->id_carrier = (int)Tools::getValue('delivery_method');
    $order->update();
    $order_carrier->id_carrier = (int)Tools::getValue('delivery_method');
    $order_carrier->update();
   }
  }
  elseif (Tools::isSubmit('submitShippingNumber') && isset($order))

Поделиться / сохранить

Comments