4 require_once 'Pman.php';
6 class Pman_Admin_EventView extends Pman
12 $au = $this->getAuthUser();
13 if (!$au || $au->company()->comptype != 'OWNER') {
23 $ev = DB_DataObject::Factory('Events');
24 if (!$ev->get((int)$id)) {
25 $this->jerr("invalid id");
28 // verify if not admin, then they should
29 $g = DB_DataObject::Factory('group_members');
30 if (is_a($g, 'DB_DataObject')) {
31 $grps = $g->listGroupMembership($this->authUser);
33 $isAdmin = $g->inAdmin;
35 if (!$isAdmin && $ev->person_id != $this->authUser->id) {
39 // we have 2 bits of data available at present:
42 $d= DB_DataObject::factory('core_event_audit');
43 if (is_a($d,'DB_DataObject')) {
44 echo "<H2>Changed Data:</H2>";
45 $d->event_id = $ev->id;
46 foreach($d->fetchAll() as $d) {
47 echo "{$d->name} SET TO: " . htmlspecialchars($d->newvalue) . "<br/>\n";
50 echo "<HR><H2>Posted Data:</H2>";
52 $ff = HTML_FlexyFramework::get();
53 if (empty($ff->Pman['event_log_dir'])) {
54 echo "not available (not configured)";
57 if (function_exists('posix_getpwuid')) {
58 $uinfo = posix_getpwuid( posix_getuid () );
60 $user = $uinfo['name'];
62 $user = getenv('USERNAME'); // windows.
65 $file = $ff->Pman['event_log_dir']. "/{$user}" . date('/Y/m/d/',strtotime($ev->event_when)). $ev->id . ".php";
66 if (file_exists($file)) {
67 echo '<PRE>' . htmlspecialchars(file_get_contents($file)). '</PRE>';
71 $file = $ff->Pman['event_log_dir']. "/{$user}" . date('/Y/m/d/',strtotime($ev->event_when)). $ev->id . ".json";
72 if (!file_exists($file)) {
73 echo "not available (missing file) $file";
76 echo '<PRE>' . htmlspecialchars(print_r(json_decode(file_get_contents($file)), true)) . '</PRE>';
78 echo '<BR/><PRE>'. htmlspecialchars($ev->remarks) . '</PRE>';
80 $filesJ = json_decode(file_get_contents($file));
81 echo '<br /><PRE>Download files</PRE>';
84 foreach($filesJ->FILES as $k=>$f){
85 $ip = $ff->baseURL."/Images/events/". $ev->id . '/'. $f->tmp_name;
86 echo '<a href="'.$ip.'/download">' . htmlspecialchars( $k . ' - ' . $f->name ) . '</a><br/>';