/** * @param $user * @param bool $selected * @return array */ public static function getVisibleAndOrderedTabMenuItemsByUser($user, $selected = false) { $visibleAndOrderedTabMenuItems = array(); $tabMenuItems = MenuUtil::getVisibleAndOrderedTabMenuByUser($user); foreach ($tabMenuItems as $menuItem) { if ($selected === true) { $visibleAndOrderedTabMenuItems[] = $menuItem['moduleId']; } else { $moduleId = $menuItem['moduleId']; $visibleAndOrderedTabMenuItems[$moduleId] = $menuItem['label']; } } return $visibleAndOrderedTabMenuItems; }
public function testEditTabMenuOrderByMakeFormAndSetConfigurationFromForm() { $sally = User::getByUsername('sally'); $form = UserConfigurationFormAdapter::makeFormFromUserConfigurationByUser($sally); $this->assertEquals(count($form->selectedVisibleAndOrderedTabMenuItems), count(MenuUtil::getVisibleAndOrderedTabMenuByUser($sally))); $defaultOrderedTabMenuItems = $form->selectedVisibleAndOrderedTabMenuItems; $customOrderedTabMenuItems = array_reverse($defaultOrderedTabMenuItems); $form->selectedVisibleAndOrderedTabMenuItems = $customOrderedTabMenuItems; UserConfigurationFormAdapter::setConfigurationFromForm($form, $sally); $form = UserConfigurationFormAdapter::makeFormFromUserConfigurationByUser($sally); $this->assertEquals($form->selectedVisibleAndOrderedTabMenuItems, $customOrderedTabMenuItems); $billy = User::getByUsername('billy'); $form = UserConfigurationFormAdapter::makeFormFromUserConfigurationByUser($billy); $this->assertEquals($form->selectedVisibleAndOrderedTabMenuItems, $defaultOrderedTabMenuItems); $form->selectedVisibleAndOrderedTabMenuItems = $customOrderedTabMenuItems; UserConfigurationFormAdapter::setConfigurationFromForm($form, $billy); $form = UserConfigurationFormAdapter::makeFormFromUserConfigurationByUser($billy); $this->assertEquals($form->selectedVisibleAndOrderedTabMenuItems, $customOrderedTabMenuItems); }