* Search directory tree for files which match a glob pattern.
*
* Note: Dot-directories (like "..", ".git", or ".svn") will be ignored.
- * Note: In Civi 4.3+, delegate to CRM_Utils_File::findFiles()
+ * Note: Delegate to CRM_Utils_File::findFiles(), this function kept only
+ * for backward compatibility of extension code that uses it.
*
* @param string $dir base dir
* @param string $pattern , glob pattern, eg "*.txt"
* @return array
*/
function _search_kit_civix_find_files($dir, $pattern) {
- if (is_callable(['CRM_Utils_File', 'findFiles'])) {
- return CRM_Utils_File::findFiles($dir, $pattern);
- }
-
- $todos = [$dir];
- $result = [];
- while (!empty($todos)) {
- $subdir = array_shift($todos);
- foreach (_search_kit_civix_glob("$subdir/$pattern") as $match) {
- if (!is_dir($match)) {
- $result[] = $match;
- }
- }
- if ($dh = opendir($subdir)) {
- while (FALSE !== ($entry = readdir($dh))) {
- $path = $subdir . DIRECTORY_SEPARATOR . $entry;
- if ($entry[0] == '.') {
- }
- elseif (is_dir($path)) {
- $todos[] = $path;
- }
- }
- closedir($dh);
- }
- }
- return $result;
+ return CRM_Utils_File::findFiles($dir, $pattern);
}
/**