![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-shipping/Controller/Adminhtml/Order/Shipment/ |
<?php /** * * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Shipping\Controller\Adminhtml\Order\Shipment; use Magento\Backend\App\Action; class RemoveTrack extends \Magento\Backend\App\Action { /** * Authorization level of a basic admin session * * @see _isAllowed() */ const ADMIN_RESOURCE = 'Magento_Sales::shipment'; /** * @var \Magento\Shipping\Controller\Adminhtml\Order\ShipmentLoader */ protected $shipmentLoader; /** * @param Action\Context $context * @param \Magento\Shipping\Controller\Adminhtml\Order\ShipmentLoader $shipmentLoader */ public function __construct( Action\Context $context, \Magento\Shipping\Controller\Adminhtml\Order\ShipmentLoader $shipmentLoader ) { $this->shipmentLoader = $shipmentLoader; parent::__construct($context); } /** * Remove tracking number from shipment * * @return void */ public function execute() { $trackId = $this->getRequest()->getParam('track_id'); /** @var \Magento\Sales\Model\Order\Shipment\Track $track */ $track = $this->_objectManager->create(\Magento\Sales\Model\Order\Shipment\Track::class)->load($trackId); if ($track->getId()) { try { $this->shipmentLoader->setOrderId($this->getRequest()->getParam('order_id')); $this->shipmentLoader->setShipmentId($this->getRequest()->getParam('shipment_id')); $this->shipmentLoader->setShipment($this->getRequest()->getParam('shipment')); $this->shipmentLoader->setTracking($this->getRequest()->getParam('tracking')); $shipment = $this->shipmentLoader->load(); if ($shipment) { $track->delete(); $this->_view->loadLayout(); $this->_view->getPage()->getConfig()->getTitle()->prepend(__('Shipments')); $response = $this->_view->getLayout()->getBlock('shipment_tracking')->toHtml(); } else { $response = [ 'error' => true, 'message' => __('We can\'t initialize shipment for delete tracking number.'), ]; } } catch (\Exception $e) { $response = ['error' => true, 'message' => __('We can\'t delete tracking number.')]; } } else { $response = [ 'error' => true, 'message' => __('We can\'t load track with retrieving identifier right now.') ]; } if (is_array($response)) { $response = $this->_objectManager->get(\Magento\Framework\Json\Helper\Data::class)->jsonEncode($response); $this->getResponse()->representJson($response); } else { $this->getResponse()->setBody($response); } } }