diff --git a/resources/classes/file.php b/resources/classes/file.php new file mode 100644 index 0000000000..fa27bc808a --- /dev/null +++ b/resources/classes/file.php @@ -0,0 +1,90 @@ + $value) { + unset($this->$key); + } + } + + /** + * Glob search for a list of files + * @var string $dir this is the directory to scan + * @var boolean $recursive get the sub directories + */ + public function glob($dir, $recursive) { + if ($dir != '' || $dir != '/') { + $tree = glob(rtrim($dir, '/') . '/*'); + if ($recursive) { + if (is_array($tree)) { + foreach($tree as $file) { + if (is_dir($file)) { + if ($recursive == true) { + $files[] = $this->glob($file, $recursive); + } + } elseif (is_file($file)) { + $files[] = $file; + } + } + } + else { + $files[] = $file; + } + } + else { + $files[] = $file; + } + return $files; + } + } + + + /** + * Get the sounds list of search as a relative path without the rate + */ + public function sounds() { + $dir = $_SESSION['switch']['sounds']['dir'].'/en/us/callie'; + $rate = '8000'; + $files = $this->glob($dir.'/*/'.$rate, true); + foreach($files as $file) { + $file = substr($file, strlen($dir)+1); + $file = str_replace("/".$rate, "", $file); + $array[] = $file; + } + return $array; + } + +} + +/* +//add multi-lingual support + $obj = new file; + //$files = $obj->glob($_SESSION['switch']['sounds']['dir'].'/en/us/callie', true); + $files = $obj->sounds(); + print_r($files); +*/ + +?>