src/Controller/HelpTextController.php
protected function adminGetHelpTextNavigation(array $dashBoardGroups, $locale, $helpTextManager)
    {
        $navArray = [];

        //add overview & dashboard manually
        $navArray['overview']['group_name'] = $this->get('translator')->trans(
            'title.help',
            [],
            'HelpTextAdmin'
        );
        $navArray['overview']['group_items']['0']['adminCode'] = 'overview';
        $navArray['overview']['group_items']['0']['action'] = '';
        $navArray['overview']['group_items']['0']['title'] = $this->get('translator')->trans(
            'overview.title',
            [],
            'HelpTextAdmin'
        );

        $navArray['dashboard']['group_name'] = 'Dashboard';
        $navArray['dashboard']['group_items']['0']['adminCode'] = 'dashboard';
        $navArray['dashboard']['group_items']['0']['action'] = '';
        $navArray['dashboard']['group_items']['0']['title'] = $this->get('translator')->trans(
            'dashboard.title',
            [],
            'HelpTextAdmin'
        );

        foreach ($dashBoardGroups as $key => $group) {
            foreach ($group['sub_group'] as $subGroup) {
                $navArray[$subGroup['label']]['group_items'] = [];
                $i = 0;
                foreach ($subGroup['items'] as $admin) {
                    if (0 == $i++) {
                        $navArray[$subGroup['label']]['group_name'] = $this->get('translator')->trans(
                            $subGroup['label'],
                            [],
                            $admin->getTranslationDomain()
                        );
                    }

                    $help_text_result = $helpTextManager->searchHelpTextByKeyLocale($admin->getCode(), $locale);
                    if (count($help_text_result) > 0) {
                        foreach ($help_text_result as $row) {
                            //split Translation Key into adminCode and action
                            $strripos = strripos($row->getTranslationKey(), '.');
                            $action = substr($row->getTranslationKey(), $strripos + 1);
                            $navArray[$subGroup['label']]['group_items'][$row->getId()]['adminCode'] = $admin->getCode(
                            );
                            $navArray[$subGroup['label']]['group_items'][$row->getId()]['action'] = $action;
                            $navArray[$subGroup['label']]['group_items'][$row->getId()]['title'] = $row->getTitle();
                        }
                    }
                }
            }
        }

        return $navArray;
    }
protected function adminGetHelpTextNavigation(array $dashBoardGroups, $locale, $helpTextManager)
    {
        $navArray = [];

        //add overview & dashboard manually
        $navArray['overview']['group_name'] = $this->get('translator')->trans(
            'title.help',
            [],
            'HelpTextAdmin'
        );
        $navArray['overview']['group_items']['0']['adminCode'] = 'overview';
        $navArray['overview']['group_items']['0']['action'] = '';
        $navArray['overview']['group_items']['0']['title'] = $this->get('translator')->trans(
            'overview.title',
            [],
            'HelpTextAdmin'
        );

        $navArray['dashboard']['group_name'] = 'Dashboard';
        $navArray['dashboard']['group_items']['0']['adminCode'] = 'dashboard';
        $navArray['dashboard']['group_items']['0']['action'] = '';
        $navArray['dashboard']['group_items']['0']['title'] = $this->get('translator')->trans(
            'dashboard.title',
            [],
            'HelpTextAdmin'
        );

        foreach ($dashBoardGroups as $key => $group) {
            foreach ($group['sub_group'] as $subGroup) {
                $navArray[$subGroup['label']]['group_items'] = [];
                $i = 0;
                foreach ($subGroup['items'] as $admin) {
                    if (0 == $i++) {
                        $navArray[$subGroup['label']]['group_name'] = $this->get('translator')->trans(
                            $subGroup['label'],
                            [],
                            $admin->getTranslationDomain()
                        );
                    }

                    $help_text_result = $helpTextManager->searchHelpTextByKeyLocale($admin->getCode(), $locale);
                    if (count($help_text_result) > 0) {
                        foreach ($help_text_result as $row) {
                            //split Translation Key into adminCode and action
                            $strripos = strripos($row->getTranslationKey(), '.');
                            $action = substr($row->getTranslationKey(), $strripos + 1);
                            $navArray[$subGroup['label']]['group_items'][$row->getId()]['adminCode'] = $admin->getCode(
                            );
                            $navArray[$subGroup['label']]['group_items'][$row->getId()]['action'] = $action;
                            $navArray[$subGroup['label']]['group_items'][$row->getId()]['title'] = $row->getTitle();
                        }
                    }
                }
            }
        }

        return $navArray;
    }
protected function adminGetHelpTextNavigation ( array $ dashBoardGroups , $ locale , $ helpTextManager ) { $ navArray = [ ] ; //add overview & dashboard manually $ navArray [ 'overview' ] [ 'group_name' ] = $ this -> get ( 'translator' ) -> trans ( 'title.help' , [ ] , 'HelpTextAdmin' ) ; $ navArray [ 'overview' ] [ 'group_items' ] [ '0' ] [ 'adminCode' ] = 'overview' ; $ navArray [ 'overview' ] [ 'group_items' ] [ '0' ] [ 'action' ] = '' ; $ navArray [ 'overview' ] [ 'group_items' ] [ '0' ] [ 'title' ] = $ this -> get ( 'translator' ) -> trans ( 'overview.title' , [ ] , 'HelpTextAdmin' ) ; $ navArray [ 'dashboard' ] [ 'group_name' ] = 'Dashboard' ; $ navArray [ 'dashboard' ] [ 'group_items' ] [ '0' ] [ 'adminCode' ] = 'dashboard' ; $ navArray [ 'dashboard' ] [ 'group_items' ] [ '0' ] [ 'action' ] = '' ; $ navArray [ 'dashboard' ] [ 'group_items' ] [ '0' ] [ 'title' ] = $ this -> get ( 'translator' ) -> trans ( 'dashboard.title' , [ ] , 'HelpTextAdmin' ) ; foreach ( $ dashBoardGroups as $ key => $ group ) { foreach ( $ group [ 'sub_group' ] as $ subGroup ) { $ navArray [ $ subGroup [ 'label' ] ] [ 'group_items' ] = [ ] ; $ i = 0 ; foreach ( $ subGroup [ 'items' ] as $ admin ) { if ( 0 == $ i ++ ) { $ navArray [ $ subGroup [ 'label' ] ] [ 'group_name' ] = $ this -> get ( 'translator' ) -> trans ( $ subGroup [ 'label' ] , [ ] , $ admin -> getTranslationDomain ( ) ) ; } $ help_text_result = $ helpTextManager -> searchHelpTextByKeyLocale ( $ admin -> getCode ( ) , $ locale ) ; if ( count ( $ help_text_result ) > 0 ) { foreach ( $ help_text_result as $ row ) { //split Translation Key into adminCode and action $ strripos = strripos ( $ row -> getTranslationKey ( ) , '.' ) ; $ action = substr ( $ row -> getTranslationKey ( ) , $ strripos + 1 ) ; $ navArray [ $ subGroup [ 'label' ] ] [ 'group_items' ] [ $ row -> getId ( ) ] [ 'adminCode' ] = $ admin -> getCode ( ) ; $ navArray [ $ subGroup [ 'label' ] ] [ 'group_items' ] [ $ row -> getId ( ) ] [ 'action' ] = $ action ; $ navArray [ $ subGroup [ 'label' ] ] [ 'group_items' ] [ $ row -> getId ( ) ] [ 'title' ] = $ row -> getTitle ( ) ; } } } } } return $ navArray ; }
Create the navigation for the help text view.

@param array $dashBoardGroups
@param $locale
@param $helpTextManager

@return array
Create the navigation for the help text view .