[-] CORE : fixed bug #PSCFV-4754 Image sizes are the same for all shops and themes
This commit is contained in:
+31
-12
@@ -78,6 +78,8 @@ class ImageTypeCore extends ObjectModel
|
||||
* @var array Image types cache
|
||||
*/
|
||||
protected static $images_types_cache = array();
|
||||
|
||||
protected static $images_types_name_cache = array();
|
||||
|
||||
protected $webserviceParameters = array();
|
||||
|
||||
@@ -87,20 +89,17 @@ class ImageTypeCore extends ObjectModel
|
||||
* @param string|null Image type
|
||||
* @return array Image type definitions
|
||||
*/
|
||||
public static function getImagesTypes($type = null, $id_theme = false)
|
||||
public static function getImagesTypes($type = null)
|
||||
{
|
||||
if (!isset(self::$images_types_cache[$type.($id_theme ? '-'.$id_theme : '')]))
|
||||
if (!isset(self::$images_types_cache[$type]))
|
||||
{
|
||||
$where = 'WHERE 1';
|
||||
if ($id_theme)
|
||||
$where .= ' AND id_theme='.(int)$id_theme;
|
||||
if (!empty($type))
|
||||
$where .= ' AND '.pSQL($type).' = 1 ';
|
||||
|
||||
$query = 'SELECT * FROM `'._DB_PREFIX_.'image_type`'.$where.' ORDER BY `name` ASC';
|
||||
self::$images_types_cache[$type] = Db::getInstance()->executeS($query);
|
||||
}
|
||||
|
||||
return self::$images_types_cache[$type];
|
||||
}
|
||||
|
||||
@@ -116,9 +115,9 @@ class ImageTypeCore extends ObjectModel
|
||||
die(Tools::displayError());
|
||||
|
||||
Db::getInstance()->executeS('
|
||||
SELECT `id_image_type`
|
||||
FROM `'._DB_PREFIX_.'image_type`
|
||||
WHERE `name` = \''.pSQL($typeName).'\'');
|
||||
SELECT `id_image_type`
|
||||
FROM `'._DB_PREFIX_.'image_type`
|
||||
WHERE `name` = \''.pSQL($typeName).'\'');
|
||||
|
||||
return Db::getInstance()->NumRows();
|
||||
}
|
||||
@@ -128,9 +127,29 @@ class ImageTypeCore extends ObjectModel
|
||||
* @param string $name
|
||||
* @param string $type
|
||||
*/
|
||||
public static function getByNameNType($name, $type)
|
||||
public static function getByNameNType($name, $type = null)
|
||||
{
|
||||
return Db::getInstance()->getRow('SELECT `id_image_type`, `name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`, `scenes` FROM `'._DB_PREFIX_.'image_type` WHERE `name` = \''.pSQL($name).'\' AND `'.pSQL($type).'` = 1');
|
||||
if (!isset(self::$images_types_name_cache[$name.'_'.$type]))
|
||||
{
|
||||
self::$images_types_name_cache[$name.'_'.$type] = Db::getInstance()->getRow('
|
||||
SELECT `id_image_type`, `name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`, `scenes`
|
||||
FROM `'._DB_PREFIX_.'image_type`
|
||||
WHERE `name` = \''.pSQL($name).'\' '.(!is_null($type) ? 'AND `'.pSQL($type).'` = 1' : ''));
|
||||
}
|
||||
return self::$images_types_name_cache[$name.'_'.$type];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static function getFormatedName($name)
|
||||
{
|
||||
$theme_name = Context::getContext()->shop->theme_name;
|
||||
$name_without_theme_name = str_replace(array('_'.$theme_name, $theme_name.'_'), '', $name);
|
||||
//check if the theme name is already in $name if yes only return $name
|
||||
if (strstr($name, $theme_name) && self::getByNameNType($name))
|
||||
return $name;
|
||||
else if (self::getByNameNType($name_without_theme_name.'_'.$theme_name))
|
||||
return $name_without_theme_name.'_'.$theme_name;
|
||||
else
|
||||
return $theme_name.'_'.$name_without_theme_name;
|
||||
}
|
||||
|
||||
}
|
||||
+11
-11
@@ -516,11 +516,11 @@ class LanguageCore extends ObjectModel
|
||||
// delete images
|
||||
$files_copy = array(
|
||||
'/en.jpg',
|
||||
'/en-default-thickbox_default.jpg',
|
||||
'/en-default-home_default.jpg',
|
||||
'/en-default-large_default.jpg',
|
||||
'/en-default-medium_default.jpg',
|
||||
'/en-default-small_default.jpg'
|
||||
'/en-default-'.ImageType::getFormatedName('thickbox').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('home').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('large').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('medium').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('small').'.jpg'
|
||||
);
|
||||
$tos = array(_PS_CAT_IMG_DIR_, _PS_MANU_IMG_DIR_, _PS_PROD_IMG_DIR_, _PS_SUPP_IMG_DIR_);
|
||||
foreach ($tos as $to)
|
||||
@@ -726,12 +726,12 @@ class LanguageCore extends ObjectModel
|
||||
|
||||
$files_copy = array(
|
||||
'/en.jpg',
|
||||
'/en-default-thickbox_default.jpg',
|
||||
'/en-default-home_default.jpg',
|
||||
'/en-default-large_default.jpg',
|
||||
'/en-default-medium_default.jpg',
|
||||
'/en-default-small_default.jpg',
|
||||
'/en-default-scene_default.jpg'
|
||||
'/en-default-'.ImageType::getFormatedName('thickbox').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('home').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('large').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('medium').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('small').'.jpg',
|
||||
'/en-default-'.ImageType::getFormatedName('scene').'.jpg'
|
||||
);
|
||||
foreach (array(_PS_CAT_IMG_DIR_, _PS_MANU_IMG_DIR_, _PS_PROD_IMG_DIR_, _PS_SUPP_IMG_DIR_) as $to)
|
||||
foreach ($files_copy as $file)
|
||||
|
||||
Reference in New Issue
Block a user