/** * Application configuration. * * @return string */ public function actionViewConfig() { $loadedModules = Metadata::getModules(); $loadedModulesDataProvider = new ArrayDataProvider(['allModels' => $loadedModules]); $components = Yii::$app->getComponents(); ksort($components); $modules = Yii::$app->getModules(); ksort($modules); return $this->render('view-config', ['params' => Yii::$app->params, 'components' => $components, 'modules' => $modules, 'loadedModulesDataProvider' => $loadedModulesDataProvider]); }
<div class="input-group"> <input type="text" name="q" class="form-control" placeholder="Search..."/> <span class="input-group-btn"> <button type='submit' name='seach' id='search-btn' class="btn btn-flat"><i class="fa fa-search"></i></button> </span> </div> </form>--> <!-- /.search form --> <?php // prepare menu items, get all modules $menuItems = []; $favouriteMenuItems[] = ['label' => 'MAIN NAVIGATION', 'options' => ['class' => 'header']]; $developerMenuItems = []; foreach (\dmstr\helpers\Metadata::getModules() as $name => $module) { $role = $name; $defaultItem = ['icon' => 'fa fa-cube', 'label' => $name, 'url' => ['/' . $name], 'visible' => Yii::$app->user->can($role) || Yii::$app->user->identity && Yii::$app->user->identity->isAdmin, 'items' => []]; // check for module configuration and assign to favourites $moduleConfigItem = is_object($module) ? isset($module->params['menuItems']) ? $module->params['menuItems'] : [] : (isset($module['params']['menuItems']) ? $module['params']['menuItems'] : []); switch (true) { case !empty($moduleConfigItem): $moduleConfigItem = array_merge($defaultItem, $moduleConfigItem); $moduleConfigItem['visible'] = \dmstr\helpers\RouteAccess::can($moduleConfigItem['url']); $favouriteMenuItems[] = $moduleConfigItem; continue 2; break; default: $defaultItem['icon'] = 'fa fa-circle-o'; $developerMenuItems[] = $defaultItem; break;