diff --git a/VERSIONS_HOTLINE/84064 b/VERSIONS_HOTLINE/84064 new file mode 100644 index 0000000000000000000000000000000000000000..fcef2e82c9caa01511c8c04db9d45eefb06229fa --- /dev/null +++ b/VERSIONS_HOTLINE/84064 @@ -0,0 +1 @@ + - ticket #84064 : Boîte bibliothèque / ouvertures: lorsqu'une journée est fermée dans une plage exceptionnelle, affiche explicitement "fermé" pour cette journée \ No newline at end of file diff --git a/library/ZendAfi/View/Helper/LibraryOpenings.php b/library/ZendAfi/View/Helper/LibraryOpenings.php index b8a512e7be61be2484d04f45b725c33186d926de..93aeee6f3fe4f9096eb0ccbbf0d7a211c1f5404e 100644 --- a/library/ZendAfi/View/Helper/LibraryOpenings.php +++ b/library/ZendAfi/View/Helper/LibraryOpenings.php @@ -162,8 +162,11 @@ class ZendAfi_View_Helper_LibraryOpenings extends ZendAfi_View_Helper_BaseHelper $hours = $this->_renderTimes($am, $pm); - return $opening->getFormattedJour() - . ($hours ? (' : ' . str_replace('h00', 'h', $hours)) : ''); + return sprintf('%s : %s', + $opening->getFormattedJour(), + $hours + ? str_replace('h00', 'h', $hours) + : $this->_('fermé')); } diff --git a/tests/library/ZendAfi/View/Helper/RenderLibraryOpeningTest.php b/tests/library/ZendAfi/View/Helper/RenderLibraryOpeningTest.php index eb33101c42a0a6abb95dfb1c861f8d0aaf8421fa..bf9195a6dddbde574ec85f0cacd5690f28b5e1ff 100644 --- a/tests/library/ZendAfi/View/Helper/RenderLibraryOpeningTest.php +++ b/tests/library/ZendAfi/View/Helper/RenderLibraryOpeningTest.php @@ -108,6 +108,63 @@ class ZendAfi_View_Helper_RenderLibraryOpeningOnMondayMorningTest extends ZendAf + +class ZendAfi_View_Helper_RenderLibraryOpeningSomeDaysClosedOnHolidaysTestTest extends ZendAfi_View_Helper_RenderLibraryOpeningTestCase { + public function setUp() { + parent::setUp(); + $timesource = new TimeSourceForTest('2018-12-21 11:00:00'); + ZendAfi_View_Helper_RenderLibraryOpening::setTimeSource($timesource); + Class_Ouverture_Visitor::setTimeSource($timesource); + + + $this->meythet + ->addOuverture($this->fixture('Class_Ouverture', + ['id' => 400, + 'horaires' => ['00:00', '00:00', '00:00', '00:00'], + 'jour_semaine' => Class_Ouverture::LUNDI, + 'id_site' => 4, + 'validity_start' => '2018-12-22', + 'validity_end' => '2019-01-06'])) + + + ->addOuverture($this->fixture('Class_Ouverture', + ['id' => 401, + 'horaires' => ['11:00', '12:00', '14:00', '18:00'], + 'jour_semaine' => Class_Ouverture::MARDI, + 'id_site' => 4, + 'validity_start' => '2018-12-22', + 'validity_end' => '2019-01-06'])); + } + + + + protected function _renderOpening($library) { + $helper = new ZendAfi_View_Helper_RenderLibrary(); + $helper->setView(new ZendAfi_Controller_Action_Helper_View()); + + return $helper->renderLibrary($library, ['fields' => Class_Systeme_ModulesAccueil_Library::FIELD_OPEN_CLOSE . ';' . Class_Systeme_ModulesAccueil_Library::FIELD_OPENING_HOURS]); + } + + + /** @test */ + public function meythetShouldReopenOnTuesdayAtEleven() { + $this->assertXPathContentContains($this->_renderOpening($this->meythet), + '//p[@class="closed"]', + utf8_encode('Fermé. Réouverture Mardi à 11:00')); + } + + + /** @test */ + public function holidaysOpeningsShouldContainsMondayClosed() { + $this->assertXPathContentContains($this->_renderOpening($this->meythet), + '//div[@class="field-opening-hours"]//ul/li[2]//li', + utf8_encode('Lundi : fermé')); + } +} + + + + class ZendAfi_View_Helper_RenderLibraryOpeningHolidaysTest extends ZendAfi_View_Helper_RenderLibraryOpeningTestCase { /** @test */