From fca04b04ba6943b0fb2b3aa11c88ef2926ec9ee1 Mon Sep 17 00:00:00 2001
From: llaffont <llaffont@git-test.afi-sa.fr>
Date: Mon, 2 Dec 2013 17:34:41 +0000
Subject: [PATCH] =?UTF-8?q?Correction=20s=C3=A9lection=20des=20paniers?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../opac/controllers/PanierController.php     | 36 ++++++++-----------
 .../opac/controllers/PanierControllerTest.php | 16 ++++++---
 2 files changed, 25 insertions(+), 27 deletions(-)

diff --git a/application/modules/opac/controllers/PanierController.php b/application/modules/opac/controllers/PanierController.php
index d62a57aa3c5..5a4f23b991b 100644
--- a/application/modules/opac/controllers/PanierController.php
+++ b/application/modules/opac/controllers/PanierController.php
@@ -218,32 +218,24 @@ class PanierController extends ZendAfi_Controller_Action {
 
 
 	protected function ajoutAjaxPostEvent($notice) {
-		if ($this->_request->isPost()) {
-		  $panier=$this->ensurePanier();
-
-			if(!$this->_user->canModifyPanier($panier)) {
-				$this->_redirect('opac/panier');
-				return;
-			}
+		if (!$this->_request->isPost()) 
+			return;
 
-			$panier->addNotice($notice)->save();
-			$panier = $this->addDomainesTo($panier);
-			$this->_user->setPanierCourant($panier);
-			$this->_user->save();
+		$panier=$this->ensurePanier();
 
-			$url_popup = $this->view->url(['controller' => 'panier',
-																		 'action' => 'ajout-ajax-success',
-																		 'id_notice' => $notice->getId(),
-																		 'id_panier' => $panier->getId()],
-																		null,
-																		true);
-			
-			Class_Profil::getCurrentProfil()->hasBoitePanier() 
-				? $this->_forward('ajout-ajax-success','panier','opac',['id_notice' => $notice->getId(),
-																																'id_panier' => $panier->getId()])
-				: $this->renderPopup($url_popup);
+		if(!$this->_user->canModifyPanier($panier)) {
+			$this->_redirect('opac/panier');
 			return;
 		}
+
+		$panier->addNotice($notice)->save();
+		$panier = $this->addDomainesTo($panier);
+		$this->_user->setPanierCourant($panier);
+		$this->_user->save();
+
+
+		$this->_forward('ajout-ajax-success','panier','opac',['id_notice' => $notice->getId(),
+																													'id_panier' => $panier->getId()]);
 	}
 
 
diff --git a/tests/application/modules/opac/controllers/PanierControllerTest.php b/tests/application/modules/opac/controllers/PanierControllerTest.php
index 13eb18c1a66..d58227d871f 100644
--- a/tests/application/modules/opac/controllers/PanierControllerTest.php
+++ b/tests/application/modules/opac/controllers/PanierControllerTest.php
@@ -1241,24 +1241,30 @@ class PanierControllerAjoutAjaxSuccessTest extends PanierControllerSimpleLoggedU
 
 
 
-class PanierControllerSelectPanierCourantActionTest extends AbstractControllerTestCase {
 
+class PanierControllerSelectPanierCourantActionTest extends AbstractControllerTestCase {
 	/** @test **/
 	public function formSelectPanierCourantShouldBeDisplay() {
-		$this->dispatch('/panier/select-panier-courant/id_panier/39');
-		$this->assertXPath('//input[@type="hidden"][@value="39"]');
+		$this->fixture('Class_PanierNotice', ['id' => 39,
+																					'libelle' => 'panier',
+																					'date_maj' => '19/01/2013']);
+
+		$this->dispatch('/panier/select-panier-courant/id_panier/39', true);
+		$this->assertXPath('//input[@type="hidden"][@name="id_new_panier"][@value="39"]');
 	}
 
 
   /** @test **/
 	public function withOutParamsFormSelectPanierCourantShouldBeDisplay() {
-			$this->dispatch('/panier/select-panier-courant');
-			$this->assertXPath('//form[contains(@action, "panier/select-panier-courant")]',$this->_response->getBody());
+		$this->dispatch('/panier/select-panier-courant');
+		$this->assertXPath('//form[contains(@action, "panier/select-panier-courant")]');
+		$this->assertXPath('//input[@type="hidden"][@name="id_new_panier"][@value=""]');
 	}
 }
 
 
 
+
 class PanierControllerEditActionAsAbonneTest extends AbstractControllerTestCase {
 	public function setup() {
 		parent::setup();
-- 
GitLab