taskFilterPages can filter by page type too

This commit is contained in:
Flavio Copes
2015-09-09 09:28:53 +02:00
parent 87161e0a5e
commit 08c2eea5c4

View File

@@ -417,14 +417,29 @@ class AdminController
$collection = $this->grav['pages']->all();
if (count($flags)) {
if (in_array('modular', $flags))
$collection = $collection->modular();
// Filter by state
$pageStates = array('modular', 'visible', 'routable');
if (in_array('visible', $flags))
$collection = $collection->visible();
if (count(array_intersect($pageStates, $flags)) > 0) {
if (in_array('modular', $flags))
$collection = $collection->modular();
if (in_array('routable', $flags))
$collection = $collection->routable();
if (in_array('visible', $flags))
$collection = $collection->visible();
if (in_array('routable', $flags))
$collection = $collection->routable();
}
foreach ($pageStates as $pageState) {
unset($flags[$pageState]);
}
// Filter by page type
if (count($flags)) {
$type = $flags[0];
$collection = $collection->ofType($type);
}
}
if (!empty($queries)) {