];
if ($_POST) {
+ require_once 'upload.inc.php';
try {
- $html = nl2br(htmlspecialchars($_POST['reply']));
- $html = "<p>$html</p>";
$query = $Db->set('comments', [
'page' => $Page,
- 'message' => $html,
+ 'message' => messagehtml($_POST['reply']),
'author' => $User->login,
]);
if (!$query->rowCount()) {
'value' => $updated->$col,
]);
}
+ $Issue = $updated;
}
}
$_POST['reply'] = NULL;
}
}
-$query = $Db->query('SELECT * FROM comments WHERE page = ? ORDER BY created', [$Page]);
+$cols = '*, (SELECT json_agg(journal.*) FROM journal WHERE comment_id = comments.id) AS journal';
+$query = $Db->query("SELECT $cols FROM comments WHERE page = ? ORDER BY created", [$Page]);
print '<ul class="replies">';
$rowuser->html, showdate(preg_split('/\D/', $row->created))
);
printf("<blockquote>%s</blockquote>\n", $row->message);
+ if ($changes = json_decode($row->journal)) {
+ print '<ul>';
+ foreach ($changes as $change) {
+ print '<li>';
+ if ($change->col == 'closed') {
+ printf('<em>%s</em>', isset($change->value) ? 'Gesloten' : 'Heropend');
+ }
+ else {
+ printf("<em>%s</em> %s",
+ $journalcol[$change->col], sprintf(
+ !isset($change->old_value) ? 'gewijzigd naar <q>%2$s</q>' :
+ (!isset($change->value) ? 'verwijderd (<strike>%s</strike>)' :
+ 'gewijzigd van <q>%s</q> naar <q>%s</q>'),
+ $change->old_value, $change->value
+ )
+ );
+ }
+ print "</li>\n";
+ }
+ print "</ul>\n";
+ }
print "</li>\n";
}