* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ class PdfOrderReturnControllerCore extends FrontController { /** @var string */ public $php_self = 'pdf-order-return'; /** @var bool */ protected $display_header = false; /** @var bool */ protected $display_footer = false; /** * @var OrderReturn|null */ public $orderReturn; public function postProcess() { $from_admin = (Tools::getValue('adtoken') == Tools::getAdminToken('AdminReturn' . (int) Tab::getIdFromClassName('AdminReturn') . (int) Tools::getValue('id_employee'))); if (!$from_admin && !$this->context->customer->isLogged()) { Tools::redirect('index.php?controller=authentication&back=order-follow'); } if (Tools::getValue('id_order_return') && Validate::isUnsignedId(Tools::getValue('id_order_return'))) { $this->orderReturn = new OrderReturn(Tools::getValue('id_order_return')); } if (!isset($this->orderReturn) || !Validate::isLoadedObject($this->orderReturn)) { die($this->trans('Order return not found.', [], 'Shop.Notifications.Error')); } elseif (!$from_admin && $this->orderReturn->id_customer != $this->context->customer->id) { die($this->trans('Order return not found.', [], 'Shop.Notifications.Error')); } elseif ($this->orderReturn->state < 2) { die($this->trans('Order return not confirmed.', [], 'Shop.Notifications.Error')); } } /** * @return bool|void * * @throws PrestaShopException */ public function display() { $pdf = new PDF($this->orderReturn, PDF::TEMPLATE_ORDER_RETURN, $this->context->smarty); $pdf->render(); } }