[-] FO : Fix bug #PSCFV-9624 try 302 redirect from old 1.4 images format to new _default before 404.gif

This commit is contained in:
gRoussac
2013-08-12 16:44:25 +02:00
parent 7ec55106ce
commit 30d9ebe68f

View File

@@ -40,6 +40,20 @@ class PageNotFoundControllerCore extends FrontController
if (in_array(Tools::strtolower(substr($_SERVER['REQUEST_URI'], -3)), array('png', 'jpg', 'gif')))
{
if ((bool)Configuration::get('PS_REWRITING_SETTINGS'))
preg_match('¤([0-9]+)(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/(.+)\.(png|jpg|gif)$¤', $_SERVER['REQUEST_URI'], $matches);
if ((!isset($matches[2]) || empty($matches[2])) && !(bool)Configuration::get('PS_REWRITING_SETTINGS'))
preg_match('¤/([0-9]+)(\-[_a-zA-Z]*)\.(png|jpg|gif)$¤', $_SERVER['REQUEST_URI'], $matches);
if (is_array($matches) && !empty($matches[2]) && Tools::strtolower(substr($matches[2], -8)) != '_default' && is_numeric($matches[1]))
{
$matches[2] = substr($matches[2], 1, Tools::strlen($matches[2])).'_default';
if (!isset($matches[4]))
$matches[4] = '';
header('Location: '.$this->context->link->getImageLink($matches[4], $matches[1], $matches[2]), true, 302);
exit;
}
header('Content-Type: image/gif');
readfile(_PS_IMG_DIR_.'404.gif');
exit;