12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2018/11/12
- * Time: 10:58
- */
- namespace App\Repositories;
- use App\Models\Page;
- use Illuminate\Support\Facades\Cache;
- use Prettus\Repository\Eloquent\BaseRepository;
- /**
- * Class PageRepositoryEloquent.
- *
- * @package namespace App\Repositories;
- */
- class PageRepository extends BaseRepository
- {
- /**
- * Specify Model class name
- *
- * @return string
- */
- public function model()
- {
- return Page::class;
- }
- public static function pageCache()
- {
- /* if (!config('aix.system.site_safety.subsite.close_subsite')) {
- $where['subsite_id'] = Cache::get('subsite_id');
- }
- $cache = '_'.Cache::get('subsite_id');*/
- $cache = '';
- //$where['type'] = 'Home';
- $where = array();
- if (null === $pageList = Cache::get('Home_page_list'.$cache)) {
- $pages = Page::select('alias', 'id', 'pname', 'route', 'rewrite', 'url', 'tag', 'caching')->where($where)->get();
- foreach ($pages as $key => $val) {
- $pageList[$val->alias] = $val;
- $pageList[$val->alias]->lower_route = strtolower($val->route);
- }
- Cache::forever('Home_page_list'.$cache, $pageList);
- }
- return $pageList;
- }
- public function getPage()
- {
- /*if (Cache::has('subsite_id')) {
- $subsite_id = Cache::get('subsite_id');
- $cache = '_'.$subsite_id;
- } else {
- $subsite_id = 0;
- $cache = '_';
- }*/
- $cache = '_';
- $page_seo = Cache::get('Home_page_seo_list'.$cache);
- if ($page_seo === null) {
- $page_seo = $this->pageSeoCache(/*$subsite_id*/);
- Cache::forever('Home_page_seo_list'.$cache, $page_seo);
- }
- return $page_seo;
- }
- public function pageSeoCache(/*$subsite_id*/)
- {
- $where = array();
- /*if ($subsite_id !== false) {
- $where['subsite_id'] = $subsite_id;
- }*/
- $pageList = $this->model->where($where)->get()->toArray();
- $page = array();
- if ($pageList) {
- foreach ($pageList as $key => $val) {
- if ($val['route']) {
- $page[strtolower($val['route'])] = array('title'=>$val['title'],'keywords'=>$val['keywords'],'description'=>$val['description']);
- }
- }
- }
- return $page;
- }
- }
|