Initial Import
diff --git a/system/helpers/string_helper.php b/system/helpers/string_helper.php
new file mode 100644
index 0000000..d5a3591
--- /dev/null
+++ b/system/helpers/string_helper.php
@@ -0,0 +1,154 @@
+<?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 String Helpers
+ *
+ * @package		CodeIgniter
+ * @subpackage	Helpers
+ * @category	Helpers
+ * @author		Rick Ellis
+ * @link		http://www.codeigniter.com/user_guide/helpers/string_helper.html
+ */
+
+// ------------------------------------------------------------------------
+
+/**
+ * Trim Slashes
+ *
+ * Removes any leading/traling slashes from a string:
+ *
+ * /this/that/theother/
+ *
+ * becomes:
+ *
+ * this/that/theother
+ *
+ * @access	public
+ * @param	string
+ * @return	string
+ */	
+function trim_slashes($str)
+{
+	return preg_replace("|^/*(.+?)/*$|", "\\1", $str);
+}
+	
+// ------------------------------------------------------------------------
+
+/**
+ * Reduce Double Slashes
+ *
+ * Converts double slashes in a string to a single slash,
+ * except those found in http://
+ *
+ * http://www.some-site.com//index.php
+ *
+ * becomes:
+ *
+ * http://www.some-site.com/index.php
+ *
+ * @access	public
+ * @param	string
+ * @return	string
+ */	
+function reduce_double_slashes($str)
+{
+	return preg_replace("#([^:])//+#", "\\1/", $str);  
+}
+	
+// ------------------------------------------------------------------------
+
+/**
+ * Create a Random String
+ *
+ * Useful for generating passwords or hashes.
+ *
+ * @access	public
+ * @param	string 	type of random string.  Options: alunum, numeric, nozero, unique
+ * @param	integer	number of characters
+ * @return	string
+ */	
+function random_string($type = 'alnum', $len = 8)
+{					
+	switch($type)
+	{
+		case 'alnum'	:
+		case 'numeric'	:
+		case 'nozero'	:
+		
+				switch ($type)
+				{
+					case 'alnum'	:	$pool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
+						break;
+					case 'numeric'	:	$pool = '0123456789';
+						break;
+					case 'nozero'	:	$pool = '123456789';
+						break;
+				}
+
+				$str = '';
+				for ($i=0; $i < $len; $i++) 
+				{    
+					$str .= substr($pool, mt_rand(0, strlen($pool) -1), 1); 
+				}
+				return $str;      
+		  break;
+		case 'unique' : return md5(uniqid(mt_rand())); 
+		  break; 
+	}        
+}
+// ------------------------------------------------------------------------
+
+/**
+ * Alternator
+ *
+ * Allows strings to be alternated.  See docs...
+ *
+ * @access	public
+ * @param	string (as many parameters as needed)
+ * @return	string
+ */		
+function alternator()
+{
+	static $i;	
+
+	if (func_num_args() == 0)
+	{
+		$i = 0;
+		return '';
+	}
+	$args = func_get_args();
+	return $args[($i++ % count($args))];
+}
+
+// ------------------------------------------------------------------------
+
+/**
+ * Repeater function
+ *
+ * @access	public
+ * @param	string
+ * @param	integer	number of repeats
+ * @return	string
+ */	
+function repeater($data, $num = 1)
+{
+	return str_repeat($data, $num);
+}
+
+
+?>
\ No newline at end of file