From 27eaed42bd7abe598a9baafeda04bb3c0ff221e4 Mon Sep 17 00:00:00 2001 From: Damien Metzger Date: Tue, 11 Dec 2012 11:16:56 +0100 Subject: [PATCH] [-] MO : fixed backslashes in homeslider #PSCFV-5664 --- classes/module/Module.php | 3 +++ modules/homeslider/config.xml | 6 ++--- modules/homeslider/homeslider.php | 14 ++++++------ modules/homeslider/homeslider.tpl | 2 +- modules/homeslider/upgrade/install-1.2.1.php | 24 ++++++++++++++++++++ 5 files changed, 38 insertions(+), 11 deletions(-) create mode 100644 modules/homeslider/upgrade/install-1.2.1.php diff --git a/classes/module/Module.php b/classes/module/Module.php index beced80e4..c1090d82c 100644 --- a/classes/module/Module.php +++ b/classes/module/Module.php @@ -31,6 +31,7 @@ abstract class ModuleCore /** @var float Version */ public $version; + public $database_version; /** * @since 1.5.0.1 @@ -175,6 +176,8 @@ abstract class ModuleCore } $this->local_path = _PS_MODULE_DIR_.$this->name.'/'; } + + $this->database_version = $this->version; } /** diff --git a/modules/homeslider/config.xml b/modules/homeslider/config.xml index cab3ae299..4e419f2f3 100644 --- a/modules/homeslider/config.xml +++ b/modules/homeslider/config.xml @@ -1,9 +1,9 @@ homeslider - - - + + + 1 diff --git a/modules/homeslider/homeslider.php b/modules/homeslider/homeslider.php index fd5505db2..eab72c816 100644 --- a/modules/homeslider/homeslider.php +++ b/modules/homeslider/homeslider.php @@ -43,7 +43,7 @@ class HomeSlider extends Module { $this->name = 'homeslider'; $this->tab = 'front_office_features'; - $this->version = '1.2'; + $this->version = '1.2.1'; $this->author = 'PrestaShop'; $this->need_instance = 0; $this->secure_key = Tools::encrypt($this->name); @@ -558,13 +558,13 @@ class HomeSlider extends Module foreach ($languages as $language) { if (Tools::getValue('title_'.$language['id_lang']) != '') - $slide->title[$language['id_lang']] = pSQL(Tools::getValue('title_'.$language['id_lang'])); + $slide->title[$language['id_lang']] = Tools::getValue('title_'.$language['id_lang']); if (Tools::getValue('url_'.$language['id_lang']) != '') - $slide->url[$language['id_lang']] = pSQL(Tools::getValue('url_'.$language['id_lang'])); + $slide->url[$language['id_lang']] = Tools::getValue('url_'.$language['id_lang']); if (Tools::getValue('legend_'.$language['id_lang']) != '') - $slide->legend[$language['id_lang']] = pSQL(Tools::getValue('legend_'.$language['id_lang'])); + $slide->legend[$language['id_lang']] = Tools::getValue('legend_'.$language['id_lang']); if (Tools::getValue('description_'.$language['id_lang']) != '') - $slide->description[$language['id_lang']] = pSQL(Tools::getValue('description_'.$language['id_lang'])); + $slide->description[$language['id_lang']] = Tools::getValue('description_'.$language['id_lang']); /* Uploads image and sets slide */ $type = strtolower(substr(strrchr($_FILES['image_'.$language['id_lang']]['name'], '.'), 1)); $imagesize = array(); @@ -586,10 +586,10 @@ class HomeSlider extends Module $errors[] = $this->displayError($this->l('An error occurred during the image upload.')); if (isset($temp_name)) @unlink($temp_name); - $slide->image[$language['id_lang']] = pSQL(Tools::encrypt($_FILES['image_'.($language['id_lang'])]['name'].$salt).'.'.$type); + $slide->image[$language['id_lang']] = Tools::encrypt($_FILES['image_'.($language['id_lang'])]['name'].$salt).'.'.$type; } elseif (Tools::getValue('image_old_'.$language['id_lang']) != '') - $slide->image[$language['id_lang']] = pSQL(Tools::getValue('image_old_'.$language['id_lang'])); + $slide->image[$language['id_lang']] = Tools::getValue('image_old_'.$language['id_lang']); } /* Processes if no errors */ diff --git a/modules/homeslider/homeslider.tpl b/modules/homeslider/homeslider.tpl index 4ddd65073..842187bdf 100644 --- a/modules/homeslider/homeslider.tpl +++ b/modules/homeslider/homeslider.tpl @@ -44,7 +44,7 @@ var homeslider_pause = {$homeslider.pause}; diff --git a/modules/homeslider/upgrade/install-1.2.1.php b/modules/homeslider/upgrade/install-1.2.1.php new file mode 100644 index 000000000..a79456d45 --- /dev/null +++ b/modules/homeslider/upgrade/install-1.2.1.php @@ -0,0 +1,24 @@ +execute(' + UPDATE '._DB_PREFIX_.'homeslider_slides_lang SET + '.homeslider_stripslashes_field('title').', + '.homeslider_stripslashes_field('description').', + '.homeslider_stripslashes_field('legend').', + '.homeslider_stripslashes_field('url') + ); +} + +function homeslider_stripslashes_field($field) +{ + $quotes = array('\'\\\\\'\'', '\'\\\'\''); + $dquotes = array('\'\\"\'', '\'"\''); + $backslashes = array('\'\\\\\'', '\'\\\''); + + return '`'.bqSQL($field).'` = replace(replace(replace(`'.bqSQL($field).'`, '.$quotes[0].', '.$quotes[1].'), '.$dquotes[0].', '.$dquotes[1].'), '.$backslashes[0].', '.$backslashes[1].')'; +} \ No newline at end of file