Database = $Database; } function MemoryUsage() { $Output = array(); exec('free -b', $Output); $Row = $Output[2]; while(strpos($Row, ' ') !== false) $Row = str_replace(' ', ' ', $Row); $RowParts = explode(' ', $Row); $Row = $Output[3]; while(strpos($Row, ' ') !== false) $Row = str_replace(' ', ' ', $Row); $RowParts2 = explode(' ', $Row); return($RowParts[2] + $RowParts2[2]); } function MemoryTotal() { $Output = array(); exec('free -b', $Output); $Row = $Output[1]; while(strpos($Row, ' ') !== false) $Row = str_replace(' ', ' ', $Row); $RowParts = explode(' ', $Row); return($RowParts[1]); } function SystemUptime() { $File = fopen('/proc/uptime', 'r'); $Uptime = fgets($File); fclose($File); $UptimeParts = explode(' ', $Uptime); return($UptimeParts[0]); } function State() { global $Config; $State = array(); $State['MemoryUsed'] = $this->MemoryUsage(); $State['MemoryTotal'] = $this->MemoryTotal(); $State['Uptime'] = $this->SystemUptime(); $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Server`'); $DbRow = $DbResult->fetch_row(); $State['ServerCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Server` WHERE `Online` = 1'); $DbRow = $DbResult->fetch_row(); $State['ServerOnlineCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `User`'); $DbRow = $DbResult->fetch_row(); $State['UserCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Emulator`'); $DbRow = $DbResult->fetch_row(); $State['EmulatorCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Backup`'); $DbRow = $DbResult->fetch_row(); $State['BackupCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Task`'); $DbRow = $DbResult->fetch_row(); $State['TaskCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Database`'); $DbRow = $DbResult->fetch_row(); $State['DatabaseCount'] = $DbRow[0]; $DbResult = $this->Database->query('SELECT COUNT(*) FROM `Task` WHERE `State` != 2'); $DbRow = $DbResult->fetch_row(); $State['TaskQueued'] = $DbRow[0]; $State['ServerMaxCount'] = $Config['MaxServerCount']; return($State); } } ?>