--- /dev/null
+<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
+/**
+ * CodeIgniter
+ *
+ * An open source application development framework for PHP 5.1.6 or newer
+ *
+ * @package CodeIgniter
+ * @author ExpressionEngine Dev Team
+ * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc.
+ * @license http://codeigniter.com/user_guide/license.html
+ * @link http://codeigniter.com
+ * @since Version 1.0
+ * @filesource
+ */
+
+// ------------------------------------------------------------------------
+
+/**
+ * CodeIgniter Directory Helpers
+ *
+ * @package CodeIgniter
+ * @subpackage Helpers
+ * @category Helpers
+ * @author ExpressionEngine Dev Team
+ * @link http://codeigniter.com/user_guide/helpers/directory_helper.html
+ */
+
+// ------------------------------------------------------------------------
+
+/**
+ * Create a Directory Map
+ *
+ * Reads the specified directory and builds an array
+ * representation of it. Sub-folders contained with the
+ * directory will be mapped as well.
+ *
+ * @access public
+ * @param string path to source
+ * @param int depth of directories to traverse (0 = fully recursive, 1 = current dir, etc)
+ * @return array
+ */
+if ( ! function_exists('directory_map'))
+{
+ function directory_map($source_dir, $directory_depth = 0, $hidden = FALSE)
+ {
+ if ($fp = @opendir($source_dir))
+ {
+ $filedata = array();
+ $new_depth = $directory_depth - 1;
+ $source_dir = rtrim($source_dir, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR;
+
+ while (FALSE !== ($file = readdir($fp)))
+ {
+ // Remove '.', '..', and hidden files [optional]
+ if ( ! trim($file, '.') OR ($hidden == FALSE && $file[0] == '.'))
+ {
+ continue;
+ }
+
+ if (($directory_depth < 1 OR $new_depth > 0) && @is_dir($source_dir.$file))
+ {
+ $filedata[$file] = directory_map($source_dir.$file.DIRECTORY_SEPARATOR, $new_depth, $hidden);
+ }
+ else
+ {
+ $filedata[] = $file;
+ }
+ }
+
+ closedir($fp);
+ return $filedata;
+ }
+
+ return FALSE;
+ }
+}
+
+
+/* End of file directory_helper.php */
+/* Location: ./system/helpers/directory_helper.php */
\ No newline at end of file