diff --git a/VERSIONS_HOTLINE/72999 b/VERSIONS_HOTLINE/72999 new file mode 100644 index 0000000000000000000000000000000000000000..812b8d41fd61b49f4c10949599e914f1bb3174ba --- /dev/null +++ b/VERSIONS_HOTLINE/72999 @@ -0,0 +1,2 @@ + - ticket #72999 : Boite biliothèque : correction des liens de pagination quand les filtres n'étaient pas activé. + \ No newline at end of file diff --git a/library/ZendAfi/View/Helper/Accueil/Base.php b/library/ZendAfi/View/Helper/Accueil/Base.php index 1517396e33a92dec4a0462b1dc28f2746ba9dc70..536f179c7dc0f661d6be270c387a4edfc5860909 100644 --- a/library/ZendAfi/View/Helper/Accueil/Base.php +++ b/library/ZendAfi/View/Helper/Accueil/Base.php @@ -426,10 +426,9 @@ class ZendAfi_View_Helper_Accueil_Base extends ZendAfi_View_Helper_ModuleAbstrac $instance = Class_ScriptLoader::getInstance(); $tabs_css = Class_Url::baseUrl() . '/public/opac/js/renderFilters/tabs.css'; - if(null == $filter_settings) { - $instance->addStyleSheet($tabs_css); - return $this; - } + if(null == $filter_settings) + $filter_settings = (new Class_Entity()) + ->whenCalledDo('isDisplayModeList', function() {return false;}); $opts = ($onLoadComplete = $filter_settings->getOnLoadComplete()) ? '{onLoadComplete: function(widget){ '. $onLoadComplete .' }}' @@ -442,6 +441,7 @@ class ZendAfi_View_Helper_Accueil_Base extends ZendAfi_View_Helper_ModuleAbstrac $filter_settings->isDisplayModeList() ? $instance->addStyleSheet(Class_Url::baseUrl() . '/public/opac/js/renderFilters/list.css') : $instance->addStyleSheet($tabs_css); + return $this; } diff --git a/library/ZendAfi/View/Helper/Accueil/Library.php b/library/ZendAfi/View/Helper/Accueil/Library.php index 1fd84d952c2204beae4ac5f8dc65015f36951366..5e16582cc25e07d0c70eb29a92a9f52ea9d56e05 100644 --- a/library/ZendAfi/View/Helper/Accueil/Library.php +++ b/library/ZendAfi/View/Helper/Accueil/Library.php @@ -226,9 +226,6 @@ class ZendAfi_View_Helper_Accueil_Library extends ZendAfi_View_Helper_Accueil_Ba protected function _renderFilters() { $this->_filters = array_filter(explode(';', $this->preferences['filters'])); - if (!$this->_filters) - return ''; - $this->_filter_settings = new Class_FilterSettings(new Class_Systeme_ModulesAccueil_Library()); $this->_filter_settings ->setFilters($this->_filters) diff --git a/library/ZendAfi/View/Helper/Filters/Render.php b/library/ZendAfi/View/Helper/Filters/Render.php index 034ebbe0f64f6f8b23d04cc443bb506cb7e87482..de38267b78cbacaae6265090a96660bbbbc79750 100644 --- a/library/ZendAfi/View/Helper/Filters/Render.php +++ b/library/ZendAfi/View/Helper/Filters/Render.php @@ -27,8 +27,12 @@ class ZendAfi_View_Helper_Filters_Render extends ZendAfi_View_Helper_BaseHelper public function filters_Render($filter_settings) { $this->_settings = $filter_settings; + $filters = $this->_settings->getFilters(); + if(empty($filters)) + return ''; + $html = ''; - foreach ($this->_settings->getFilters() as $filter) + foreach ($filters as $filter) $html .= $this->_renderFilter($filter); return $this->_tag('ul', $html, $this->_settings->getCssClass()); diff --git a/public/opac/js/reload_module.js b/public/opac/js/reload_module.js index 2a43d95bfc43fee454bce326157cca24f07fb2ea..e53d32664161af83f923001452cc0fa2324132da 100644 --- a/public/opac/js/reload_module.js +++ b/public/opac/js/reload_module.js @@ -7,6 +7,7 @@ initializeDivisionFive(); initializePopups(); initializeReloadModule(); + setupAnchorsTarget(); boite .boiteSlideToRight() .boiteShowContent(); diff --git a/tests/library/ZendAfi/View/Helper/Accueil/LibraryTest.php b/tests/library/ZendAfi/View/Helper/Accueil/LibraryTest.php index 8267dae8d37f01798e5626598b4ee17447df2d56..e2ec4d9ed624704131042c6daf9d6b2a3503804d 100644 --- a/tests/library/ZendAfi/View/Helper/Accueil/LibraryTest.php +++ b/tests/library/ZendAfi/View/Helper/Accueil/LibraryTest.php @@ -108,6 +108,14 @@ class ZendAfi_View_Helper_Accueil_LibrarySelectedLibrariesTest extends ZendAfi_V public function cranShouldNotBeDisplayed() { $this->assertNotXPathContentContains($this->html, '//section/h2', 'Cran'); } + + + /** @test */ + public function jQueryReadyShouldContainsAjaxifyFilters() { + $js = Class_ScriptLoader::getInstance()->javaScriptsHTML(); + $this->assertContains('$("#boite_2").ajaxifyFilters({});', + $js); + } }