diff options
author | Minteck <nekostarfan@gmail.com> | 2021-08-08 19:58:53 +0200 |
---|---|---|
committer | Minteck <nekostarfan@gmail.com> | 2021-08-08 19:58:53 +0200 |
commit | e255736e3f2a95ee82cadc01b0c70749ab946226 (patch) | |
tree | 5164e67e7d00adf24080f4b1246b2d7d789202d3 /admin | |
parent | a20dff82a7e2602738f847fa4f1428af3235aafc (diff) | |
download | main-e255736e3f2a95ee82cadc01b0c70749ab946226.tar.gz main-e255736e3f2a95ee82cadc01b0c70749ab946226.tar.bz2 main-e255736e3f2a95ee82cadc01b0c70749ab946226.zip |
New admin features done
Diffstat (limited to 'admin')
-rw-r--r-- | admin/api/createURL.php | 20 | ||||
-rw-r--r-- | admin/api/deleteURL.php | 23 | ||||
-rw-r--r-- | admin/panes/shortens.php | 56 |
3 files changed, 97 insertions, 2 deletions
diff --git a/admin/api/createURL.php b/admin/api/createURL.php new file mode 100644 index 0000000..dc8a569 --- /dev/null +++ b/admin/api/createURL.php @@ -0,0 +1,20 @@ +<?php
+
+require_once $_SERVER['DOCUMENT_ROOT'] . "/admin/private/header.api.php";
+
+if (isset($_GET['shortenedName']) && strpos($_GET['shortenedName'], "/") === false && strpos($_GET['shortenedName'], " ") === false) {
+ $name = $_GET['shortenedName'];
+} else {
+ die();
+}
+
+if (isset($_GET['redirectsTo']) && strpos($_GET['shortenedName'], " ") === false) {
+ $output = $_GET['redirectsTo'];
+} else {
+ die();
+}
+
+file_put_contents("/mnt/minteckrolt-urls/links.txt", file_get_contents("/mnt/minteckrolt-urls/links.txt") . "\n" . $name . " " . $output);
+
+header("Location: /admin/panes/shortens.php");
+die();
\ No newline at end of file diff --git a/admin/api/deleteURL.php b/admin/api/deleteURL.php new file mode 100644 index 0000000..895751e --- /dev/null +++ b/admin/api/deleteURL.php @@ -0,0 +1,23 @@ +<?php
+
+require_once $_SERVER['DOCUMENT_ROOT'] . "/admin/private/header.api.php";
+
+if (isset($_GET['_']) && strpos($_GET['_'], "/") === false) {
+ $arg = $_GET['_'];
+} else {
+ die();
+}
+
+$urls = explode("\n", file_get_contents("/mnt/minteckrolt-urls/links.txt"));
+$newUrlsArr = [];
+
+foreach ($urls as $url) {
+ if (explode(" ", $url)[0] !== $arg) {
+ $newUrlsArr[] = $url;
+ }
+}
+
+file_put_contents("/mnt/minteckrolt-urls/links.txt", implode("\n", $newUrlsArr));
+
+header("Location: /admin/panes/shortens.php");
+die();
\ No newline at end of file diff --git a/admin/panes/shortens.php b/admin/panes/shortens.php index 51afcbb..165c198 100644 --- a/admin/panes/shortens.php +++ b/admin/panes/shortens.php @@ -33,9 +33,61 @@ <h2 style="text-align:center;">Shortened URLs</h2>
<ul class="list-group" style="margin-top:20px;">
- <li class="list-group-item">English (primary) <span style="float:right;"><a href="/admin/panes/editor.php?file=conduct.en&name=Code%20of%20Conduct%20-%20English&context=code">Edit</a> · <a href="/code-of-conduct/?en" target="_blank">View</a></span></li>
- <li class="list-group-item">French <span style="float:right;"><a href="/admin/panes/editor.php?file=conduct.fr&name=Code%20of%20Conduct%20-%20French&context=code">Edit</a> · <a href="/code-of-conduct/?fr" target="_blank">View</a></span></li>
+ <?php
+
+ $links = explode("\n", file_get_contents("/mnt/minteckrolt-urls/links.txt"));
+
+ foreach ($links as $link) {
+ if (trim($link) !== "") {
+ $url = explode(" ", $link)[0];
+ $redirect = explode(" ", $link)[1];
+
+ echo('<li class="list-group-item"><code>https://mt.ro.lt/<a href="https://mt.ro.lt/' . $url . '" target="_blank">' . $url . '</a></code> <span style="float:right;"><a href="#" onclick="deleteURL(\'' . $url . '\')">Delete</a></span></li>');
+ }
+ }
+
+ ?><li class="list-group-item">
+ <form id="creator" action="/admin/api/createURL.php">
+ <code>https://mt.ro.lt/<input type="text" name="shortenedName" placeholder="superurl"></code> → <input type="text" name="redirectsTo" placeholder="https://kde.org"> <span style="float:right;"><a href="#" onclick="document.getElementById('creator').submit();">Create</a></span>
+ </form>
+ </li>
</ul>
</div>
+<script>
+ let currurl;
+
+ function deleteURL(url) {
+ currurl = url;
+
+ $("#myModal").modal()
+ }
+
+ function confirmDelete(url) {
+ location.href = "/admin/api/deleteURL.php?_=" + url;
+ }
+</script>
+
+ <div class="modal" id="myModal">
+ <div class="modal-dialog">
+ <div class="modal-content">
+
+ <div class="modal-header">
+ <h4 class="modal-title">Delete this shortened URL?</h4>
+ <button type="button" class="close" data-dismiss="modal">×</button>
+ </div>
+
+ <div class="modal-body">
+ This cannot be undone and may have unwanted side effects. After this URL is deleted, it will redirect to Minteck's Space's homepage.
+ </div>
+
+ <div class="modal-footer">
+ <button type="button" class="btn btn-success" onclick="confirmDelete(currurl);">Confirm</button>
+ <button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
+ </div>
+
+ </div>
+ </div>
+ </div>
+
<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/admin/private/footer.php"; ?>
\ No newline at end of file |