diff --git a/VERSIONS_HOTLINE/28305 b/VERSIONS_HOTLINE/28305 new file mode 100644 index 0000000000000000000000000000000000000000..57a3bb92a4e5b0d3dcc9efe403d8b9857e67bd63 --- /dev/null +++ b/VERSIONS_HOTLINE/28305 @@ -0,0 +1 @@ + - ticket #28305 : seul les admins et le super admin ont la possibilité de modifier le nom du domaine \ No newline at end of file diff --git a/application/modules/admin/views/scripts/index/index.phtml b/application/modules/admin/views/scripts/index/index.phtml index 4ed4d8fa28aa3d11df8d7f631d38597a8928e828..50aed3678a94a28103e4c16c635fd8004d3c8e1b 100644 --- a/application/modules/admin/views/scripts/index/index.phtml +++ b/application/modules/admin/views/scripts/index/index.phtml @@ -9,7 +9,7 @@ echo $this->tag('h2', <h2><?php echo $this->traduire('Paramètres du site');?> :</h2> <?php $profil = Class_Profil::getCurrentProfil(); -$lien_edit_site = $lien = ''; +$lien_edit_site = $lien = $edit_domain_name = ''; if ($this->user->isAdmin()) { $lien = sprintf('<a href="admin?setsiteok=%s" style="margin-left:30px">» %s «</a>', $this->href_site, $this->lien_site); @@ -17,19 +17,20 @@ if ($this->user->isAdmin()) { $this->url(array('controller' => 'profil', 'action' => 'accueil', 'id_profil' => $profil->getId()))); + + $edit_domain_name = $this->tagAnchor($this->url(['module' => 'admin', + 'controller' => 'index', + 'action' => 'adminvaredit', + 'cle'=> 'NOM_DOMAINE']), + '» Modifier «', + ['style' => 'margin-left: 30px;', + 'data-popup' => 'true']); } echo $this->ligneInfos("Etat du site", $this->etat_site . $lien) . $this->ligneInfos("Profil", $profil->getLibelle() . $lien_edit_site) . $this->ligneInfos("Thème", $profil->getSkin()) - . $this->ligneInfos('Nom du domaine', - Class_AdminVar::get('NOM_DOMAINE') . $this->tagAnchor($this->url(['module' => 'admin', - 'controller' => 'index', - 'action' => 'adminvaredit', - 'cle'=> 'NOM_DOMAINE']), - '» Modifier «', - ['style' => 'margin-left: 30px;', - 'data-popup' => 'true'])); + . $this->ligneInfos('Nom du domaine', Class_AdminVar::get('NOM_DOMAINE') . $edit_domain_name); ?> <h2><?php echo $this->traduire('Accès');?> :</h2> diff --git a/tests/application/modules/admin/controllers/AdminIndexControllerTest.php b/tests/application/modules/admin/controllers/AdminIndexControllerTest.php index 84ea24a939f5c22187f2185e3b4de4ac3acf1293..8749bc6df5f13876f7ab287cb273470a3ff50a45 100644 --- a/tests/application/modules/admin/controllers/AdminIndexControllerTest.php +++ b/tests/application/modules/admin/controllers/AdminIndexControllerTest.php @@ -664,3 +664,36 @@ class AdminIndexControllerAdminVarEditComboInvalidPostActionTest $this->assertNotEquals(19, Class_AdminVar::get('NEWSLETTER_ID_PROFIL')); } } + + + +class AdminIndexControllerDisplayModifierNomDomaineTest extends AbstractControllerTestCase { + + /** @test */ + public function ModifierNomDomaineShouldBePresent() { + $user = $this->fixture('Class_Users', ['id' => 8, + 'login' => 'joe', + 'password' => 'foo', + 'role_level' => ZendAfi_Acl_AdminControllerRoles::ADMIN_PORTAIL]); + + ZendAfi_Auth::getInstance()->logUser($user); + + $this->dispatch('/admin/index', true); + + $this->assertXpathContentContains('//div[@class="modules"]//a', 'Modifier'); + } + + /** @test */ + public function ModifierNomDomaineShouldNotBePresent() { + $user = $this->fixture('Class_Users', ['id' => 8, + 'login' => 'joe', + 'password' => 'foo', + 'role_level' => ZendAfi_Acl_AdminControllerRoles::MODO_PORTAIL]); + + ZendAfi_Auth::getInstance()->logUser($user); + + $this->dispatch('/admin/index', true); + + $this->assertNotXpathContentContains('//div[@class="modules"]//a', 'Modifier'); + } +}