diff --git a/VERSIONS_HOTLINE/65312 b/VERSIONS_HOTLINE/65312 new file mode 100644 index 0000000000000000000000000000000000000000..b0e7322ee90c7beae809a01c252722706cb4b7cb --- /dev/null +++ b/VERSIONS_HOTLINE/65312 @@ -0,0 +1 @@ + - ticket #65312 : Explorateur de fichier : les modérateurs biliothèques peuvent accéder à l'explorateur. diff --git a/library/ZendAfi/Acl/AdminControllerRoles.php b/library/ZendAfi/Acl/AdminControllerRoles.php index 8b7b1921877fb6b33d2e03bb54938ead62c03a5e..a4bd13c87e6be667edc451d10abc2ac2ef20be34 100644 --- a/library/ZendAfi/Acl/AdminControllerRoles.php +++ b/library/ZendAfi/Acl/AdminControllerRoles.php @@ -91,6 +91,7 @@ class ZendAfi_Acl_AdminControllerRoles extends Zend_Acl { $this->add(new Zend_Acl_Resource('external-agendas')); $this->add(new Zend_Acl_Resource('systeme')); $this->add(new Zend_Acl_Resource('batch')); + $this->add(new Zend_Acl_Resource('file-manager')); //Roles $this->addRole(new Zend_Acl_Role('invite')); @@ -123,6 +124,7 @@ class ZendAfi_Acl_AdminControllerRoles extends Zend_Acl { $this->allow('modo_bib','widget'); $this->allow('modo_bib','users/change-admin-skin'); $this->allow('modo_bib','users/settings'); + $this->allow('modo_bib','file-manager'); $this->allow('admin_bib','rss'); $this->allow('admin_bib','catalogue'); diff --git a/library/ZendAfi/View/Helper/Admin/ContentNav.php b/library/ZendAfi/View/Helper/Admin/ContentNav.php index 29a6d75e6c7fed1c037336948f754073ddf9ea18..921a81c5098d1399b2fe4809730ec31e45ef601c 100644 --- a/library/ZendAfi/View/Helper/Admin/ContentNav.php +++ b/library/ZendAfi/View/Helper/Admin/ContentNav.php @@ -154,11 +154,7 @@ class ZendAfi_View_Helper_Admin_ContentNav extends ZendAfi_View_Helper_BaseHelpe ['portal_init', $this->_('Génération du site'), '/admin/systeme/generationsite', [], function($user) { return defined('DEVELOPMENT') && $user->isAdmin();}], - ['filebrowser', - $this->_('Explorateur de fichiers'), - '/admin/file-manager', - [], - $is_admin], + ['filebrowser', $this->_('Explorateur de fichiers'), '/admin/file-manager'], ['customfields', $this->_('Champs personnalisés'), '/admin/custom-fields/index', [], $is_admin], ['customreports', $this->_('Rapports statistiques'), '/admin/custom-fields-report', [], $is_admin] diff --git a/tests/application/modules/admin/controllers/FileManagerControllerTest.php b/tests/application/modules/admin/controllers/FileManagerControllerTest.php index bec108a0212cade1f4b4b368ef9d620da9fe7db4..6308e9e8b807a7c9d3546b819799c7ae1047bb79 100644 --- a/tests/application/modules/admin/controllers/FileManagerControllerTest.php +++ b/tests/application/modules/admin/controllers/FileManagerControllerTest.php @@ -1450,3 +1450,27 @@ class FileManagerControllerSplitIndexUnknownPathDispatchTest extends Admin_Abstr $this->assertXPathContentContains('//div[contains(@class, "browser")]/h2//a[contains(@href, "/admin/file-manager/index?browser=")]', 'userfiles'); } } + + + + +class FileManagerControllerAsModoBibTest extends Admin_AbstractControllerTestCase { + public function setUp() { + parent::setUp(); + + ZendAfi_Auth::getInstance()->logUser($this->fixture('Class_Users', + ['id' => 5, + 'login' => 'modo bib', + 'password' => 'modo bib', + 'role_level' => ZendAfi_Acl_AdminControllerRoles::MODO_BIB, + 'id_site' => 2])); + + $this->dispatch('/admin/file-manager', true); + } + + + /** @test */ + public function modoBibCouldAccessFileBrowser() { + $this->assertXPathContentContains('//body[contains(@class, "admin")]//div', 'Explorateur de fichier'); + } +} \ No newline at end of file diff --git a/tests/library/ZendAfi/View/Helper/Admin/MenuGaucheAdminTest.php b/tests/library/ZendAfi/View/Helper/Admin/MenuGaucheAdminTest.php index 9100dbcd7f3bf3c46c8dc47aa8099f2aa3b16696..c2cfb28bd9c104d1a96761e0f7ad0c6d7b84501c 100644 --- a/tests/library/ZendAfi/View/Helper/Admin/MenuGaucheAdminTest.php +++ b/tests/library/ZendAfi/View/Helper/Admin/MenuGaucheAdminTest.php @@ -245,7 +245,8 @@ Trait MenuGaucheAdminRolesDefinition { 'custom-fields-report', 'type-docs', 'systeme/importthesaurus', - 'systeme/updatethesaurus' + 'systeme/updatethesaurus', + 'file-manager', ]; } @@ -288,12 +289,12 @@ Trait MenuGaucheAdminRolesDefinition { 'index/adminvar', 'systeme/cacheimage', 'systeme/generationsite', - 'file-manager', 'custom-fields', 'custom-fields-report', 'type-docs', 'systeme/importthesaurus', - 'systeme/updatethesaurus' + 'systeme/updatethesaurus', + 'file-manager' ] ], [ZendAfi_Acl_AdminControllerRoles::MODO_PORTAIL, @@ -304,6 +305,7 @@ Trait MenuGaucheAdminRolesDefinition { 'modo/membreview', 'newsletter', 'stat/rechercheinfructueuse', + 'file-manager' ] ], [ZendAfi_Acl_AdminControllerRoles::ADMIN_BIB, @@ -329,7 +331,8 @@ Trait MenuGaucheAdminRolesDefinition { 'stat/rechercheinfructueuse', 'bib', 'users', - 'usergroup' + 'usergroup', + 'file-manager', ] ], [ZendAfi_Acl_AdminControllerRoles::MODO_BIB, @@ -339,6 +342,7 @@ Trait MenuGaucheAdminRolesDefinition { 'modo', 'modo/membreview', 'stat/rechercheinfructueuse', + 'file-manager', ] ] ]; }