diff --git a/vendor/magento/module-captcha/Helper/Data.php b/vendor/magento/module-captcha/Helper/Data.php index 6d0340a3c9ed1..031453962cb7a 100644 --- a/vendor/magento/module-captcha/Helper/Data.php +++ b/vendor/magento/module-captcha/Helper/Data.php @@ -20,27 +20,27 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper /** * Used for "name" attribute of captcha's input field */ - const INPUT_NAME_FIELD_VALUE = 'captcha'; + public const INPUT_NAME_FIELD_VALUE = 'captcha'; /** * Always show captcha */ - const MODE_ALWAYS = 'always'; + public const MODE_ALWAYS = 'always'; /** * Show captcha only after certain number of unsuccessful attempts */ - const MODE_AFTER_FAIL = 'after_fail'; + public const MODE_AFTER_FAIL = 'after_fail'; /** * Captcha fonts path */ - const XML_PATH_CAPTCHA_FONTS = 'captcha/fonts'; + public const XML_PATH_CAPTCHA_FONTS = 'captcha/fonts'; /** * Default captcha type */ - const DEFAULT_CAPTCHA_TYPE = 'Zend'; + public const DEFAULT_CAPTCHA_TYPE = 'Zend'; /** * List uses Models of Captcha @@ -84,11 +84,12 @@ public function __construct( /** * Get Captcha * - * @param string $formId + * @param string|null $formId * @return \Magento\Captcha\Model\CaptchaInterface */ public function getCaptcha($formId) { + $formId = $formId ?? ''; if (!array_key_exists($formId, $this->_captcha)) { $captchaType = ucfirst($this->getConfig('type')); if (!$captchaType) { diff --git a/vendor/magento/module-captcha/Model/Customer/Plugin/AjaxLogin.php b/vendor/magento/module-captcha/Model/Customer/Plugin/AjaxLogin.php index 09f03f1da3190..e7b7f0b322c11 100644 --- a/vendor/magento/module-captcha/Model/Customer/Plugin/AjaxLogin.php +++ b/vendor/magento/module-captcha/Model/Customer/Plugin/AjaxLogin.php @@ -91,6 +91,10 @@ public function aroundExecute( $captchaString = $loginParams[$captchaInputName] ?? null; $loginFormId = $loginParams[$captchaFormIdField] ?? null; + if ($loginFormId === null) { + return $proceed(); + } + if (!in_array($loginFormId, $this->formIds) && $this->helper->getCaptcha($loginFormId)->isRequired($username)) { return $this->returnJsonError(__('Provided form does not exist')); } diff --git a/vendor/magento/module-catalog/Model/Category/DataProvider.php b/vendor/magento/module-catalog/Model/Category/DataProvider.php index 7ad7c58bfb4ad..2356e9b5a2695 100644 --- a/vendor/magento/module-catalog/Model/Category/DataProvider.php +++ b/vendor/magento/module-catalog/Model/Category/DataProvider.php @@ -416,7 +416,7 @@ public function getAttributesMeta(Type $entityType) $meta[$code][$metaName] = (bool)$meta[$code][$metaName]; } if ('frontend_input' === $origName) { - $meta[$code]['formElement'] = isset($this->formElement[$value]) + $meta[$code]['formElement'] = $value !== null && isset($this->formElement[$value]) ? $this->formElement[$value] : $value; } diff --git a/vendor/magento/framework/App/Config/ScopeCodeResolver.php b/vendor/magento/framework/App/Config/ScopeCodeResolver.php index c6b37b0e3fa64..192e3f32d1d28 100644 --- a/vendor/magento/framework/App/Config/ScopeCodeResolver.php +++ b/vendor/magento/framework/App/Config/ScopeCodeResolver.php @@ -40,7 +40,7 @@ public function __construct(ScopeResolverPool $scopeResolverPool) */ public function resolve($scopeType, $scopeCode) { - if (isset($scopeCode, $this->resolvedScopeCodes[$scopeType][$scopeCode])) { + if ($scopeCode !== null && isset($this->resolvedScopeCodes[$scopeType][$scopeCode])) { return $this->resolvedScopeCodes[$scopeType][$scopeCode]; } @@ -56,7 +56,7 @@ public function resolve($scopeType, $scopeCode) } if ($scopeCode === null) { - $scopeCode = $resolverScopeCode; + return $resolverScopeCode; } $this->resolvedScopeCodes[$scopeType][$scopeCode] = $resolverScopeCode; diff --git a/vendor/magento/framework/Setup/Mvc/MvcApplication.php b/vendor/magento/framework/Setup/Mvc/MvcApplication.php index 649a683c54fe1..c22246422491c 100644 --- a/vendor/magento/framework/Setup/Mvc/MvcApplication.php +++ b/vendor/magento/framework/Setup/Mvc/MvcApplication.php @@ -10,6 +10,7 @@ use Laminas\ServiceManager\ServiceManager; use Laminas\EventManager\EventManagerInterface; use Laminas\Stdlib\ArrayUtils; +use Laminas\Stdlib\Glob; /** * Native MVC Application that replicates Laminas\Mvc\Application functionality @@ -167,7 +168,7 @@ private static function loadAutoloadConfig(ServiceManager $serviceManager, array // Load global.php and local.php configurations from config_glob_paths if (isset($configuration['module_listener_options']['config_glob_paths'])) { foreach ($configuration['module_listener_options']['config_glob_paths'] as $globPath) { - $files = glob($globPath, GLOB_BRACE); + $files = Glob::glob($globPath, Glob::GLOB_BRACE); foreach ($files as $file) { if (is_readable($file)) { $autoloadConfig = include $file;