FEATURE: move widget and template dir installation into middleware, optimize middleware groups

This commit is contained in:
Michal Kváček
2016-09-25 12:42:26 +02:00
parent d7b60690b2
commit 8f4e6268a4
12 changed files with 184 additions and 123 deletions
+21 -13
View File
@@ -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;
}
/**