From 9e7fd9e455d30777916b1b75fcca5fc58e5e2ea5 Mon Sep 17 00:00:00 2001 From: bMancone Date: Thu, 22 Dec 2011 16:28:33 +0000 Subject: [PATCH] // updated homeslider --- modules/homeslider/HomeSlide.php | 5 ++-- modules/homeslider/homeslider.php | 45 +++++++++++++++++++++++++++++-- 2 files changed, 46 insertions(+), 4 deletions(-) diff --git a/modules/homeslider/HomeSlide.php b/modules/homeslider/HomeSlide.php index b73999914..0fba6f47c 100644 --- a/modules/homeslider/HomeSlide.php +++ b/modules/homeslider/HomeSlide.php @@ -109,8 +109,9 @@ class HomeSlide extends ObjectModel $images = $this->image; foreach ($images as $image) { - if ($image && file_exists(dirname(__FILE__).'/images/'.$image)) - $res &= @unlink(dirname(__FILE__).'/images/'.$image); + if (preg_match('/sample/', $image) === 0) + if ($image && file_exists(dirname(__FILE__).'/images/'.$image)) + $res &= @unlink(dirname(__FILE__).'/images/'.$image); } $res &= $this->reOrderPositions(); diff --git a/modules/homeslider/homeslider.php b/modules/homeslider/homeslider.php index d6f96a7a3..14af9b188 100644 --- a/modules/homeslider/homeslider.php +++ b/modules/homeslider/homeslider.php @@ -54,6 +54,9 @@ class HomeSlider extends Module $this->description = $this->l('Adds an image slider to your homepage.'); } + /** + * @see Module::install() + */ public function install() { /* Adds Module */ @@ -65,11 +68,43 @@ class HomeSlider extends Module $res &= Configuration::updateValue('HOMESLIDER_SPEED', '1300'); $res &= Configuration::updateValue('HOMESLIDER_PAUSE', '7700'); /* Creates tables */ - return ($res && $this->createTables()); + $res &= $this->createTables(); + + /* Adds samples */ + if ($res) + $this->installSamples(); + + return $res; } return false; } + /** + * Adds samples + */ + private function installSamples() + { + $languages = Language::getLanguages(false); + for ($i = 1; $i <= 5; ++$i) + { + $slide = new HomeSlide(); + $slide->position = $i; + $slide->active = 1; + foreach ($languages as $language) + { + $slide->title[$language['id_lang']] = 'Sample '.$i; + $slide->description[$language['id_lang']] = 'This is a sample picture'; + $slide->legend[$language['id_lang']] = 'sample-'.$i; + $slide->url[$language['id_lang']] = 'http://www.prestashop.com'; + $slide->image[$language['id_lang']] = 'sample-'.$i.'.jpg'; + } + $slide->add(); + } + } + + /** + * @see Module::uninstall() + */ public function uninstall() { /* Deletes Module */ @@ -87,6 +122,9 @@ class HomeSlider extends Module return false; } + /** + * Creates tables + */ protected function createTables() { /* Slides */ @@ -125,6 +163,9 @@ class HomeSlider extends Module return $res; } + /** + * deletes tables + */ protected function deleteTables() { $slides = $this->getSlides(); @@ -134,7 +175,7 @@ class HomeSlider extends Module $to_del->delete(); } return Db::getInstance()->execute(' - DROP TABLE `'._DB_PREFIX_.'homeslider`, `'._DB_PREFIX_.'homeslider_slides`, `'._DB_PREFIX_.'homeslider_slides_lang`; + DROP TABLE IF EXISTS `'._DB_PREFIX_.'homeslider`, `'._DB_PREFIX_.'homeslider_slides`, `'._DB_PREFIX_.'homeslider_slides_lang`; '); }