diff --git a/VERSIONS_HOTLINE/46189 b/VERSIONS_HOTLINE/46189 new file mode 100644 index 0000000000000000000000000000000000000000..a04c8263cf6c608619c78d7de60b5277e4dcd91d --- /dev/null +++ b/VERSIONS_HOTLINE/46189 @@ -0,0 +1 @@ + - ticket #46189 : Boîte bibliothèque: tri des facettes sur les champs personnalisés par ordre alphabétique \ No newline at end of file diff --git a/library/Class/AdminVar.php b/library/Class/AdminVar.php index d46c525fac13ca274913bafe5c687efa8eed0346..e4f8e7c86c8a6d4c7730a4f1af813d4d4cf59a73 100644 --- a/library/Class/AdminVar.php +++ b/library/Class/AdminVar.php @@ -121,7 +121,7 @@ class Class_AdminVarLoader extends Storm_Model_Loader { 'ID_READ_SPEAKER' => Class_AdminVar_Meta::newDefault($this->_('Numéro de client Read Speaker <a target="_blank" href="http://webreader.readspeaker.com">http://webreader.readspeaker.com</a>')), 'BLUGA_API_KEY' => Class_AdminVar_Meta::newDefault($this->_('Clé API Bluga Webthumb <a target="_blank" href="http://webthumb.bluga.net/home">http://webthumb.bluga.net/home</a>')), 'AIDE_FICHE_ABONNE' => Class_AdminVar_Meta::newDefault($this->_('Texte d\'aide affiché dans la fiche abonné')), - 'INTERDIRE_ENREG_UTIL' => Class_AdminVar_Meta::newDefault($this->_('Supprime l\'affichage du lien d\'enregistrement dans les différents formulaires de connexion et interdit l\'enregistrement d\'utilisateurs')), + 'INTERDIRE_ENREG_UTIL' => Class_AdminVar_Meta::newOnOff($this->_('Supprime l\'affichage du lien d\'enregistrement dans les différents formulaires de connexion et interdit l\'enregistrement d\'utilisateurs')), 'LANGUES' => Class_AdminVar_Meta::newMultiInput($this->_('Liste des codes langue utilisées en plus du français séparées par des ;. Exemple: en;ro;es')), 'CACHE_ACTIF' => Class_AdminVar_Meta::newOnOff(implode('<br/>', ['Activer le cache des boîtes (meilleure performance mais mise à jour toutes les ' . CACHE_LIFETIME / 60 . 'mn)', diff --git a/library/ZendAfi/View/Helper/Filters/Element/CustomField.php b/library/ZendAfi/View/Helper/Filters/Element/CustomField.php index bfd60eddf18afca81651b67abdca7fc1a32aa05f..c67a38c1277588bc42bd997253b42a8f5cad03d3 100644 --- a/library/ZendAfi/View/Helper/Filters/Element/CustomField.php +++ b/library/ZendAfi/View/Helper/Filters/Element/CustomField.php @@ -26,10 +26,17 @@ class ZendAfi_View_Helper_Filters_Element_CustomField extends ZendAfi_View_Helpe $elements = []; foreach ($values as $value) { - foreach ($value->getValueAsArray() as $value) - $elements[$value] = $value; + $this->_addOptionsInto($value->getValueAsArray(), $elements); } + asort($elements); + return $elements; } + + + protected function _addOptionsInto($options, &$elements) { + foreach ($options as $value) + $elements[$value] = $value; + } } diff --git a/tests/application/modules/opac/controllers/BibControllerTest.php b/tests/application/modules/opac/controllers/BibControllerTest.php index d846bf931d2841f0680f8791d0c6fe615ea652f7..10d423b1ad9ea1020b80aea349c98d619588ed38 100644 --- a/tests/application/modules/opac/controllers/BibControllerTest.php +++ b/tests/application/modules/opac/controllers/BibControllerTest.php @@ -1456,22 +1456,28 @@ class BibControllerSelectionOrderDisplayAndFiltersTest extends BibControllerWidg } + /** @test */ + public function customfieldServiceShouldContainsValueRestaurationChecked() { + $this->assertXPath('//li//input[@type="checkbox"][@value="Restauration"][@checked]'); + } + + /** @test */ public function customfieldServiceShouldContainsValueWifiChecked() { - $this->assertXPath('//input[@type="checkbox"][@value="Wifi"][@checked]'); + $this->assertXPath('//li/input[@type="checkbox"][@value="Wifi"][@checked]'); } /** @test */ - public function customfieldServiceShouldContainsValueRestaurationChecked() { - $this->assertXPath('//input[@type="checkbox"][@value="Restauration"][@checked]'); + public function servicesShouldBeInAlphabeticalOrder() { + $this->assertXPath('//li[following-sibling::li/input[@value="Wifi"]]/input[@value="Restauration"]'); } /** @test */ public function customFieldServiceTitleShouldContainsRestaurationAndWifi() { $this->assertXPathContentContains('//li[@data-id="custom_field_7"]/h2/span', - 'Wifi, Restauration'); + 'Restauration, Wifi'); } @@ -1483,7 +1489,7 @@ class BibControllerSelectionOrderDisplayAndFiltersTest extends BibControllerWidg /** @test */ public function customfieldServiceShouldContainsCheckBoxParking() { - $this->assertXPath('//input[@type="checkbox"][@value="Parking"][contains(@data-url, "custom_field_7/Wifi%3BRestauration%3BParking")]', $this->_response->getBody()); + $this->assertXPath('//input[@type="checkbox"][@value="Parking"][contains(@data-url, "custom_field_7/Restauration%3BWifi%3BParking")]', $this->_response->getBody()); }