Index: plugins/Live/API.php
===================================================================
--- plugins/Live/API.php	(revision 1869)
+++ plugins/Live/API.php	(working copy)
@@ -56,8 +56,9 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-		$visitorDetails = $this->loadLastVisitorDetailsFromDatabase($visitorId, $idSite, $limit);
-		$table = $this->getCleanedVisitorsFromDetails($visitorDetails);
+
+		$visitorDetails = self::loadLastVisitorDetailsFromDatabase($visitorId, $idSite, $limit);
+		$table = self::getCleanedVisitorsFromDetails($visitorDetails);
 
 		return $table;
 	}
@@ -77,8 +78,8 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-		$visitorDetails = $this->loadLastVisitorDetailsFromDatabase(null, $idSite, $limit, $minIdVisit);
-		$table = $this->getCleanedVisitorsFromDetails($visitorDetails);
+		$visitorDetails = self::loadLastVisitorDetailsFromDatabase(null, $idSite, $limit, $minIdVisit);
+		$table = self::getCleanedVisitorsFromDetails($visitorDetails);
 
 		return $table;
 	}
@@ -97,8 +98,8 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-		$visitorDetails = $this->loadLastVisitorDetailsFromDatabase(null, $idSite, $limit, $minIdVisit);
-		$dataTable = $this->getCleanedVisitorsFromDetails($visitorDetails);
+		$visitorDetails = self::loadLastVisitorDetailsFromDatabase(null, $idSite, $limit, $minIdVisit);
+		$dataTable = self::getCleanedVisitorsFromDetails($visitorDetails);
 //		$dataTable->queueFilter('ColumnCallbackAddMetadata', array('operatingSystem', 'icon', 'Piwik_Live_Visitor::getVisitLength()'));
 
 		return $dataTable;
@@ -108,13 +109,13 @@
 	/*
 	 * @return Piwik_DataTable
 	 */
-	private function getCleanedVisitorsFromDetails($visitorDetails)
+	static private function getCleanedVisitorsFromDetails($visitorDetails)
 	{
 		$table = new Piwik_DataTable();
-
+		
 		foreach($visitorDetails as $visitorDetail)
 		{
-			$this->cleanVisitorDetails($visitorDetail);
+			self::cleanVisitorDetails($visitorDetail);
 			$visitor = new Piwik_Live_Visitor($visitorDetail);
 
 			// $visitorDetail must contain the match_atribute
@@ -193,13 +194,14 @@
 				ORDER BY idvisit DESC
 				LIMIT $limit";
 
+
 		return Piwik_FetchAll($sql, $whereBind);
 	}
 
 	/*
 	 *
 	 */
-	private function cleanVisitorDetails( &$visitorDetails )
+	static private function cleanVisitorDetails( &$visitorDetails )
 	{
 		$toUnset = array('config_md5config');
 		if(!Piwik::isUserIsSuperUser())
@@ -219,7 +221,7 @@
 
 
 	/*
-	 * @return Piwik_DataTable
+	 * @return Array
 	 */
 	public function getUsersInLastXMin( $idSite = false, $limit = 10, $minIdVisit = false, $minutes = 30 )
 	{
@@ -231,16 +233,14 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-//		$visitorDetails = $this->loadLastVisitorDetailsInLastXMinFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes);
-		$visitorDetails = $this->loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes, 0, 1);
-
-		$table = $this->getCleanedVisitorsFromDetails($visitorDetails);
+//		$visitorDetails = self::loadLastVisitorDetailsInLastXMinFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes);
+		$visitorData = self::loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes, 0, 1);
 
-		return $table;
+		return $visitorData;
 	}
 
 	/*
-	 * @return Piwik_DataTable
+	 * @return Array
 	 */
 	public function getUsersInLastXDays( $idSite = false, $limit = 10, $minIdVisit = false, $days = 10 )
 	{
@@ -253,12 +253,9 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-//		$visitorDetails = $this->loadLastVisitorDetailsInLastXDaysFromDatabase(null, $idSite, $limit, $minIdVisit, $days);
-		$visitorDetails = $this->loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, 0, $days, 1);
+		$visitorData = self::loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, 0, $days, 1);
 
-		$table = $this->getCleanedVisitorsFromDetails($visitorDetails);
-
-		return $table;
+		return $visitorData;
 	}
 
 	/*
@@ -276,18 +273,9 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-//		$pageDetails = $this->loadLastVisitedPagesInLastXDaysFromDatabase(null, $idSite, $limit, $minIdVisit, $days);
-		$pageDetails = $this->loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, 0, $days, 2);
-
-		$i = -1;
-		foreach ($pageDetails as $detail) {
-			$i++;
-			if(strlen($pageDetails[$i]['name']) > 30) {
-				$pageDetails[$i]['name']  = substr($pageDetails[$i]['name'] , 0, 30 - 3).'...';
-			}
-		}
+		$visitorData = self::loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, 0, $days, 2);
 
-		return $pageDetails;
+		return $visitorData;
 	}
 
 	/*
@@ -303,17 +291,9 @@
 		{
 			Piwik::checkUserHasViewAccess($idSite);
 		}
-//		$pageDetails = $this->loadLastVisitedPagesInLastXMinFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes);
-		$pageDetails = $this->loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes, 0, 2);
+		$visitorData = self::loadLastVisitorInLastXTimeFromDatabase(null, $idSite, $limit, $minIdVisit, $minutes, 0, 2);
 
-		$i = -1;
-		foreach ($pageDetails as $detail) {
-			$i++;
-			if(strlen($pageDetails[$i]['name']) > 30) {
-				$pageDetails[$i]['name']  = substr($pageDetails[$i]['name'] , 0, 30 - 3).'...';
-			}
-		}
-		return $pageDetails;
+		return $visitorData;
 	}
 
 
@@ -412,4 +392,5 @@
 		// return $sql by fetching
 		return Piwik_FetchAll($sql, $whereBind);
 	}
-}
+
+}
\ No newline at end of file
Index: plugins/Live/Controller.php
===================================================================
--- plugins/Live/Controller.php	(revision 1869)
+++ plugins/Live/Controller.php	(working copy)
@@ -176,6 +176,12 @@
 	{
 		$view = Piwik_View::factory('totalVisits');
 		$this->setGeneralVariablesView($view);
+		
+		$view->visitorsCountHalfHour = 0; 
+		$view->visitorsCountToday = 0;
+		$view->pisHalfhour = 0;
+		$view->pisToday = 0;
+
 		$view->visitorsCountHalfHour = $this->getUsersInLastXMin(30);
 		$view->visitorsCountToday = $this->getUsersInLastXDays(1);
 		$view->pisHalfhour = $this->getPageImpressionsInLastXMin(30);

