diff --git a/application/modules/admin/controllers/WidgetController.php b/application/modules/admin/controllers/WidgetController.php index 56e9e07c74a55c37a8fd672db43213dc0d1e4d30..443b3ea71703de37fbdbc3a66614c3b16947d266 100644 --- a/application/modules/admin/controllers/WidgetController.php +++ b/application/modules/admin/controllers/WidgetController.php @@ -92,7 +92,7 @@ class Admin_WidgetController extends ZendAfi_Controller_Action { $id = $this->_getParam('id'); $profil = Class_Profil::find($this->_getParam('id_profil')); $menus = $profil->getCfgMenusAsArray(); - unset($menus[$id_menu]); + unset($menus[$id]); $message = $this->_('Une erreur c\'est produite, le menu n\'a pas pu être supprimé'); if($profil->setCfgMenus($menus)->save()) diff --git a/tests/scenarios/Widgets/WidgetsTest.php b/tests/scenarios/Widgets/WidgetsTest.php index c42f886c17c36aa843eded0b91caa9470437658c..313e03e008b8ba669d90c629fc45284e0f2effb8 100644 --- a/tests/scenarios/Widgets/WidgetsTest.php +++ b/tests/scenarios/Widgets/WidgetsTest.php @@ -506,3 +506,34 @@ class WidgetsVerticalMenuWithDeepMenuTest extends WidgetsSimpleTestCase { $this->assertXPath('//ul//li//ul//li//a[contains(@href, "admin/widget/edit-menu/id/4/id_profil/2/parent/V/")][contains(@title, "Modifier l\'entrée")]'); } } + + + +class WidgetsDeleteMenuTest extends WidgetsSimpleTestCase { + + public function setUp() { + parent::setUp(); + $profil = Class_Profil::getCurrentProfil(); + $cfg = $profil->getCfgMenusAsArray(); + $h = $cfg['H']; + $cfg['V'] = $h; + + $profil->setCfgMenus($cfg)->save(); + + $this->dispatch('admin/widget/delete-menu/id/V/id_profil/2', true); + } + + + /** @test */ + public function shouldRedirect() { + $this->assertRedirect(); + } + + + /** @test */ + public function verticalMenuShouldHaveBeenDeleted() { + Class_Profil::clearCache(); + $cfg = Class_Profil::getCurrentProfil()->getCfgMenusAsArray(); + $this->assertFalse(isset($cfg['V'])); + } +} \ No newline at end of file