diff --git a/library/ZendAfi/View/Helper/Timeline.php b/library/ZendAfi/View/Helper/Timeline.php index 5957140c8c326b160a63eae02d001f4d0d9352fd..eedea365b05b80685eb78f33be4073def7e338fd 100644 --- a/library/ZendAfi/View/Helper/Timeline.php +++ b/library/ZendAfi/View/Helper/Timeline.php @@ -43,9 +43,13 @@ class ZendAfi_View_Helper_Timeline extends Zend_View_Helper_Abstract { protected function _renderAction($action) { - $html = sprintf('<li%s>%s</li>', - $this->_getClassForAction($action), - $this->view->_($action['label'])); + $class = $this->_getClassForAction($action); + $content = $this->view->_($action['label']); + if ($class == 'passed') + $content = '<a href="'.$action[self::URL].'">'.$content.'</a>'; + + $html = sprintf('<li class="%s">%s</li>', $class, $content); + if ($action[self::CURRENT]) $this->_after_current = true; @@ -55,9 +59,9 @@ class ZendAfi_View_Helper_Timeline extends Zend_View_Helper_Abstract { protected function _getClassForAction($action) { if ($action[self::CURRENT]) - return ' class="selected"'; + return 'selected'; if (!$this->_after_current) - return ' class="passed"'; + return 'passed'; return ''; } } diff --git a/public/opac/css/global.css b/public/opac/css/global.css index 3198209c30c59cae10cefa0e02ec945bc51a1622..48cfbd87ce0e99d2604c6faf0958e127a9317b05 100644 --- a/public/opac/css/global.css +++ b/public/opac/css/global.css @@ -940,7 +940,7 @@ div.ui-sortable-placeholder { width: 130px; list-style: none; background: url(../images/reservation_timeline.png) no-repeat; - margin-left: -18px; + margin-left: -16px; font-weight: bold; } diff --git a/tests/application/modules/opac/controllers/AbonneControllerMultimediaTest.php b/tests/application/modules/opac/controllers/AbonneControllerMultimediaTest.php index 480fbea661a33a824f6f3576421560fcec1dfcd7..d5ca00dcc85b0df4eceb069fc5216da3d3a92256 100644 --- a/tests/application/modules/opac/controllers/AbonneControllerMultimediaTest.php +++ b/tests/application/modules/opac/controllers/AbonneControllerMultimediaTest.php @@ -808,6 +808,17 @@ class AbonneControllerMultimediaHoldGroupTest extends AbonneControllerMultimedia public function currentTimelineShouldBeSection() { $this->_assertCurrentTimelineStep('Section'); } + + + /** @test */ + public function timelinePreviousActionsShouldHaveLink() { + $this->assertXPathContentContains('//div[@class="timeline"]//li//a[contains(@href, abonne/multimedia-hold-location)]', 'Lieu'); + $this->assertXPathContentContains('//div[@class="timeline"]//li//a[contains(@href, abonne/multimedia-hold-day)]', 'Jour'); + $this->assertXPathContentContains('//div[@class="timeline"]//li//a[contains(@href, abonne/multimedia-hold-hours)]', 'Horaires'); + $this->assertNotXPathContentContains('//div[@class="timeline"]//li//a', 'Section'); + $this->assertNotXPathContentContains('//div[@class="timeline"]//li//a', 'Poste'); + $this->assertNotXPathContentContains('//div[@class="timeline"]//li//a', 'Confirmation'); + } }