From 55e6ebce19a4156e92b128b953246cd8feb848d6 Mon Sep 17 00:00:00 2001
From: gloas <gloas@afi-loas.afi-sa.net>
Date: Wed, 19 Feb 2014 16:17:44 +0100
Subject: [PATCH] Bug fix: display of recherche result form settings when cvs
 is not activate

---
 .../Form/Configuration/SearchResult.php       | 87 ++++++++++---------
 .../controllers/ModulesControllerTest.php     |  6 ++
 2 files changed, 54 insertions(+), 39 deletions(-)

diff --git a/library/ZendAfi/Form/Configuration/SearchResult.php b/library/ZendAfi/Form/Configuration/SearchResult.php
index dcd1d927f97..7f8da991e49 100644
--- a/library/ZendAfi/Form/Configuration/SearchResult.php
+++ b/library/ZendAfi/Form/Configuration/SearchResult.php
@@ -70,7 +70,7 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 	
 	public function init() {
 		parent::init();
-
+		xdebug_break();
 		$this
 			->setAttrib('id', 
 									'configuration_searchResult')
@@ -102,7 +102,7 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 												 'max' => 50,
 												 'messages' => 'Le nombre de notices par page doit être compris entre 3 et 50']]
 
-										]])
+											]])
 
 			->addElement('codeList', 
 									 'liste_codes', 
@@ -115,7 +115,7 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 											 'value' => false,
 											 'options' => [ 'messages' => 'Indiquez au moins 1 champ à afficher pour la liste']]
 
-										]])
+											]])
 			->addElement('text' , 
 									 'zones_titre', 
 									 ['label' => $this->_('Zones de titre(séparées par ;)'),
@@ -138,7 +138,7 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 												 'max' => 10,
 												 'messages' => 				 'Le nombre de facettes doit être compris entre 2 et 10']
 
-										]]])
+												]]])
 
 			->addElement('codeList', 
 									 'facettes_codes', 
@@ -146,11 +146,11 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 										'field' => 'facettes',
 										'values' => '',
 										'required' => true,
-										 'validators' =>  [
-											 ['name' => 'notEmpty',
-												'value' => false,
-												'options' => [ 'messages' => 'Indiquez au moins 1 facette à afficher']
-										 ]]])
+										'validators' =>  [
+											['name' => 'notEmpty',
+											 'value' => false,
+											 'options' => [ 'messages' => 'Indiquez au moins 1 facette à afficher']
+												]]])
 			->addElement('text',
 									 'facettes_message', 
 									 ['label' => $this->_('Message au dessus de la boite'),
@@ -183,7 +183,7 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 												 'max' => 1000,
 												 'messages' =>'Le nombre de tags doit être compris entre 5 et 1000']
 
-										]]])
+												]]])
 			->addElement('codeList', 
 									 'tags_codes', 
 									 ['label' => $this->_('Types de tags'),
@@ -195,39 +195,12 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 											 'value' => false,
 											 'options' => [ 'messages' => $this->_('Indiquez au moins 1 type de tag à afficher')]]
 
-										]])
+											]])
 			->addElement('text',
 									 'tags_message', 
 									 ['label' => $this->_('Message au dessus de la boite'),
 										'size' => $this->_text_size])
-			->addElement('select' , 
-									 'cvs_display_position', 
-									 ['label' => $this->_('Affichage'),
-										'multiOptions' => ['0' => $this->_('Ne pas afficher'),
-																			 '1' => $this->_('Afficher au dessus des facettes'),
-																			 '2' => $this->_('Afficher au dessous des facettes'),
-																			 '3' => $this->_('Afficher au dessus des résultats'),
-																			 '4' => $this->_('Afficher au dessous des résultats')]])
-			->addElement('text',
-									 'cvs_resultat_titre',
-									 ['label' => $this->_('Titre de la boîte'),
-										'size' => $this->_text_size])
-			->addElement('text',
-									 'cvs_autres_resultats',
-									 ['label' => $this->_('Titre résultat recherche'),
-										'size' => $this->_text_size])
-			->addElement('text',
-									 'cvs_nb_result',
-									 ['label' => $this->_('Nombre de résultats à afficher'),
-										'size' => $this->_num_size])
-			->addElement('text',
-									 'cvs_msg_deco',
-									 ['label' => $this->_('Message utilisateur déconnecté'),
-										'size' => $this->_text_size])
-			->addElement('text',
-									 'cvs_msg_droit',
-									 ['label' => $this->_("Message utilisateur sans droit d'accès"),
-										'size' => $this->_text_size])
+			->addCvsElement()
 			->addElement('submit', 
 									 'submit', 
 									 ['label' => $this->_('Valider')]);
@@ -241,6 +214,42 @@ class ZendAfi_Form_Configuration_SearchResult extends ZendAfi_Form {
 	}
 
 
+	public function addCvsElement() {
+		if(Class_AdminVar::isCVSEnabled())
+			$this
+				->addElement('select' , 
+										 'cvs_display_position', 
+										 ['label' => $this->_('Affichage'),
+											'multiOptions' => ['0' => $this->_('Ne pas afficher'),
+																				 '1' => $this->_('Afficher au dessus des facettes'),
+																				 '2' => $this->_('Afficher au dessous des facettes'),
+																				 '3' => $this->_('Afficher au dessus des résultats'),
+																				 '4' => $this->_('Afficher au dessous des résultats')]])
+				->addElement('text',
+										 'cvs_resultat_titre',
+										 ['label' => $this->_('Titre de la boîte'),
+											'size' => $this->_text_size])
+				->addElement('text',
+										 'cvs_autres_resultats',
+										 ['label' => $this->_('Titre résultat recherche'),
+											'size' => $this->_text_size])
+				->addElement('text',
+										 'cvs_nb_result',
+										 ['label' => $this->_('Nombre de résultats à afficher'),
+											'size' => $this->_num_size])
+				->addElement('text',
+										 'cvs_msg_deco',
+										 ['label' => $this->_('Message utilisateur déconnecté'),
+											'size' => $this->_text_size])
+				->addElement('text',
+										 'cvs_msg_droit',
+										 ['label' => $this->_("Message utilisateur sans droit d'accès"),
+											'size' => $this->_text_size]);
+		
+		return $this;
+	}
+
+
 	public function addCvsGroup() {
 		if(Class_AdminVar::isCVSEnabled())
 			$this->addDisplayGroup(['cvs_display_position',
diff --git a/tests/application/modules/admin/controllers/ModulesControllerTest.php b/tests/application/modules/admin/controllers/ModulesControllerTest.php
index 6530b78b047..e183276f84b 100644
--- a/tests/application/modules/admin/controllers/ModulesControllerTest.php
+++ b/tests/application/modules/admin/controllers/ModulesControllerTest.php
@@ -168,6 +168,12 @@ class ModulesControllerConfigRechercheResultatWithPreferencesWithPreferencesTest
 	}	
 
 
+	/** @test **/
+	public function selectCvsDisplayPositionShouldNotBeDisplay() {
+		$this->assertNotXPath('//select[@name="cvs_display_position"]');
+	}	
+
+
   /** @test */
 	public function checkboxSuggestionAchatShouldBeChecked() {
 		$this->assertXPath('//input[@type="checkbox"][@name="suggestion_achat"][@checked="checked"]');
-- 
GitLab