Index: server/pifr_server.page.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project_issue_file_review/server/pifr_server.page.inc,v
retrieving revision 1.10
diff -u -r1.10 pifr_server.page.inc
--- server/pifr_server.page.inc	28 Oct 2009 03:06:30 -0000	1.10
+++ server/pifr_server.page.inc	28 Oct 2009 04:13:45 -0000
@@ -163,7 +163,7 @@
 function pifr_server_page_status_client_list($client_type) {
   $clients = pifr_server_client_get_type($client_type);
 
-  $header = array(t('Client'), t('Environment(s)'), t('Status'), t('Last active'), t('Idle'), t('Manager'));
+  $header = array(t('Client'), t('Environment(s)'), t('Status'), t('Last ping'), t('Manager'));
   $rows = array();
   foreach ($clients as $client) {
     if ($client['status'] == PIFR_SERVER_CLIENT_STATUS_DISABLED) {
@@ -181,12 +181,30 @@
     // Determine the last time the client was active.
     $last_active = pifr_server_client_get_last_active($client);
 
+    $link = array(
+      'text' => pifr_server_client_status($client['status']),
+      'href' => 'pifr/test/' . $client['test_id'],
+    );
+
+    if ($client['status'] == PIFR_SERVER_CLIENT_STATUS_ENABLED) {
+      if ($last_active && $last_active['code'] == PIFR_SERVER_LOG_CLIENT_REQUEST) {
+        $link['text'] .= ' - Reviewing';
+        $link['href'] = 'pifr/test/' . $last_active['test_id'];
+      }
+      else {
+        $link['text'] .= ' - Idle';
+      }
+    }
+    elseif ($client['status'] != PIFR_SERVER_CLIENT_STATUS_DISABLED) {
+      // Status must be: PIFR_SERVER_CLIENT_STATUS_TESTING or
+      // PIFR_SERVER_CLIENT_STATUS_FAILED so link to client test.
+    }
+
     // Determine the amount of time the server has been idle.
-    $idletime = time() - $last_active;
+    $idletime = $last_active ? time() - $last_active['timestamp'] : 0;
 
-    $row[] = l(pifr_server_client_status($client['status']), 'pifr/test/' . $client['test_id']);
-    $row[] = pifr_server_format_date($last_active);
-    $row[] = $last_active ? format_interval($idletime) : '--';
+    $row[] = l($link['text'], $link['href']);
+    $row[] = $last_active ? format_interval($idletime) . ' (' . pifr_server_format_date($last_active['timestamp']) . ')' : '--';
     $row[] = theme('username', user_load($client['uid']));
 
     // Determine the class to color the row with based on the idle time.
Index: server/pifr_server.client.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project_issue_file_review/server/pifr_server.client.inc,v
retrieving revision 1.44
diff -u -r1.44 pifr_server.client.inc
--- server/pifr_server.client.inc	28 Oct 2009 03:06:30 -0000	1.44
+++ server/pifr_server.client.inc	28 Oct 2009 04:13:45 -0000
@@ -107,15 +107,15 @@
  * Determine the last time a client was active.
  *
  * @param array $client Client information.
- * @return integer Timestamp when client was last active, or FALSE.
+ * @return array Log information, or FALSE.
  */
 function pifr_server_client_get_last_active(array $client) {
-  $result = db_query('SELECT timestamp
+  $result = db_query('SELECT *
                       FROM {pifr_log}
                       WHERE client_id = %d
                       ORDER BY timestamp DESC
                       LIMIT 1', $client['client_id']);
-  return db_result($result);
+  return db_fetch_array($result);
 }
 
 /**
