diff --git a/system/src/Grav/Common/Filesystem/Folder.php b/system/src/Grav/Common/Filesystem/Folder.php index 223b3dce8..b30751e6a 100644 --- a/system/src/Grav/Common/Filesystem/Folder.php +++ b/system/src/Grav/Common/Filesystem/Folder.php @@ -20,7 +20,7 @@ abstract class Folder $last_modified = 0; $dirItr = new \RecursiveDirectoryIterator($path, \RecursiveDirectoryIterator::SKIP_DOTS); - $filterItr = new GravRecursiveFolderFilterIterator($dirItr); + $filterItr = new RecursiveFolderFilterIterator($dirItr); $itr = new \RecursiveIteratorIterator($filterItr, \RecursiveIteratorIterator::SELF_FIRST); /** @var \RecursiveDirectoryIterator $file */ @@ -45,7 +45,7 @@ abstract class Folder $last_modified = 0; $dirItr = new \RecursiveDirectoryIterator($path, \RecursiveDirectoryIterator::SKIP_DOTS); - $filterItr = new GravRecursiveFileFilterIterator($dirItr); + $filterItr = new RecursiveFileFilterIterator($dirItr); $itr = new \RecursiveIteratorIterator($filterItr, \RecursiveIteratorIterator::SELF_FIRST); /** @var \RecursiveDirectoryIterator $file */ @@ -301,23 +301,3 @@ abstract class Folder return @rmdir($folder); } } - -class GravRecursiveFolderFilterIterator extends \RecursiveFilterIterator -{ - public function accept() - { - // only accept directories - return $this->current()->isDir(); - } -} - -class GravRecursiveFileFilterIterator extends \RecursiveFilterIterator -{ - public static $FILTERS = ['.DS_Store']; - - public function accept() - { - // Ensure any filtered file names are skipped - return !in_array($this->current()->getFilename(), self::$FILTERS, true); - } -} diff --git a/system/src/Grav/Common/Filesystem/RecursiveFileFilterIterator.php b/system/src/Grav/Common/Filesystem/RecursiveFileFilterIterator.php new file mode 100644 index 000000000..be9667c3b --- /dev/null +++ b/system/src/Grav/Common/Filesystem/RecursiveFileFilterIterator.php @@ -0,0 +1,13 @@ +current()->getFilename(), self::$FILTERS, true); + } +} diff --git a/system/src/Grav/Common/Filesystem/RecursiveFolderFilterIterator.php b/system/src/Grav/Common/Filesystem/RecursiveFolderFilterIterator.php new file mode 100644 index 000000000..f2d63f72e --- /dev/null +++ b/system/src/Grav/Common/Filesystem/RecursiveFolderFilterIterator.php @@ -0,0 +1,11 @@ +current()->isDir(); + } +}