HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/shoetique/wp-content/plugins/wp-all-export-pro/src/App/Field/Shipping.php
<?php

namespace Wpae\App\Field;


class Shipping extends Field
{
    const SECTION = 'shipping';

    public function getValue($snippetData)
    {
        $shippingData = $this->feed->getSectionFeedData(self::SECTION);

        if (isset($shippingData['includeAttributes']) && $shippingData['includeAttributes'] == 'include') {

            $shippingAttributes = [
                $this->replaceSnippetsInValue(isset($shippingData['shippingCountry']) ? $shippingData['shippingCountry'] : '', $snippetData),
                $this->replaceSnippetsInValue(isset($shippingData['shippingDeliveryArea']) ? $shippingData['shippingDeliveryArea'] : '', $snippetData),
                $this->replaceSnippetsInValue(isset($shippingData['shippingService']) ? $shippingData['shippingService'] : '', $snippetData),
                $this->shippingPrice($snippetData, $shippingData)
            ];

            return implode(':', $shippingAttributes);
        } else {
            return ':::' . $this->shippingPrice($snippetData, $shippingData) . '';
        }
    }

    public function getFieldName()
    {
        return 'shipping';
    }

    private function formatPrice($price)
    {
        $availabilityPriceData = $this->feed->getSectionFeedData('availabilityPrice');

        return number_format($price, 2) . '' . $availabilityPriceData['currency'];
    }

    /**
     * @param $snippetData
     * @param $shippingData
     * @return float|int|mixed|string
     */
    private function shippingPrice($snippetData, $shippingData)
    {
        if(!isset($shippingData['shippingPrice'])) {
            $shippingData['shippingPrice'] = '';
        }

        if(!isset($shippingData['adjustShippingPriceValue'])) {
            $shippingData['adjustShippingPriceValue'] = '';
        }

        if(!isset($shippingData['adjustShippingPrice'])) {
            $shippingData['adjustShippingPrice'] = false;
        }

        $price = $this->replaceSnippetsInValue($shippingData['shippingPrice'], $snippetData);

        if(isset($shippingData['adjustShippingPriceValue'])) {
            $adjustShippingPriceValue = $this->replaceSnippetsInValue($shippingData['adjustShippingPriceValue'], $snippetData);

            if ($shippingData['adjustShippingPrice'] && $shippingData['adjustPriceType'] == '%') {
                $price = $price * $adjustShippingPriceValue / 100;
            } else if ($shippingData['adjustShippingPrice'] && $shippingData['adjustPriceType'] == 'USD') {
                $price = $price + $adjustShippingPriceValue;
            }
        }

        if (is_numeric($price)) {
            return $this->formatPrice($price);
        } else {
            return $price;
        }
    }
}