diff --git a/VERSIONS_HOTLINE/64062 b/VERSIONS_HOTLINE/64062 new file mode 100644 index 0000000000000000000000000000000000000000..de32dcdda4a9c0de610b1e56a358f9ac9198f2cd --- /dev/null +++ b/VERSIONS_HOTLINE/64062 @@ -0,0 +1 @@ + - ticket #64062 : Correction de la prolongation de documents impossible sur la version mobile \ No newline at end of file diff --git a/application/modules/opac/controllers/AbonneController.php b/application/modules/opac/controllers/AbonneController.php index 932e0363d4f9fc85e4215dd0cf44f471cb9bd346..615877a9482374c93fd3515d97d936b864a0553d 100644 --- a/application/modules/opac/controllers/AbonneController.php +++ b/application/modules/opac/controllers/AbonneController.php @@ -383,7 +383,7 @@ class AbonneController extends ZendAfi_Controller_Action { $id_pret = $this->_getParam('id_pret'); $ids = array_filter(explode(';', $id_pret)); if (!count($ids)) { - $this->_renderExtendPopup($this->_('Aucune prolongation éffectué.')); + $this->_renderExtendPopup([$this->_('Aucune prolongation éffectué.')]); return; } @@ -409,9 +409,6 @@ class AbonneController extends ZendAfi_Controller_Action { protected function _renderExtendPopup($messages) { $this->getHelper('notify')->bePopup(); - if (!is_array($messages)) - $messages = [$messages]; - foreach($messages as $message) $this->_helper->notify($message); $this->_redirectToReferer(); @@ -438,7 +435,7 @@ class AbonneController extends ZendAfi_Controller_Action { ? $result['erreur'] : $this->_('Votre réservation du document %s a bien été supprimée.', $title); - return $this->_renderExtendPopup($message); + return $this->_renderExtendPopup([$message]); } if ($delete = $this->_getParam('consultation_id_delete')) diff --git a/application/modules/telephone/controllers/AbonneController.php b/application/modules/telephone/controllers/AbonneController.php index 88cb0d6c5e91c2f5fbd446f804b4dfc8e4e16830..acf8acd906aaa0990939518b43b3e97bd2f0346e 100644 --- a/application/modules/telephone/controllers/AbonneController.php +++ b/application/modules/telephone/controllers/AbonneController.php @@ -58,16 +58,15 @@ class Telephone_AbonneController extends AbonneController { } - public function prolongerpretAction() { - $sigb = new Class_CommSigb(); - $result = $sigb->prolongerPret($this->_user, $this->_getParam('id_pret')); - $this->_messenger->addMessage((1 == $result['statut']) ? - $this->view->_('Prêt prolongé') : - $result['erreur']); + protected function _renderExtendPopup($messages) { + foreach($messages as $message) + $this->_messenger->addMessage($message); + $this->_redirect('/abonne/fiche'); } + protected function _detectReservation($reservations) { foreach($reservations as $resa) { if ($resa->getId() == $this->_getParam('id')) { diff --git a/library/ZendAfi/View/Helper/Abonne/LoansExtension.php b/library/ZendAfi/View/Helper/Abonne/LoansExtension.php index 4fe18cff037477d8236a94d5313db7fdee9684d1..9c7bd8763e2a4ce71af06790ad2110d917c46a97 100644 --- a/library/ZendAfi/View/Helper/Abonne/LoansExtension.php +++ b/library/ZendAfi/View/Helper/Abonne/LoansExtension.php @@ -30,7 +30,7 @@ class ZendAfi_View_Helper_Abonne_LoansExtension extends ZendAfi_View_Helper_Base $this->_results = $results; return count($ids) == 1 - ? $this->_renderOneLoanExtension() + ? [$this->_renderOneLoanExtension()] : $this->_renderMultipleLoansExtension(); } diff --git a/tests/application/modules/AbstractControllerTestCase.php b/tests/application/modules/AbstractControllerTestCase.php index 9c1fbff6fd7a5455fd38702be5c04af00b949414..8a7c300007f0c97982ff0507a12f242876f60fcf 100644 --- a/tests/application/modules/AbstractControllerTestCase.php +++ b/tests/application/modules/AbstractControllerTestCase.php @@ -300,7 +300,10 @@ abstract class AbstractControllerTestCase extends Zend_Test_PHPUnit_ControllerTe public function assertFlashMessengerContains($value, $message = '') { - $this->assertContains($value, $this->_getFlashMessengerMessages(), $message); + $messages = $this->_getFlashMessengerMessages(); + $this->assertContains($value, + $this->_getFlashMessengerMessages(), + $message); } diff --git a/tests/application/modules/telephone/controllers/AbonneControllerTest.php b/tests/application/modules/telephone/controllers/AbonneControllerTest.php index ff7f8588449a88bf290e28457da1f2133e66b496..66b8f1e078d29b8618d2badbbd9416cb8fed524e 100644 --- a/tests/application/modules/telephone/controllers/AbonneControllerTest.php +++ b/tests/application/modules/telephone/controllers/AbonneControllerTest.php @@ -314,13 +314,14 @@ class AbonneControllerTelephoneConfirmedCancelHoldTest extends AbonneControllerT + class AbonneControllerTelephoneRenewSuccessTest extends AbonneControllerTelephoneTestCase { public function setUp() { parent::setUp(); $this->_service = $this->mock() ->whenCalled('prolongerPret') - ->answers(true) + ->answers(['statut' => true, 'erreur' => '']) ->whenCalled('isConnected') ->answers(true) @@ -333,7 +334,7 @@ class AbonneControllerTelephoneRenewSuccessTest extends AbonneControllerTelephon Class_WebService_SIGB_VSmart::setService($this->_service); - $this->dispatch('/abonne/prolongerpret/id_pret/11', true); + $this->dispatch('/abonne/prolongerpret/id_pret/666_11', true); } @@ -347,4 +348,10 @@ class AbonneControllerTelephoneRenewSuccessTest extends AbonneControllerTelephon public function shouldRedirectToFicheAbonne() { $this->assertRedirectTo('/abonne/fiche'); } + + + /** @test */ + public function flashMessengerShouldContainsLoanRenewed() { + $this->assertFlashMessengerContains('Votre prêt a bien été prolongé.'); + } } \ No newline at end of file