SUPEE-9767 V2, выпущенный 12 июля 2017 года, устраняет ошибки и проблемы, выявленные сообществом после выпуска версии 1 обновления безопасности SUPEE-9767 (Magento CE 1.9.3.3) 31 мая 2017 года.
В частности, в SUPEE-9767 V2 были внесены следующие изменения (Magento CE 1.9.3.4)
Общие исправления
- восстановлен отсутствующий
strip_tags
функционал в кассе JavaScript.
- изменено, как Magento проверяет ключи формы во время общего пятиэтапного процесса оформления заказа. Ранее регистрация клиента не выполнялась во время стандартной обработки заказа, если была включена аутентификация с помощью ключа формы.
- Magento теперь отображает
Allow_symlinks
сообщение в области сообщений администратора, как и ожидалось.
- Magento теперь сохраняет фоновую прозрачность загруженных изображений, как и ожидалось. Ранее прозрачность терялась после загрузки изображения, что приводило к невозможности использования изображения. Теперь вы можете использовать «Оформить заказ с несколькими адресами», если проверка формы заказа включена.
Установка
- Теперь вы можете установить расширение как часть установки пакета.
- Параметр «Разрешить символические ссылки» теперь отключен во время процессов установки или обновления. Ранее, когда вы изменили для параметра Разрешить символические ссылки значение true в базе данных перед обновлением, а затем установили исправление, этот параметр оставался включенным, но вы больше не могли получить к нему доступ с панели администратора.
Если после применения SUPEE-9767 V1 вы столкнулись с какой-либо из этих проблем, вам следует применить это обновление, чтобы устранить проблемы.
Примечание. Этот патч заменяет SUPEE-9767. Ранее установленное исправление SUPEE-9767 необходимо отменить перед установкой этой версии.
Чтобы вернуть патч :
- Перейдите в каталог установки Magento.
- Введите следующую команду как пользователь с достаточными правами для записи в файлы Magento (обычно это пользователь веб-сервера или пользователь root):
sh patch-file-name.sh -R
Изменения шаблона
Патч добавляет <?php echo $this->getBlockHtml("formkey") ?>
к следующим файлам шаблонов:
app/design/frontend/rwd/default/template/checkout/multishipping/addresses.phtml
app/design/frontend/base/default/template/checkout/onepage/payment.phtml
app/design/frontend/rwd/default/template/checkout/onepage/payment.phtml
Symlinks
Параметр «Разрешить символические ссылки» теперь отключен во время процессов установки или обновления.
Если вы используете modman для управления расширениями Magento, убедитесь, что Allow Symlinks в admin не были сброшены в No после применения этого патча или обновления до Magento CE 1.9.3.4. Обновление удаляет панель конфигурации «Параметры шаблона» у администратора. Вы также можете включить символические ссылки с помощью n98-magerun, используяn98-magerun.phar dev:symlinks
Обновление: Подтверждено, если символические ссылки включены, этот патч отключит символические ссылки после установки.
Скачать
Патч и исходный код Magento CE 1.9.3.4 можно загрузить по адресу https://magento.com/tech-resources/download - нажмите на вкладку архива релиза и прокрутите вниз для загрузки Magento CE 1.X.
Diff File
Вот файл сравнения исходного кода для Magento CE 1.9.3.4 по сравнению с Magento CE 1.9.3.3
Only in magento1934/app/code/core/Mage/Adminhtml/Model/System/Config/Backend: Symlink.php
diff -r magento1934/app/code/core/Mage/Checkout/controllers/OnepageController.php magento1933/app/code/core/Mage/Checkout/controllers/OnepageController.php
352a353,356
> if ($this->isFormkeyValidationOnCheckoutEnabled() && !$this->_validateFormKey()) {
> return;
> }
>
diff -r magento1934/app/code/core/Mage/Core/etc/config.xml magento1933/app/code/core/Mage/Core/etc/config.xml
31c31
< <version>1.6.0.7</version>
---
> <version>1.6.0.6</version>
diff -r magento1934/app/code/core/Mage/Core/etc/system.xml magento1933/app/code/core/Mage/Core/etc/system.xml
600,620d599
< <template translate="label">
< <label>Template Settings</label>
< <frontend_type>text</frontend_type>
< <sort_order>25</sort_order>
< <show_in_default>0</show_in_default>
< <show_in_website>0</show_in_website>
< <show_in_store>0</show_in_store>
< <fields>
< <allow_symlink translate="label comment">
< <label>Allow Symlinks</label>
< <frontend_type>select</frontend_type>
< <source_model>adminhtml/system_config_source_yesno</source_model>
< <backend_model>adminhtml/system_config_backend_symlink</backend_model>
< <sort_order>10</sort_order>
< <show_in_default>0</show_in_default>
< <show_in_website>0</show_in_website>
< <show_in_store>0</show_in_store>
< <comment>Warning! Enabling this feature is not recommended on production environments because it represents a potential security risk.</comment>
< </allow_symlink>
< </fields>
< </template>
diff -r magento1934/app/code/core/Mage/Core/Model/File/Validator/Image.php magento1933/app/code/core/Mage/Core/Model/File/Validator/Image.php
98d97
< imagealphablending($img, false);
100,101d98
< imagesavealpha($img, true);
<
104,117d100
< $transparencyIndex = imagecolortransparent($image);
< if ($transparencyIndex >= 0) {
< imagecolortransparent($img, $transparencyIndex);
< for ($y = 0; $y < $imageHeight; ++$y) {
< for ($x = 0; $x < $imageWidth; ++$x) {
< if (((imagecolorat($img, $x, $y) >> 24) & 0x7F)) {
< imagesetpixel($img, $x, $y, $transparencyIndex);
< }
< }
< }
< }
< if (!imageistruecolor($image)) {
< imagetruecolortopalette($img, false, imagecolorstotal($image));
< }
127c110
< break;
---
> return;
129d111
<
Only in magento1934/app/code/core/Mage/Core/sql/core_setup: upgrade-1.6.0.6-1.6.0.7.php
diff -r magento1934/app/design/adminhtml/default/default/layout/main.xml magento1933/app/design/adminhtml/default/default/layout/main.xml
122c122
< <block type="adminhtml/checkout_formkey" name="checkout_formkey" as="checkout_formkey" template="notification/formkey.phtml"/>
---
> <block type="adminhtml/checkout_formkey" name="checkout_formkey" as="checkout_formkey" template="notification/formkey.phtml"/></block>
124d123
< </block>
diff -r magento1934/app/design/adminhtml/default/default/template/oauth/authorize/head-simple.phtml magento1933/app/design/adminhtml/default/default/template/oauth/authorize/head-simple.phtml
45c45
< var SKIN_URL = '<?php echo $this->jsQuoteEscape($this->getSkinUrl()) ?>';
---
> var SKIN_URL = '<?php echo $this->getSkinUrl() ?>';
diff -r magento1934/app/design/frontend/base/default/template/checkout/multishipping/addresses.phtml magento1933/app/design/frontend/base/default/template/checkout/multishipping/addresses.phtml
87d86
< <?php echo $this->getBlockHtml("formkey") ?>
diff -r magento1934/app/design/frontend/base/default/template/checkout/onepage/payment.phtml magento1933/app/design/frontend/base/default/template/checkout/onepage/payment.phtml
38a39
> <?php echo $this->getBlockHtml('formkey') ?>
40d40
< <?php echo $this->getBlockHtml('formkey') ?>
diff -r magento1934/app/design/frontend/rwd/default/template/checkout/onepage/payment.phtml magento1933/app/design/frontend/rwd/default/template/checkout/onepage/payment.phtml
39a40
> <?php echo $this->getBlockHtml('formkey') ?>
41d41
< <?php echo $this->getBlockHtml('formkey') ?>
diff -r magento1934/app/Mage.php magento1933/app/Mage.php
174c174
< 'patch' => '4',
---
> 'patch' => '3',
diff -r magento1934/downloader/lib/Mage/Connect/Package.php magento1933/downloader/lib/Mage/Connect/Package.php
1131c1131
< 'error'=>"Invalid package name, allowed: [a-zA-Z0-9_+] chars"),
---
> 'error'=>"Invalid package name, allowed: [a-zA-Z0-9_-] chars"),
diff -r magento1934/downloader/lib/Mage/Connect/Validator.php magento1933/downloader/lib/Mage/Connect/Validator.php
340c340
< return preg_match("/^[a-zA-Z0-9_+]+$/i", $name);
---
> return preg_match("/^[a-zA-Z0-9_]+$/i", $name);
diff -r magento1934/downloader/Maged/Connect.php magento1933/downloader/Maged/Connect.php
409,411c409
< </style>
< <script type="text/javascript" src="js/prototype.js"></script>
< </head><body>
---
> </style></head><body>
diff -r magento1934/downloader/Maged/Controller.php magento1933/downloader/Maged/Controller.php
1063c1063
< 'patch' => '4',
---
> 'patch' => '3',
diff -r magento1934/lib/Mage/Connect/Package.php magento1933/lib/Mage/Connect/Package.php
1310c1310
< 'error'=>"Invalid package name, allowed: [a-zA-Z0-9_+] chars"),
---
> 'error'=>"Invalid package name, allowed: [a-zA-Z0-9_-] chars"),
diff -r magento1934/lib/Mage/Connect/Validator.php magento1933/lib/Mage/Connect/Validator.php
321c321
< return preg_match("/^[a-zA-Z0-9_+]+$/i", $name);
---
> return preg_match("/^[a-zA-Z0-9_-]+$/i", $name);
diff -r magento1934/RELEASE_NOTES.txt magento1933/RELEASE_NOTES.txt
1,10d0
< ==== 1.9.3.4 ====
Вот официальные примечания к выпуску Magento CE 1.9.3.4