header.php 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?php
  2. use common\modules\rbac\components\MenuHelper;
  3. use yii\helpers\Html;
  4. use yii\helpers\Url;
  5. /* @var $this \yii\web\View */
  6. /* @var $content string */
  7. $logCount = \backend\models\SystemLog::find()->count();
  8. $menuGroups = MenuHelper::getAssignedMenu(Yii::$app->user->id, null, function ($menu){
  9. return [
  10. 'id' => $menu['id'],
  11. 'name' => $menu['name'],
  12. 'icon' => $menu['icon'],
  13. ];
  14. });
  15. ?>
  16. <header class="main-header">
  17. <?= Html::a('<span class="logo-mini">'.mb_substr(Yii::$app->config->get('name'),0,1,'utf-8').'</span><span class="logo-lg">' . Yii::$app->config->get('name') . '</span>', Yii::$app->homeUrl, ['class' => 'logo']) ?>
  18. <nav class="navbar navbar-static-top" role="navigation">
  19. <a href="#" class="sidebar-toggle" data-toggle="offcanvas" role="button">
  20. <span class="sr-only">Toggle navigation</span>
  21. </a>
  22. <div class="navbar-custom-menu">
  23. <ul class="nav navbar-nav">
  24. <!--<li><?/*= Html::a('<i class="fa fa-home"></i>', Yii::$app->config->get('SITE_URL'), ['target' => '_blank', 'data-not-iframe' => '1']) */?></li>-->
  25. <li><?= Html::a('<i class="fa fa-adn"></i>', Url::to(['/site/icons']), ['target' => '_blank']) ?></li>
  26. <li id="log-dropdown" class="dropdown notifications-menu">
  27. <a href="#" class="dropdown-toggle" data-toggle="dropdown">
  28. <i class="fa fa-warning"></i>
  29. <?php if($logCount > 0) : ?>
  30. <span class="label label-danger">
  31. <?= $logCount ?>
  32. </span>
  33. <?php endif; ?>
  34. </a>
  35. <ul class="dropdown-menu">
  36. <li class="header">
  37. <?= sprintf('你有%d条日志', $logCount) ?>
  38. </li>
  39. <li>
  40. <!-- inner menu: contains the actual data -->
  41. <ul class="menu">
  42. <?php foreach(\backend\models\SystemLog::find()->orderBy(['log_time'=>SORT_DESC])->limit(5)->all() as $logEntry): ?>
  43. <li>
  44. <a href="<?= Url::to(['/log/view', 'id'=>$logEntry->id]) ?>" target="_blank" title="错误日志">
  45. <i class="fa fa-warning <?= $logEntry->level == \yii\log\Logger::LEVEL_ERROR ? 'text-red' : 'text-yellow' ?>"></i>
  46. <?= $logEntry->category ?>
  47. </a>
  48. </li>
  49. <?php endforeach; ?>
  50. </ul>
  51. </li>
  52. <li class="footer">
  53. <?= Html::a('查看全部', ['/log/index'], ['target' => '_blank', 'title' => '错误日志']) ?>
  54. </li>
  55. </ul>
  56. </li>
  57. <li class="dropdown user user-menu">
  58. <a href="#"
  59. class="dropdown-toggle" data-toggle="dropdown"> <img
  60. src="<?= Yii::$app->user->identity->getAvatar(96) ;?>" class="user-image"
  61. alt="User Image" /> <span class="hidden-xs"><?= Yii::$app->user->identity->nickname ?></span>
  62. </a>
  63. <ul class="dropdown-menu">
  64. <!-- User image -->
  65. <li class="user-header"><img
  66. src="<?= Yii::$app->user->identity->getAvatar(96) ;?>" class="img-circle"
  67. alt="User Image" />
  68. <p>
  69. <?= Yii::$app->user->identity->nickname ?> - <?= current(Yii::$app->authManager->getRolesByUser(Yii::$app->user->id))->description ?>
  70. <small>注册时间:<?= Yii::$app->formatter->asDate(Yii::$app->user->identity->created_at) ?></small>
  71. </p></li>
  72. <!-- Menu Footer-->
  73. <li class="user-footer">
  74. <div class="pull-left">
  75. <?= Html::a('重置密码', ['/user/default/reset-password', 'id' => Yii::$app->user->id], ['class' => 'btn btn-default', 'target' => '_blank', 'title' => '修改密码'])?>
  76. </div>
  77. <div class="pull-right">
  78. <?= Html::a('修改信息', ['/user/default/update', 'id' => Yii::$app->user->id], ['class' => 'btn btn-default ', 'target' => '_blank', 'title' => '修改用户']) ?>
  79. </div>
  80. <!--<div class="pull-right">
  81. <?/*= Html::a('登出', ['/user/default/logout' ], ['data-method' => 'post', 'class' => 'btn btn-default'])*/?>
  82. </div>-->
  83. </li>
  84. </ul>
  85. </li>
  86. <li><?= Html::a('<i class="fa fa-sign-out"></i>', ['/user/default/logout'], ['data-method' => 'post', 'title' => '退出登录']) ?></li>
  87. </ul>
  88. </div>
  89. <div class="navbar-header">
  90. <button class="btn btn-default btn-sm navbar-toggle collapsed"
  91. type="button" data-toggle="collapse" data-target=".navbar-collapse">
  92. <span class="caret"></span>
  93. </button>
  94. </div>
  95. <div class="navbar-collapse collapse" role="navigation">
  96. <ul class="navbar-nav nav">
  97. <?php foreach ($menuGroups as $key => $menuGroup) : ?>
  98. <li <?php if ($key == 0) {echo 'class="active"';} ?>><a href="#menu-group-<?= $menuGroup['id'] ?> " data-toggle="tab"><?= Html::icon($menuGroup['icon']) ?> <?= $menuGroup['name'] ?></a></li>
  99. <?php endforeach; ?>
  100. </ul>
  101. </div>
  102. </nav>
  103. </header>
  104. <aside class="main-sidebar">
  105. <section class="sidebar">
  106. <div class="tab-content">
  107. <?php foreach ($menuGroups as $key => $menuGroup): ?>
  108. <div class="tab-pane <?php if ($key == 0) {echo 'active';} ?>" id="menu-group-<?= $menuGroup['id'] ?>">
  109. <?= \backend\widgets\Menu::widget([
  110. 'options' => ['class' => 'sidebar-menu'],
  111. 'items' => MenuHelper::getAssignedMenu(Yii::$app->user->id, $menuGroup['id'])
  112. ]) ?>
  113. </div>
  114. <?php endforeach; ?>
  115. </div>
  116. </section>
  117. </aside>