Common.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | 海豚PHP框架 [ DolphinPHP ]
  4. // +----------------------------------------------------------------------
  5. // | 版权所有 2016~2017 河源市卓锐科技有限公司 [ http://www.zrthink.com ]
  6. // +----------------------------------------------------------------------
  7. // | 官方网站: http://dolphinphp.com
  8. // +----------------------------------------------------------------------
  9. // | 开源协议 ( http://www.apache.org/licenses/LICENSE-2.0 )
  10. // +----------------------------------------------------------------------
  11. namespace app\cms\home;
  12. use app\index\controller\Home;
  13. use think\Db;
  14. use util\Tree;
  15. /**
  16. * 前台公共控制器
  17. * @package app\cms\admin
  18. */
  19. class Common extends Home
  20. {
  21. /**
  22. * 初始化方法
  23. * @author 蔡伟明 <314013107@qq.com>
  24. */
  25. protected function _initialize()
  26. {
  27. parent::_initialize();
  28. // 获取菜单
  29. $this->getNav();
  30. // 获取滚动图片
  31. $this->assign('slider', $this->getSlider());
  32. // 获取客服
  33. $this->assign('support', $this->getSupport());
  34. }
  35. /**
  36. * 获取导航
  37. * @author 蔡伟明 <314013107@qq.com>
  38. */
  39. private function getNav()
  40. {
  41. $list_nav = Db::name('cms_nav')->where('status', 1)->column('id,tag');
  42. foreach ($list_nav as $id => $tag) {
  43. $data_list = Db::view('cms_menu', true)
  44. ->view('cms_column', ['name' => 'column_name'], 'cms_menu.column=cms_column.id', 'left')
  45. ->view('cms_page', ['title' => 'page_title'], 'cms_menu.page=cms_page.id', 'left')
  46. ->where('cms_menu.nid', $id)
  47. ->where('cms_menu.status', 1)
  48. ->order('cms_menu.sort,cms_menu.pid,cms_menu.id')
  49. ->select();
  50. foreach ($data_list as &$item) {
  51. if ($item['type'] == 0) { // 栏目链接
  52. $item['title'] = $item['column_name'];
  53. $item['url'] = url('cms/column/index', ['id' => $item['column']]);
  54. } elseif ($item['type'] == 1) { // 单页链接
  55. $item['title'] = $item['page_title'];
  56. $item['url'] = url('cms/page/detail', ['id' => $item['page']]);
  57. } else {
  58. if ($item['url'] != '#' && substr($item['url'], 0, 4) != 'http') {
  59. $item['url'] = url($item['url']);
  60. }
  61. }
  62. }
  63. $this->assign($tag, Tree::toLayer($data_list));
  64. }
  65. }
  66. /**
  67. * 获取滚动图片
  68. * @author 蔡伟明 <314013107@qq.com>
  69. */
  70. private function getSlider()
  71. {
  72. return Db::name('cms_slider')->where('status', 1)->select();
  73. }
  74. /**
  75. * 获取在线客服
  76. * @author 蔡伟明 <314013107@qq.com>
  77. */
  78. private function getSupport()
  79. {
  80. return Db::name('cms_support')->where('status', 1)->order('sort')->select();
  81. }
  82. }