aboutsummaryrefslogtreecommitdiff
path: root/public/omdömen
diff options
context:
space:
mode:
Diffstat (limited to 'public/omdömen')
-rw-r--r--public/omdömen/edit.php33
-rw-r--r--public/omdömen/index.php60
2 files changed, 93 insertions, 0 deletions
diff --git a/public/omdömen/edit.php b/public/omdömen/edit.php
new file mode 100644
index 0000000..00b2d3b
--- /dev/null
+++ b/public/omdömen/edit.php
@@ -0,0 +1,33 @@
+<?php
+require "../../include/sqlite.php";
+
+session_start();
+
+if (!isset($_SESSION["editable review"])) die("Kan ej redigera något omdöme.");
+
+$rowid = $_SESSION["editable review"];
+$res = query('select name, content from reviews where rowid = ?', $rowid);
+$review = (object) $res->fetchArray();
+
+if ($_SERVER["REQUEST_METHOD"] === "POST") {
+ $name = $_POST["name"];
+ $content = $_POST["content"];
+
+ query("update reviews set name = ?, content = ? where rowid = ?", $name, $content, $rowid);
+
+ header("HX-Redirect: /omd%c3%b6men/");
+ exit;
+}
+
+require "../../include/layout.php"; layout($_);
+?>
+
+<form hx-post="/omdömen/edit/">
+ <label for="name">Namn:</label>
+ <input type="text" name="name" id="name" value="<?= htmlspecialchars($review->name) ?>">
+ <br>
+ <label for="content" style="vertical-align: top">Omdöme:</label>
+ <textarea name="content" id="content" style="height: 10em; width: 20em"><?= htmlspecialchars($review->content) ?></textarea>
+ <br>
+ <button>Skicka!</button>
+</form>
diff --git a/public/omdömen/index.php b/public/omdömen/index.php
new file mode 100644
index 0000000..53a9123
--- /dev/null
+++ b/public/omdömen/index.php
@@ -0,0 +1,60 @@
+<?php
+require "../../include/sqlite.php";
+
+session_start();
+
+if ($_SERVER["REQUEST_METHOD"] === "POST") {
+ $name = $_POST["name"];
+ $content = $_POST["content"];
+
+ query("insert into reviews (name, content) values (?, ?)", $name, $content);
+
+ $_SESSION["editable review"] = lastRowId();
+
+ header("HX-Refresh: true");
+ exit;
+}
+
+$res = query('select rowid, name, content from reviews');
+$reviews = [];
+while ($row = $res->fetchArray()) {
+ $row["editable"] = isset($_SESSION["editable review"]) && $_SESSION["editable review"] === $row["rowid"];
+ $row = (object) $row;
+ $reviews[] = $row;
+}
+
+require "../../include/layout.php"; layout($_);
+?>
+<main>
+ <div class="height-transition-wrapper">
+ <form hx-post="/omdömen/">
+ <label for="name">Namn:</label>
+ <input type="text" name="name" id="name">
+ <br>
+ <br>
+ <label for="content" style="vertical-align: top">Omdöme:</label>
+ <textarea name="content" id="content" style="height: 10em; width: 20em"></textarea>
+ <br>
+ <button>Skicka!</button>
+ <p style="margin-bottom: 1em; font-size: 0.8em"><i>Du kommer kunna redigera ditt omdöme tills du stänger fliken</i></p>
+ </form>
+ </div>
+ <button _="
+ on click
+ toggle .open on previous <div/>
+ if (previous <div/>) match .open then
+ set my.innerText to 'Stäng formulär'
+ else
+ set my.innerText to 'Lämna ett omdöme'
+ ">Lämna ett omdöme</button>
+
+ <? foreach ($reviews as $review) { ?>
+ <article style="padding: 0.25em;">
+ <p><i style="color: #333"><?= htmlspecialchars($review->name) ?>:</i></p>
+ <p style="white-space: pre-line"><?= htmlspecialchars($review->content) ?></p>
+ <? if ($review->editable) { ?>
+ <a class="nf nf-fa-edit" href="/omdömen/edit/"></a>
+ <? } ?>
+ </article>
+ <? } ?>
+</main>