protected function renderSearchView() { $moduleNamesAndLabels = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser(Yii::app()->user->userModel); $sourceUrl = Yii::app()->createUrl('zurmo/default/globallist'); GlobalSearchUtil::resolveModuleNamesAndLabelsDataWithAllOption($moduleNamesAndLabels); $searchView = new MixedModelsSearchView($moduleNamesAndLabels, $sourceUrl, $this->term, $this->scopeData); return $searchView->render(); }
protected static function resolveItemsAsItemsForMobile(&$items, &$useMinimalDynamicLabelMbMenu, $controller = null) { $useMinimalDynamicLabelMbMenu = true; static::$showRecentlyViewed = false; $controller = $controller ? $controller : Yii::app()->request->controller; $shortcutsCreateMenuItems = MenuUtil::getAccessibleShortcutsCreateMenuByCurrentUser(); static::resolveShortcutsCreateMenuItemsForMobile($shortcutsCreateMenuItems); $shortcutsCreateMenuView = new MobileShortcutsCreateMenuView($controller->getId(), $controller->getModule()->getId(), $shortcutsCreateMenuItems); $moduleNamesAndLabels = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser(Yii::app()->user->userModel); $sourceUrl = Yii::app()->createUrl('zurmo/default/globalSearchAutoComplete'); $globalSearchView = new MobileGlobalSearchView($moduleNamesAndLabels, $sourceUrl); $recentlyViewed = static::makeRecentlyViewedView(); $recentlyViewedMenu = $recentlyViewed->renderMenu(); $searchItem = array(array('label' => '', 'dynamicLabelContent' => $globalSearchView->render(), 'itemOptions' => array('id' => 'search'))); $shortcutsItems = array(array('label' => '', 'dynamicLabelContent' => $shortcutsCreateMenuView->render(), 'itemOptions' => array('id' => 'shortcuts'))); $recentlyViewedItems = array(array('label' => '', 'dynamicLabelContent' => MobileHtml::renderFlyoutTrigger('Recently Viewed'), 'itemOptions' => array('id' => 'recently-viewed'), 'items' => $recentlyViewedMenu ? $recentlyViewedMenu : null)); $items = CMap::mergeArray($searchItem, $items, $shortcutsItems, $recentlyViewedItems); }
/** * makeViews * @return array moduleName => listView */ private function makeViews() { $globalSearchModuleNamesAndLabelsData = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser($this->user); foreach ($globalSearchModuleNamesAndLabelsData as $moduleName => $label) { $titleView = new TitleBarView($label, null, 1); $iconClassName = Yii::app()->findModule($moduleName)->getSingularCamelCasedName(); $titleView->setCssClasses(array($iconClassName)); $this->views['titleBar-' . $moduleName] = $titleView; $this->views[$moduleName] = $this->getListView($moduleName, true); } }
/** * @depends testGetGlobalSearchScopingModuleNamesAndLabelsDataByUser */ public function testGetGlobalSearchScopingModuleNamesAndLabelsDataByUserForRegularUser() { Yii::app()->user->userModel = User::getByUsername('super'); $billy = UserTestHelper::createBasicUser('Billy'); $scopeModulesAndLabels = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser($billy); $compareData = array(); $this->assertEquals($compareData, $scopeModulesAndLabels); $scopeModulesAndLabels = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser($billy); //Now add rights for billy to the AccountsModule. $billy->setRight('AccountsModule', AccountsModule::RIGHT_ACCESS_ACCOUNTS); $this->assertTrue($billy->save()); //At this point because the data is was cleared after billy saved, it should show Accounts. $scopeModulesAndLabels = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser($billy); $compareData = array('accounts' => 'Accounts'); $this->assertEquals($compareData, $scopeModulesAndLabels); }
protected static function makeHeaderView(CController $controller) { $headerView = null; $settingsMenuItems = MenuUtil::getOrderedAccessibleHeaderMenuForCurrentUser(); $settingsMenuItems = static::resolveHeaderMenuItemsForMobile($settingsMenuItems); $userMenuItems = static::getAndResolveUserMenuItemsForHeader(); $applicationName = ZurmoConfigurationUtil::getByModuleName('ZurmoModule', 'applicationName'); $shortcutsCreateMenuItems = MenuUtil::getAccessibleShortcutsCreateMenuByCurrentUser(); $moduleNamesAndLabels = GlobalSearchUtil::getGlobalSearchScopingModuleNamesAndLabelsDataByUser(Yii::app()->user->userModel); $sourceUrl = Yii::app()->createUrl('zurmo/default/globalSearchAutoComplete'); GlobalSearchUtil::resolveModuleNamesAndLabelsDataWithAllOption($moduleNamesAndLabels); $headerView = new HeaderView($settingsMenuItems, $userMenuItems, $shortcutsCreateMenuItems, $moduleNamesAndLabels, $sourceUrl, $applicationName); $headerView->setCssClasses(array('HeaderView')); return $headerView; }