From 97b0ab22708a5d47b692fb911be4ac7e05cff3aa Mon Sep 17 00:00:00 2001 From: gloas <gloas@afi-sa.fr> Date: Mon, 18 Jun 2018 16:14:10 +0200 Subject: [PATCH] dev #75882 : fix failures --- library/ZendAfi/Acl/AdminControllerGroup.php | 28 ++++++++++++++++++- library/ZendAfi/Acl/AdminControllerRoles.php | 27 ++++++++++++++++-- .../CodificationBrowserTest.php | 2 ++ 3 files changed, 53 insertions(+), 4 deletions(-) diff --git a/library/ZendAfi/Acl/AdminControllerGroup.php b/library/ZendAfi/Acl/AdminControllerGroup.php index 8419c0fcb03..13e54798eee 100644 --- a/library/ZendAfi/Acl/AdminControllerGroup.php +++ b/library/ZendAfi/Acl/AdminControllerGroup.php @@ -67,7 +67,33 @@ class ZendAfi_Acl_AdminControllerGroup { 'stat/piwik' => (new Class_AdminVar_Piwik())->isEnabled(), 'multimedia' => Class_AdminVar::isMultimediaEnabled(), 'search-form' => Class_AdminVar::isCustomSearchFormEnabled(), - 'codification-browser' => Class_AdminVar::isCodificationBrowserEnabled()]; + ]; + + $this->_activated = array_merge($this->_activated, + $this->_codififications()); + } + + + protected function _codififications() { + $enabled = Class_AdminVar::isCodificationBrowserEnabled(); + + return array_fill_keys(['codification-browser', + 'thesauri', + 'author-browser', + 'location-browser', + 'site-browser', + 'language-browser', + 'section-browser', + 'domain-browser', + 'genre-browser', + 'subject-browser', + 'tag-browser', + 'doctype-browser', + 'pcdm4-browser', + 'dewey-browser', + 'interest-browser', + 'library-browser'], + $enabled); } diff --git a/library/ZendAfi/Acl/AdminControllerRoles.php b/library/ZendAfi/Acl/AdminControllerRoles.php index 04e25b2e9b2..d95fe0bcf58 100644 --- a/library/ZendAfi/Acl/AdminControllerRoles.php +++ b/library/ZendAfi/Acl/AdminControllerRoles.php @@ -94,7 +94,26 @@ class ZendAfi_Acl_AdminControllerRoles extends Zend_Acl { $this->add(new Zend_Acl_Resource('batch')); $this->add(new Zend_Acl_Resource('file-manager')); $this->add(new Zend_Acl_Resource('search-form')); - $this->add(new Zend_Acl_Resource('codification-browser')); + + $codifications = ['codification-browser', + 'thesauri', + 'author-browser', + 'location-browser', + 'site-browser', + 'language-browser', + 'section-browser', + 'domain-browser', + 'genre-browser', + 'subject-browser', + 'tag-browser', + 'doctype-browser', + 'pcdm4-browser', + 'dewey-browser', + 'interest-browser', + 'library-browser']; + + foreach($codifications as $controller) + $this->add(new Zend_Acl_Resource($controller)); //Roles $this->addRole(new Zend_Acl_Role('invite')); @@ -149,7 +168,8 @@ class ZendAfi_Acl_AdminControllerRoles extends Zend_Acl { $this->allow('admin_bib','menus'); $this->allow('admin_bib','external-agendas'); $this->allow('admin_bib','search-form'); - $this->allow('admin_bib','codification-browser'); + foreach($codifications as $controller) + $this->allow('admin_bib', $controller); $this->deny('modo_portail','catalogue'); $this->deny('modo_portail','rss'); @@ -170,7 +190,8 @@ class ZendAfi_Acl_AdminControllerRoles extends Zend_Acl { $this->deny('modo_portail','systeme'); $this->deny('modo_portail','batch'); $this->deny('modo_portail','search-form'); - $this->deny('modo_portail','codification-browser'); + foreach($codifications as $controller) + $this->deny('modo_portail', $controller); $this->allow('modo_portail'); $this->allow('admin_portail'); diff --git a/tests/scenarios/CodificationBrowser/CodificationBrowserTest.php b/tests/scenarios/CodificationBrowser/CodificationBrowserTest.php index 77cfd2c3ea1..3a48a7913af 100644 --- a/tests/scenarios/CodificationBrowser/CodificationBrowserTest.php +++ b/tests/scenarios/CodificationBrowser/CodificationBrowserTest.php @@ -27,6 +27,8 @@ class CodificationBrowserIndexDispatchTest extends Admin_AbstractControllerTestC public function setUp() { parent::setUp(); + Class_AdminVar::set('CODIFICATION_BROWSER', 1); + $this->dispatch('/admin/codification-browser/index', true); } -- GitLab