From cdb427a07ce3163abd462ca6ec32f86d6f6e34a8 Mon Sep 17 00:00:00 2001 From: "vincent@cubedesigners.com" Date: Thu, 1 Dec 2016 11:19:49 +0000 Subject: [PATCH] fix #1003 @1 --- .../controllers/MaintenanceController.php | 34 ++++++++++++------- .../forms/CMS/Sub/Exemples/Fluidbook.php | 2 +- framework/application/models/Reference.php | 12 +++++-- 3 files changed, 31 insertions(+), 17 deletions(-) diff --git a/framework/application/controllers/MaintenanceController.php b/framework/application/controllers/MaintenanceController.php index 09e206f..53e1ba1 100644 --- a/framework/application/controllers/MaintenanceController.php +++ b/framework/application/controllers/MaintenanceController.php @@ -8,16 +8,16 @@ class MaintenanceController extends CubeIT_Controller_MaintenanceController { return $url; } -// public function featuredCategories() { -// $references = Fluidbook_Model_Reference::factory()->find(); -// foreach ($references as $reference) { -// if ($reference->getFeatured()) { -// $reference->setFeaturedCategories($reference->getCategories()); -// } -// fb($reference->toArray()); -// $reference->save(); -// } -// } + // public function featuredCategories() { + // $references = Fluidbook_Model_Reference::factory()->find(); + // foreach ($references as $reference) { + // if ($reference->getFeatured()) { + // $reference->setFeaturedCategories($reference->getCategories()); + // } + // fb($reference->toArray()); + // $reference->save(); + // } + // } public function importReferences() { set_time_limit(0); @@ -37,14 +37,22 @@ class MaintenanceController extends CubeIT_Controller_MaintenanceController { } $fluidbooks = array_values(array_unique($fluidbooks)); + $n = 0; + foreach ($fluidbooks as $fluidbook) { - $meta = $ws->getMetadata($fluidbook); - $dir = PUBLIC_PATH . '/references/' . $fluidbook . '-' . CubeIT_Text::str2URL($meta->title); + if ($n > 5) { + break; + } try { - $ws->installBookIfNeeded($fluidbook, $dir, $meta->date); + $meta = $ws->getMetadata($fluidbook); + $dir = PUBLIC_PATH . '/references/' . $fluidbook . '-' . CubeIT_Text::str2URL(trim($meta->title)); + + } catch (exception $e) { + } + } } } diff --git a/framework/application/forms/CMS/Sub/Exemples/Fluidbook.php b/framework/application/forms/CMS/Sub/Exemples/Fluidbook.php index caa3af1..44f6431 100644 --- a/framework/application/forms/CMS/Sub/Exemples/Fluidbook.php +++ b/framework/application/forms/CMS/Sub/Exemples/Fluidbook.php @@ -55,7 +55,7 @@ class Fluidbook_Form_CMS_Sub_Exemples_Fluidbook extends CubeIT_Form_List_Model { ->setEditTitle('Edition de l\'exemple « $title »') ->setModel('Fluidbook_Model_Reference') ->setTitleColumn("title") - ->setAdditionnalColumns(array('fluidbook_id', 'featured', 'homeimage', 'date')) + ->setAdditionnalColumns(array('fluidbook_id', 'featured', 'homeimage','url', 'date')) ->setSearchColumns(array('text', 'fluidbook_id', 'title')); } diff --git a/framework/application/models/Reference.php b/framework/application/models/Reference.php index 39b9156..19296a8 100644 --- a/framework/application/models/Reference.php +++ b/framework/application/models/Reference.php @@ -57,13 +57,19 @@ class Fluidbook_Model_Reference extends CubeIT_Model_Data_Table { } protected function _getFinalURL($url, $locale = null) { + $prepend = ''; if ($url) { - return $url; + if (substr($url, 0, 1) == '#') { + $prepend = $url; + } else { + return $url; + } + } if (null === $locale) { - return $this->_getLocalReference($this->getFluidbookId()); + return $this->_getLocalReference($this->getFluidbookId()) . $prepend; } else { - return $this->_getLocalReference($this->getFluidbookId()->$locale); + return $this->_getLocalReference($this->getFluidbookId()->$locale) . $prepend; } } -- 2.39.5