Jump to content

Edit History

CatZeyeS

CatZeyeS

Checking the whole error log again, I guess the important part is directly at the beginning:

Argument #1 ($legacyOption) must be of type array, null given in /mnt/web021/e3/85/51320785/htdocs/catzeyes/store/src/Core/Payment/PaymentOption.php:329
 

So, 'convertLegacyOption()' expects an array but receives "null"

 

Checking the PaymentOption.php at line 329 and following I can see these lines:

 

    public static function convertLegacyOption(array $legacyOption)
    {
        if (!$legacyOption) {
            return;
        }

        if (array_key_exists('cta_text', $legacyOption)) {
            $legacyOption = [$legacyOption];
        }

        $newOptions = [];

        $defaults = [
            'additionalInformation' => null,
            'action' => null,
            'form' => null,
            'method' => null,
            'inputs' => [],
            'logo' => null,
        ];

        foreach ($legacyOption as $option) {
            $option = array_merge($defaults, $option);

            $newOption = new self();
            $newOption->setCallToActionText($option['cta_text'])
                ->setAdditionalInformation($option['additionalInformation'])
                ->setAction($option['action'])
                ->setForm($option['form'])
                ->setInputs($option['inputs'])
                ->setLogo($option['logo']);

            $newOptions[] = $newOption;
        }

        return $newOptions;
    }
 

So as much as I get it, at the beginning of this

if (!$legacyOption) {
    return;
}
 if legacyoption is empty or null this method is called upon without an explicit return value.

So much for the theory. Then again, I'm no coder - even less one of the people that coded prestashop.

What I'm asking for is a solution for this: which settings do I have to set inside prestashop for this error to disappear?

 

Thank you in advance :)

(annotation: Being a Servicedesk guy myself I can appreciate a "I've picked up your request and escalated it, please be paitient for X days until your issue can be adressed" ... :) )

CatZeyeS

CatZeyeS

Checking the whole error log again, I guess the important part is directly at the beginning:

Argument #1 ($legacyOption) must be of type array, null given in /mnt/web021/e3/85/51320785/htdocs/catzeyes/store/src/Core/Payment/PaymentOption.php:329
 

So, 'convertLegacyOption()' expects an array but receives "null"

 

Checking the PaymentOption.php at line 329 and following I can see these lines:

 

    public static function convertLegacyOption(array $legacyOption)
    {
        if (!$legacyOption) {
            return;
        }

        if (array_key_exists('cta_text', $legacyOption)) {
            $legacyOption = [$legacyOption];
        }

        $newOptions = [];

        $defaults = [
            'additionalInformation' => null,
            'action' => null,
            'form' => null,
            'method' => null,
            'inputs' => [],
            'logo' => null,
        ];

        foreach ($legacyOption as $option) {
            $option = array_merge($defaults, $option);

            $newOption = new self();
            $newOption->setCallToActionText($option['cta_text'])
                ->setAdditionalInformation($option['additionalInformation'])
                ->setAction($option['action'])
                ->setForm($option['form'])
                ->setInputs($option['inputs'])
                ->setLogo($option['logo']);

            $newOptions[] = $newOption;
        }

        return $newOptions;
    }
 

So as much as I get it, at the beginning of this

if (!$legacyOption) {
    return;
}
 if legacyoption is empty or null this method is called upon without an explicit return value.

So much for the theory. Then again, I'm no coder - even less one of the people that coded prestashop.

What I'm asking for is a solution for this: which settings do I have to set inside prestashop for this error to disappear?

 

Thank you in advance :)

×
×
  • Create New...