+ $event_objs = $api->GetEventObjects(array('object_id'=>$object_ids,'object_type'=>$object_type),array('event_id'));
+ // get set of event_ids
+ $event_ids = array_map ( create_function ('$eo','return $eo["event_id"];') , $event_objs);
+
+ $events = $api->GetEvents (array('event_id'=>$event_ids));
+
+ // see actual display of $title and $events below
+
+ }
+
+ drupal_set_title ($title);
+ // Show messages
+ if (!empty($messages))
+ foreach ($messages as $line)
+ drupal_set_message($line);
+
+ $columns=array(
+ "Id"=>"int",
+ "Time"=>"EnglishDateTime",
+ "Method"=>"string",
+ "Message"=>"string",
+ "Subjects"=>"string",
+ "Issuer"=>"string",
+ "Auth"=>"string",
+ "R"=>"string",
+ "D"=>"none",
+ );
+
+ $table_options=array('notes'=>array("The R column shows the call result value, a.k.a. fault_code",
+ "Click the button in the D(etails) columns to get more details",
+ ),
+ 'max_pages'=>20);
+ plc_table_start("events",$columns,"0r",$table_options);
+ foreach ($events as $event) {
+
+ // the call button
+ $message = htmlentities($event['message'], ENT_QUOTES);
+ $call = htmlentities($event['call'], ENT_QUOTES);
+ $text = sprintf("message=<<%s>>\\n\\ncall=<<%s>>\\n\\nruntime=<<%f>>\\n",$message,$call,$event['runtime']);
+ $method = "<input type=button name='call' value='" . $event['call_name'] ."' onclick='alert(\"" . $text . "\")'";
+ // $method = sprintf('<span title="%s">%s</span>',$call,$method);
+
+ // the message button
+ $trunc_mess=htmlentities(truncate($event['message'],40),ENT_QUOTES);
+ $message="<input type=button name='message' value='" . $trunc_mess ."' onclick='alert(\"" . $text . "\")'";
+ $details="<input type=button name='message' value='X' onclick='alert(\"" . $text . "\")'";
+ // $message=sprintf('<span title="%s">%s</span>',$message,$message);
+
+ $message=truncate($event['message'],40);
+ plc_table_row_start($event['event_id']);
+ plc_table_cell(e_event($event['event_id']));
+ plc_table_cell(date('M/d/Y H:i', $event['time']));
+ plc_table_cell($event['call_name']);
+ plc_table_cell($message);
+ plc_table_cell(e_subjects($event));
+ plc_table_cell(e_issuer($event));
+ plc_table_cell(e_auth($event));
+ plc_table_cell(e_fault($event));
+ plc_table_cell($details);
+ plc_table_row_end();