diff options
| -rw-r--r-- | controllers/list.php | 17 | ||||
| -rw-r--r-- | views/global/router.php | 1 | ||||
| -rw-r--r-- | views/newlist/index.php | 28 | ||||
| -rw-r--r-- | views/newlist/meta.php | 4 |
4 files changed, 50 insertions, 0 deletions
diff --git a/controllers/list.php b/controllers/list.php new file mode 100644 index 0000000..0ec33d1 --- /dev/null +++ b/controllers/list.php @@ -0,0 +1,17 @@ +<?php +namespace Controller; +use Database; +use Exception; + +function on_post() { + global $list_status; + $list_status = ""; + + try { + $uid = Database\Cookie::fromDB($_POST['token'])->UID; + Database\ArchiveList::create($uid, $_POST["name"], $_POST["description"]); + } + catch(Exception $e) { + $list_status = $e; + } +} diff --git a/views/global/router.php b/views/global/router.php index d77fcda..f8e1299 100644 --- a/views/global/router.php +++ b/views/global/router.php @@ -17,6 +17,7 @@ function route_view() { case '/register': return '/register'; case '/login': return '/login'; case '/logout': return '/logout'; + case '/newlist': return '/newlist'; } switch ($uri) { diff --git a/views/newlist/index.php b/views/newlist/index.php new file mode 100644 index 0000000..289c9da --- /dev/null +++ b/views/newlist/index.php @@ -0,0 +1,28 @@ +<script type="text/javascript"> + if (!sessionStorage.getItem('token')) { + window.location.href = '/login'; + } +</script> + +<h1>Create a new list</h1> + +<hr class="new-section"/> + +<form action="#" method="POST"> + <?php if (isset($list_status)): ?> + <?php if ($list_status !== ""): ?> + <p class="item error"><span> + <strong>Error:</strong> <?= $list_status ?> + </span></p> + <?php endif; ?> + <?php endif; ?> + + <input type="text" name="name" placeholder="List title" minlength="1"> + <textarea name="description" placeholder="Description"></textarea> + <input id="token" type="hidden" name="token" value=""> + <input type="submit" value="Login"> +</form> +<script type="text/javascript"> + const tokenInput = document.getElementById('token'); + tokenInput.value = sessionStorage.getItem('token'); +</script> diff --git a/views/newlist/meta.php b/views/newlist/meta.php new file mode 100644 index 0000000..6f02fff --- /dev/null +++ b/views/newlist/meta.php @@ -0,0 +1,4 @@ +<?php + +$title = 'Create a new list of archives'; +$controller = 'list'; |
