Spamworldpro Mini Shell
Spamworldpro


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/extmag/shiplab/Controller/Adminhtml/Pickup/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/vendor/extmag/shiplab/Controller/Adminhtml/Pickup/Create.php
<?php
/**
 * Copyright © Extmag. All rights reserved.
 */

namespace Extmag\Shiplab\Controller\Adminhtml\Pickup;

use Extmag\Shiplab\Controller\Adminhtml\Pickup;
use Extmag\Shiplab\Model\ResourceModel\Label\Collection;

class Create extends Pickup
{
    /**
     * Authorization level of a basic admin session
     *
     * @see _isAllowed()
     */
    public const ADMIN_RESOURCE = 'Extmag_Shiplab::shiplab_pickup_save';

    public function execute()
    {
        $selectedIds = $this->getRequest()->getParam('selected');
        $namespace = $this->getRequest()->getParam('namespace');
        $carrierCode = $this->getRequest()->getParam('carrier_code');
        /**
         * @var Collection $collection
         */
        $collection = $this->labelCollectionFactory->create();
        $collection->addFieldToFilter('status', 1)
            ->addFieldToFilter('type_direction', 'shipment');
        if (!empty($carrierCode)) {
            $collection->addFieldToFilter('carrier_code', $carrierCode);
        }

        if (!empty($selectedIds)) {
            if ($namespace == 'extmag_shiplab_label_listing') {
                $collection->addFieldToFilter('entity_id', ['in' => $selectedIds]);
            } else {
                if ($namespace == 'sales_order_grid') {
                    $collection->addFieldToFilter('order_id', ['in' => $selectedIds]);
                } else {
                    if ($namespace == 'sales_order_shipment_grid') {
                        $collection->addFieldToFilter('order_sub_type', 'shipment');
                        $collection->addFieldToFilter('order_sub_id', ['in' => $selectedIds]);
                    }
                }
            }
        }

        if ($collection->count() > 0) {
            $labelItems = [];
            foreach ($collection as $item) {
                $labelItems[$item->getCarrierCode()][] = $item;
            }

            foreach ($labelItems as $carrierCode => $labels) {
                $result = $this->pickup->makeDataAndSavePickup($carrierCode, $labels);
                if (empty($result['error'])) {
                    $this->messageManager->addSuccessMessage(__('Pickup was created for ' . strtoupper($carrierCode)));
                } else {
                    $this->messageManager->addErrorMessage(
                        __('Pickup was not created for ' . strtoupper($carrierCode))
                    );
                }
            }
        } else {
            $this->messageManager->addErrorMessage(__('No suitable labels for pickup'));
        }

        return $this->resultRedirectFactory->create()->setRefererOrBaseUrl();
    }
}

Spamworldpro Mini