function sfpg_get_dir($dir) { global $dir_exclude, $file_exclude, $file_ext_exclude; $dirs = array(); $dirs_time = array(); $images = array(); $images_time = array(); $files = array(); $files_time = array(); $misc = array(); $directory_handle = opendir(GALLERY_ROOT . $dir); if ($directory_handle != FALSE) { while (($var = readdir($directory_handle)) !== false) { if (is_dir(GALLERY_ROOT . $dir . $var)) { if ($var != '.' and $var != '..' and !in_array(strtolower($var), $dir_exclude) and !@preg_match(DIR_EXCLUDE_REGEX, $var)) { $dirs[] = $var; if (DIR_SORT_BY_TIME) { $dirs_time[] = filemtime(GALLERY_ROOT . $dir . $var . '/.'); } } } elseif (sfpg_image_type($var)) { if ($var != DIR_IMAGE_FILE and !@preg_match(IMAGE_EXCLUDE_REGEX, $var)) { if (DELETE_IMAGE_DAYS and filemtime(GALLERY_ROOT . $dir . $var) < time() - DELETE_IMAGE_DAYS * 86400) { unlink(GALLERY_ROOT . $dir . $var); } else { $images[] = $var; if (IMAGE_SORT_BY_TIME) { $images_time[] = filemtime(GALLERY_ROOT . $dir . $var); } } } } elseif (SHOW_FILES) { if (!in_array(strtolower($var), $file_exclude) and !in_array(sfpg_ext($var), $file_ext_exclude) and !@preg_match(FILE_EXCLUDE_REGEX, $var)) { $files[] = $var; if (FILE_SORT_BY_TIME) { $files_time[] = filemtime(GALLERY_ROOT . $dir . $var); } } } if (sfpg_ext($var) == DESC_EXT or sfpg_ext($var) == PAYPAL_EXTENSION) { $misc[] = $var; } } if (SHOW_FILES) { foreach ($files as $val) { $fti = array_search($val . FILE_THUMB_EXT, $images); if ($fti !== FALSE) { array_splice($images, $fti, 1); array_splice($images_time, $fti, 1); } } } closedir($directory_handle); sfpg_array_sort($dirs, $dirs_time, DIR_SORT_BY_TIME, DIR_SORT_REVERSE); sfpg_array_sort($images, $images_time, IMAGE_SORT_BY_TIME, IMAGE_SORT_REVERSE); sfpg_array_sort($files, $files_time, FILE_SORT_BY_TIME, FILE_SORT_REVERSE); return array($dirs, $images, $files, $misc); } else { header('Location: ' . $_SERVER['PHP_SELF']); exit; } }
function sfpg_get_dir($dir) { global $dir_exclude, $file_exclude, $file_ext_exclude; $dirs = array(); $dirs_time = array(); $images = array(); $images_time = array(); $files = array(); $files_time = array(); $directory_handle = opendir(GALLERY_ROOT . $dir); if ($directory_handle != FALSE) { while ($var = readdir($directory_handle)) { if (is_dir(GALLERY_ROOT . $dir . $var)) { if ($var != "." and $var != ".." and !in_array(strtolower($var), $dir_exclude)) { $dirs[] = $var; if (DIR_SORT_BY_TIME) { $dirs_time[] = filemtime(GALLERY_ROOT . $dir . $var . "/."); } } } elseif (sfpg_image_type($var)) { if ($var != DIR_IMAGE_FILE) { $images[] = $var; if (IMAGE_SORT_BY_TIME) { $images_time[] = filemtime(GALLERY_ROOT . $dir . $var); } } } elseif (SHOW_FILES) { if (!in_array(strtolower($var), $file_exclude) and !(strrpos($var, ".") !== FALSE and in_array(sfpg_ext($var), $file_ext_exclude))) { $files[] = $var; if (FILE_SORT_BY_TIME) { $files_time[] = filemtime(GALLERY_ROOT . $dir . $var); } } } } if (SHOW_FILES) { foreach ($files as $val) { $fti = array_search($val . FILE_THUMB_EXT, $images); if ($fti !== FALSE) { array_splice($images, $fti, 1); array_splice($images_time, $fti, 1); } } } sfpg_array_sort($dirs, $dirs_time, DIR_SORT_BY_TIME, DIR_SORT_REVERSE); sfpg_array_sort($images, $images_time, IMAGE_SORT_BY_TIME, IMAGE_SORT_REVERSE); sfpg_array_sort($files, $files_time, FILE_SORT_BY_TIME, FILE_SORT_REVERSE); return array($dirs, $images, $files); } else { header("Location: " . $_SERVER["PHP_SELF"]); exit; } }