Filter layout by ignored file names
The Layouts get filtered by the filesystem definition of ignored files. #814
This commit is contained in:
parent
96d0ce1c20
commit
5eb278e883
|
|
@ -4,6 +4,7 @@ use Lang;
|
||||||
use Cms\Classes\Theme;
|
use Cms\Classes\Theme;
|
||||||
use Cms\Classes\Layout;
|
use Cms\Classes\Layout;
|
||||||
use ApplicationException;
|
use ApplicationException;
|
||||||
|
use October\Rain\Filesystem\Definitions as FileDefinitions;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The CMS page class.
|
* The CMS page class.
|
||||||
|
|
@ -88,8 +89,24 @@ class Page extends CmsCompoundObject
|
||||||
$layouts = Layout::listInTheme($theme, true);
|
$layouts = Layout::listInTheme($theme, true);
|
||||||
$result = [];
|
$result = [];
|
||||||
$result[null] = Lang::get('cms::lang.page.no_layout');
|
$result[null] = Lang::get('cms::lang.page.no_layout');
|
||||||
|
$ignoreNames = FileDefinitions::get('ignoreFiles');
|
||||||
|
|
||||||
foreach ($layouts as $layout) {
|
foreach ($layouts as $layout) {
|
||||||
$baseName = $layout->getBaseFileName();
|
$baseName = $layout->getBaseFileName();
|
||||||
|
|
||||||
|
//Filter ignore files
|
||||||
|
$ignoreFile = false;
|
||||||
|
foreach ($ignoreNames as $ignoreName) {
|
||||||
|
if(strpos($baseName, $ignoreName) === 0) {
|
||||||
|
$ignoreFile = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($ignoreFile) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
$result[$baseName] = strlen($layout->name) ? $layout->name : $baseName;
|
$result[$baseName] = strlen($layout->name) ? $layout->name : $baseName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue