get upload data with index key
diff --git a/system/libraries/Upload.php b/system/libraries/Upload.php
index 1f6aeeb..e422edb 100644
--- a/system/libraries/Upload.php
+++ b/system/libraries/Upload.php
@@ -347,26 +347,34 @@
 	 * Returns an associative array containing all of the information
 	 * related to the upload, allowing the developer easy access in one array.
 	 *
+	 * @param	string
 	 * @return	array
 	 */
-	public function data()
+	public function data($index = NULL)
 	{
-		return array(
-				'file_name'		=> $this->file_name,
-				'file_type'		=> $this->file_type,
-				'file_path'		=> $this->upload_path,
-				'full_path'		=> $this->upload_path.$this->file_name,
-				'raw_name'		=> str_replace($this->file_ext, '', $this->file_name),
-				'orig_name'		=> $this->orig_name,
+		$data = array(
+				'file_name'			=> $this->file_name,
+				'file_type'			=> $this->file_type,
+				'file_path'			=> $this->upload_path,
+				'full_path'			=> $this->upload_path.$this->file_name,
+				'raw_name'			=> str_replace($this->file_ext, '', $this->file_name),
+				'orig_name'			=> $this->orig_name,
 				'client_name'		=> $this->client_name,
-				'file_ext'		=> $this->file_ext,
-				'file_size'		=> $this->file_size,
-				'is_image'		=> $this->is_image(),
+				'file_ext'			=> $this->file_ext,
+				'file_size'			=> $this->file_size,
+				'is_image'			=> $this->is_image(),
 				'image_width'		=> $this->image_width,
 				'image_height'		=> $this->image_height,
 				'image_type'		=> $this->image_type,
 				'image_size_str'	=> $this->image_size_str,
 			);
+
+		if ($index === NULL OR ! isset($data[$index]))
+		{
+			return $data;
+		}
+
+		return $data[$index];
 	}
 
 	// --------------------------------------------------------------------