FEATURE: move widget and template dir installation into middleware, optimize middleware groups
This commit is contained in:
@@ -18,6 +18,8 @@ abstract class OnePage implements TemplateHandler
|
||||
* Name of settings key for list of pages used on homepage
|
||||
*/
|
||||
const HOMEPAGE_PAGES_SETTINGS_KEY = 'template.onepage.homepagePages';
|
||||
protected static $homepagePagesInitialized = false;
|
||||
protected static $homepagePages;
|
||||
|
||||
/**
|
||||
* Register admin menu (or multiple ones)
|
||||
@@ -40,22 +42,28 @@ abstract class OnePage implements TemplateHandler
|
||||
*/
|
||||
public static function getPagesOnHomepage()
|
||||
{
|
||||
$pageIds = (array)json_decode(Settings::get(self::HOMEPAGE_PAGES_SETTINGS_KEY, '[]'));
|
||||
if (!self::$homepagePagesInitialized) {
|
||||
$pageIds = (array)json_decode(Settings::get(self::HOMEPAGE_PAGES_SETTINGS_KEY, '[]'));
|
||||
|
||||
if (empty($pageIds)) {
|
||||
return [];
|
||||
if (empty($pageIds)) {
|
||||
return [];
|
||||
}
|
||||
|
||||
// get all available pages
|
||||
$pages = Content::whereIn('id', $pageIds);
|
||||
|
||||
if (Auth::user()) {
|
||||
$pages = $pages->where('status', '!=', Content::STATUS_DRAFT);
|
||||
} else {
|
||||
$pages = $pages->where('status', Content::STATUS_PUBLIC);
|
||||
}
|
||||
|
||||
self:: $homepagePages = $pages->get();
|
||||
|
||||
self::$homepagePagesInitialized = true;
|
||||
}
|
||||
|
||||
// get all available pages
|
||||
$pages = Content::whereIn('id', $pageIds);
|
||||
|
||||
if (Auth::user()) {
|
||||
$pages = $pages->where('status', '!=', Content::STATUS_DRAFT);
|
||||
} else {
|
||||
$pages = $pages->where('status', Content::STATUS_PUBLIC);
|
||||
}
|
||||
|
||||
return $pages->get();
|
||||
return self::$homepagePages;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user