]>
src.bluestatic.org Git - bugdar.git/blob - showhistory.php
2 /*=====================================================================*\
3 || ################################################################### ||
4 || # BugStrike [#]version[#]
5 || # --------------------------------------------------------------- # ||
6 || # Copyright ©2002-[#]year[#] by Iris Studios, Inc. All Rights Reserved. # ||
7 || # This file may not be reproduced in any way without permission. # ||
8 || # --------------------------------------------------------------- # ||
9 || # User License Agreement at http://www.iris-studios.com/license/ # ||
10 || ################################################################### ||
11 \*=====================================================================*/
13 $fetchtemplates = array(
19 define('SVN', '$Id$');
21 require_once('./global.php
');
23 $bug = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "bug WHERE bugid = " . intval($bugsys->in['bugid
']));
26 $message->error('alert
: bad bug
');
29 if ($bug['hidden
'] AND !can_perform('canviewhidden
'))
31 $message->error_permission();
34 // ###################################################################
36 $customfields = $db->query("
38 FROM " . TABLE_PREFIX . "bugfield AS bugfield
39 LEFT JOIN " . TABLE_PREFIX . "bugfieldpermission AS permission
40 ON (bugfield.fieldid = permission.fieldid)
41 WHERE permission.mask <> 0
42 AND permission.usergroupid = {$bugsys->userinfo['usergroupid']}"
45 while ($field = $db->fetch_array($customfields))
47 $fieldlist["custom_field$field[fieldid]"] = 'custom_field
' . $field['fieldid
'] . " (\"$field[name]\")";
50 // ###################################################################
52 $logs_fetch = $db->query("
53 SELECT history.*, user.userid, user.email, user.displayname, user.showemail
54 FROM " . TABLE_PREFIX . "history AS history
55 LEFT JOIN " . TABLE_PREFIX . "user AS user
56 ON (user.userid = history.userid)
57 WHERE bugid = $bug[bugid]"
59 while ($log = $db->fetch_array($logs_fetch))
61 $log['formatted
'] = call_user_func_array(array(lang, 'p
'), array_merge(array($log['language
']), unserialize($log['arguments
'])));
62 $log['date
'] = $datef->format($bugsys->options['dateformat
'], $log['dateline
']);
63 $log['user
'] = construct_user_display($log);
65 $logs["$log[dateline]"]["$log[historyid]"] = $log;
66 ksort($logs["$log[dateline]"]);
71 foreach ($logs AS $dateline => $logitems)
75 $show['changes
'] = false;
77 foreach ($logitems AS $log)
79 $hasvalues = ((empty($log['original
']) AND (empty($log['changed
']) AND $log['changed
'] != '0')) ? false : true);
81 if ($newlog = $fieldlist["$log[field]"])
83 $log['field
'] = $newlog;
86 $show['changes
'] = (($hasvalues) ? true : $show['changes
']);
91 eval('$changes .= "' . $template->fetch('history_bit') . '";');
94 if (!in_array($log['formatted
'], $messages))
96 $messages[] = $log['formatted
'];
100 $log['messages
'] = implode("</div>\n<div>", $messages);
102 eval('$history .= "' . $template->fetch('history_group') . '";');
105 eval('$template->flush("' . $template->fetch('history') . '");');
107 /*=====================================================================*\
108 || ###################################################################
111 || ###################################################################
112 \*=====================================================================*/