Initial Import
diff --git a/system/helpers/file_helper.php b/system/helpers/file_helper.php
new file mode 100644
index 0000000..93bddb0
--- /dev/null
+++ b/system/helpers/file_helper.php
@@ -0,0 +1,139 @@
+<?php  if (!defined('BASEPATH')) exit('No direct script access allowed');
+/**
+ * Code Igniter
+ *
+ * An open source application development framework for PHP 4.3.2 or newer
+ *
+ * @package		CodeIgniter
+ * @author		Rick Ellis
+ * @copyright	Copyright (c) 2006, pMachine, Inc.
+ * @license		http://www.codeignitor.com/user_guide/license.html 
+ * @link		http://www.codeigniter.com
+ * @since		Version 1.0
+ * @filesource
+ */
+ 
+// ------------------------------------------------------------------------
+
+/**
+ * Code Igniter File Helpers
+ *
+ * @package		CodeIgniter
+ * @subpackage	Helpers
+ * @category	Helpers
+ * @author		Rick Ellis
+ * @link		http://www.codeigniter.com/user_guide/helpers/file_helpers.html
+ */
+
+// ------------------------------------------------------------------------
+
+/**
+ * Read File
+ *
+ * Opens the file specfied in the path and returns it as a string.
+ *
+ * @access	public
+ * @param	string	path to file
+ * @return	string
+ */	
+function read_file($file)
+{
+	if ( ! file_exists($file))
+	{
+		return FALSE;
+	}
+
+	if ( ! $fp = @fopen($file, 'rb'))
+	{
+		return FALSE;
+	}
+		
+	flock($fp, LOCK_SH);
+	
+	$data = '';
+	if (filesize($file) > 0) 
+	{
+		$data = fread($fp, filesize($file)); 
+	}
+
+	flock($fp, LOCK_UN);
+	fclose($fp); 
+
+	return $data;
+}
+	
+// ------------------------------------------------------------------------
+
+/**
+ * Write File
+ *
+ * Writes data to the file specified in the path. 
+ * Creats a new file if non-existant.
+ *
+ * @access	public
+ * @param	string	path to file
+ * @param	string	file data
+ * @return	bool
+ */	
+function write_file($path, $data)
+{
+	if ( ! $fp = @fopen($path, 'wb'))
+	{
+		return FALSE;
+	}
+		
+	flock($fp, LOCK_EX);
+	fwrite($fp, $data);
+	flock($fp, LOCK_UN);
+	fclose($fp);	
+
+	return TRUE;
+}
+	
+// ------------------------------------------------------------------------
+
+/**
+ * Delete Files
+ *
+ * Deletes all files contained in the supplied directory path.
+ * Files must be writable or owned by the system in order to be deleted.
+ * If the second parameter is set to TRUE, any direcotries contained
+ * within the supplied base directory will be nuked as well.
+ *
+ * @access	public
+ * @param	string	path to file
+ * @param	bool	whether to delete any directories found in the path
+ * @return	bool
+ */	
+function delete_files($path, $del_dir = FALSE)
+{	
+	// Trim the trailing slahs
+	$path = preg_replace("|^(.+?)/*$|", "\\1", $path);
+			
+	if ( ! $current_dir = @opendir($path))
+		return;
+	
+	while(FALSE !== ($filename = @readdir($current_dir)))
+	{ 
+		if ($filename != "." and $filename != "..")
+		{
+			if (is_dir($path.'/'.$filename))
+			{
+				delete_files($path.'/'.$filename, $del_dir);
+			}
+			else
+			{
+				unlink($path.'/'.$filename);
+			}
+		}
+	}
+	@closedir($current_dir);
+	
+	if ($del_dir == TRUE)
+	{
+		@rmdir($path);
+	}
+}
+
+
+?>
\ No newline at end of file