Module Function Hooks \ getNavItems - mymagic/open_hub GitHub Wiki

function getNavItems($controller, $forInterface){}

This function is called to all modules by initBackendMenu() in protected/components/Controller.php, to acquired navigation items.

Available $forInterface code:

  • Backend

    • backendNavService

      add link under service menu image

    • backendNavDev

      add link under Dev (development) menu, only visible to developer role image

    • backendNavUserService

      add link under user avatar menu image

  • Event

    • eventAdminSideNav
  • Cpanel

    • cpanelNavDashboard
    • cpanelNavSetting
    • cpanelNavCompany
    • cpanelNavCompanyInformation
  • External modules

    • MdecMSC
      • mdecMscAdminSideNav
public function getNavItems($controller, $forInterface)
{
    switch ($forInterface) {
        case 'backendNavService':

            return array(
                array(
                    'label' => Yii::t('backend', 'Open Innovation Challenge'), 'url' => '#',
                    'visible' => HUB::roleCheckerAction(Yii::app()->user->getState('rolesAssigned'), (object)['id' => 'backend', 'action' => (object)array('id' => 'index'), 'module' => (object)array('id' => 'challenge')))),
                    'active' => $controller->activeMenuMain == 'challenge' ? true : false,
                    'itemOptions' => array('class' => 'dropdown-submenu'), 'submenuOptions' => array('class' => 'dropdown-menu'),
                    'linkOptions' => array('class' => 'dropdown-toggle', 'data-toggle' => 'dropdown'),
                    'items' => array(
                        array('label' => Yii::t('app', 'Challenge Overview'), 'url' => array('/challenge/backend'), 'visible' => HUB::roleCheckerAction(Yii::app()->user->getState('rolesAssigned'), (object)array('id' => 'backend', 'action' => (object)array('id' => 'index'), 'module' => (object)array('id' => 'challenge')))),
                    ),
                ),
            );

            break;
    }
}