added $query_times property to DB driver for profiling
added individual query execution time to profiler output
diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php
index 65be13d..dbd54be 100644
--- a/system/database/DB_driver.php
+++ b/system/database/DB_driver.php
@@ -48,6 +48,7 @@
 	var $bind_marker	= '?';

 	var $save_queries	= TRUE;

 	var $queries		= array();

+	var $query_times	= array();

 	var $data_cache		= array();

 	var $trans_enabled	= TRUE;

 	var $_trans_depth	= 0;

@@ -341,6 +342,11 @@
 		$time_end = list($em, $es) = explode(' ', microtime());

 		$this->benchmark += ($em + $es) - ($sm + $ss);

 

+		if ($this->save_queries == TRUE)

+		{

+			$this->query_times[] = ($em + $es) - ($sm + $ss);

+		}

+		

 		// Increment the query counter

 		$this->query_count++;

 		

diff --git a/system/libraries/Profiler.php b/system/libraries/Profiler.php
index 3b18902..21c2135 100644
--- a/system/libraries/Profiler.php
+++ b/system/libraries/Profiler.php
@@ -105,34 +105,49 @@
 		$output  = "\n\n";

 		$output .= '<fieldset style="border:1px solid #0000FF;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">';

 		$output .= "\n";

-		$output .= '<legend style="color:#0000FF;">&nbsp;&nbsp;'.$this->CI->lang->line('profiler_queries').'&nbsp;&nbsp;</legend>';

-		$output .= "\n";		

 		

 		if ( ! class_exists('CI_DB_driver'))

 		{

-			$output .= "<div style='color:#0000FF;font-weight:normal;padding:4px 0 0 0;'>".$this->CI->lang->line('profiler_no_db')."</div>";

+			$output .= '<legend style="color:#0000FF;">&nbsp;&nbsp;'.$this->CI->lang->line('profiler_queries').'&nbsp;&nbsp;</legend>';

+			$output .= "\n";		

+			$output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n";

+			$output .="<tr><td width='100%' style='color:#0000FF;font-weight:normal;background-color:#eee;'>".$this->CI->lang->line('profiler_no_db')."</td></tr>\n";

 		}

 		else

 		{

+			$output .= '<legend style="color:#0000FF;">&nbsp;&nbsp;'.$this->CI->lang->line('profiler_queries').' ('.count($this->CI->db->queries).')&nbsp;&nbsp;</legend>';

+			$output .= "\n";		

+			$output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n";

+			

 			if (count($this->CI->db->queries) == 0)

 			{

-				$output .= "<div style='color:#0000FF;font-weight:normal;padding:4px 0 4px 0;'>".$this->CI->lang->line('profiler_no_queries')."</div>";

+				$output .= "<tr><td width='100%' style='color:#0000FF;font-weight:normal;background-color:#eee;'>".$this->CI->lang->line('profiler_no_queries')."</td></tr>\n";

 			}

 			else

 			{

-				foreach ($this->CI->db->queries as $val)

+				$highlight = array('SELECT', 'FROM', 'WHERE', 'AND', 'OR', 'LEFT JOIN', 'ORDER BY', 'LIMIT', 'INSERT', 'INTO', 'VALUES', 'UPDATE');

+				

+				foreach ($this->CI->db->queries as $key => $val)

 				{

-					$output .= '<div style="padding:3px;margin:12px 0 12px 0;background-color:#ddd;color:#000">';

-					$output .= htmlspecialchars($val, ENT_QUOTES);

-					$output .= "</div>\n";

-				}	

+					$val = htmlspecialchars($val, ENT_QUOTES);

+					$time = number_format($this->CI->db->query_times[$key], 4);

+					

+					foreach ($highlight as $bold)

+					{

+						$val = str_replace($bold, '<strong>'.$bold.'</strong>', $val);	

+					}

+					

+					$output .= "<tr><td width='1%' valign='top' style='color:#990000;font-weight:normal;background-color:#ddd;'>".$time."&nbsp;&nbsp;</td><td style='color:#000;font-weight:normal;background-color:#ddd;'>".$val."</td></tr>\n";

+				}

 			}

 		}

 		

-		$output .= "</fieldset>";		

+		$output .= "</table>\n";

+		$output .= "</fieldset>";

 		

 		return $output;

 	}

+

 	

 	// --------------------------------------------------------------------