X-Git-Url: http://git.shiar.nl/minimedit.git/blobdiff_plain/9887bd21eb0d0d7211b3add639c8e92ed0d8701f..ed1cd294e32647b117688b25a465889e4664fe03:/widget/reply.php diff --git a/widget/reply.php b/widget/reply.php index a3b8052..b740c2a 100644 --- a/widget/reply.php +++ b/widget/reply.php @@ -1,73 +1,11 @@ 'Toegewezen aan', -]; +require_once 'upload.inc.php'; if ($_POST) { - require_once 'upload.inc.php'; try { - $html = messagehtml($_POST['reply']); - if ($_FILES and !empty($_FILES['image'])) { - $target = 'data/upload'; - if (!file_exists($target)) { - throw new Exception("er is geen uploadmap aanwezig op $target"); - } - $target .= '/' . $User->login; - if ($result = userupload($_FILES['image'], $target)) { - if (preg_match('(^image/)', $_FILES['image']['type'])) { - $html .= sprintf('

', $result); - } - else { - $html .= sprintf('

Bijgevoegd bestand: %s

', - $result, basename($result) - ); - } - } - } - $query = $Db->set('comments', [ - 'page' => $Page->link, - 'message' => $html, - 'author' => $User->login, - ]); - if (!$query->rowCount()) { - throw new Exception('Fout bij opslaan'); - } - $newcomment = $Db->dbh->lastInsertId('comments_id_seq'); - - if (isset($Issue)) { - $row = []; - foreach (array_keys($journalcol) as $col) { - if (!isset($_POST[$col])) continue; - $row[$col] = $_POST[$col] ?: NULL; - } - if (isset($_POST['status'])) { - $reset = !empty($_POST['status']); - if (isset($Issue->closed) !== $reset) { - $row['closed'] = $reset ? ['now()'] : NULL; - } - } - $derived = ['updated' => ['now()']]; - $filter = ['id = ? RETURNING *', $Issue->id]; - $subquery = $Db->set('issues', $row + $derived, $filter); - - if ($updated = $subquery->fetch()) { - foreach (array_keys($row) as $col) { - if ($updated->$col === $Issue->$col) continue; # unaltered - $Db->set('journal', [ - 'comment_id' => $newcomment, - 'property' => 'attr', - 'col' => $col, - 'old_value' => $Issue->$col, - 'value' => $updated->$col, - ]); - } - $Issue = $updated; - } - } - + $newcomment = createcomment($_POST, $Issue); $target = "/{$Page->link}/$newcomment#$newcomment"; abort($target, ($Page->api ? 200 : 303) . ' reply success'); $_POST['reply'] = NULL; @@ -83,15 +21,26 @@ if ($_POST) { $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->link]); +if ($row = $query->fetch()) { + print $row->message; + $Page->teaser = $row->raw; +} + print '