aboutsummaryrefslogtreecommitdiff
path: root/blog/post.php
diff options
context:
space:
mode:
Diffstat (limited to 'blog/post.php')
-rw-r--r--blog/post.php133
1 files changed, 133 insertions, 0 deletions
diff --git a/blog/post.php b/blog/post.php
new file mode 100644
index 0000000..354472b
--- /dev/null
+++ b/blog/post.php
@@ -0,0 +1,133 @@
+<?php
+/*ini_set('display_errors', 1);
+ini_set('display_startup_errors', 1);
+error_reporting(E_ALL);*/
+
+if($_SERVER['REQUEST_URI'] === "/blog/posts/post.php") {
+ header("Location: /blog/");
+ die();
+}
+
+$root = $_SERVER['DOCUMENT_ROOT'];
+
+$cwd = preg_replace('/^.*\//', '', getcwd());
+$feed = simplexml_load_file($_SERVER['DOCUMENT_ROOT']."/blog/blog.atom");
+$pdate = "";
+$udate = "";
+$title = "";
+$descr = "";
+$prevtitle = "";
+$prevlink = "";
+$nexttitle = "";
+$nextlink = "";
+foreach($feed->entry as $entry) {
+ if($entry->id == $cwd) {
+ $pdate = preg_replace('/T.*$/', ' ', $entry->published);
+ $udate = preg_replace('/T.*$/', ' ', $entry->updated);
+ $title = $entry->title;
+ $descr = htmlspecialchars($entry->summary);
+ } else if($title) {
+ $nextlink = $entry->link["href"];
+ $nexttitle = $entry->title;
+ break;
+ } else {
+ $prevlink = $entry->link["href"];
+ $prevtitle = $entry->title;
+ }
+}
+?>
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <link href="/style.css" rel="stylesheet" type="text/css" media="all">
+ <link href="/guestbook/comments.css" rel="stylesheet" type="text/css" media="all">
+ <?php
+ echo("<title>$title</title><meta name='description' content='$descr'>");
+ $bgfile = glob('bg.*')[0];
+ if(!is_null($bgfile)) {
+ echo("<style> body > h1:first-of-type { background-image: url('$bgfile') } </style>");
+ }
+ ?>
+ <style>
+ form {
+ display: flex;
+ flex-direction: column;
+ gap: calc(var(--stdpadding) / 2);
+ }
+ #commentform-top, #commentform-bottom {
+ display: flex;
+ gap: calc(var(--stdpadding) / 2);
+ align-items: center;
+ }
+ #commentform-bottom {
+ justify-content: right;
+ }
+ input[type="submit"] {
+ width: fit-content;
+ }
+ .error, .success {
+ flex-grow: 1;
+ }
+ @media only screen and (hover: none) {
+ #commentform-top {
+ flex-direction: column;
+ }
+ }
+ td {
+ display: table-cell !important;
+ }
+ </style>
+ <?php include($root . '/seasonal.php'); ?>
+ </head>
+ <body>
+ <?php
+ include($root . '/nav.php');
+ include($root . '/common.php');
+ $udates = "";
+ if($pdate != $udate) { $udates = " | Updated&nbsp;on&nbsp;$udate"; }
+ echo("<h1>isoblog</h1><h2 id='caption'>$title</h2><p style='text-align: center;'><em>Posted&nbsp;on&nbsp;$pdate$udates</em></p>");
+ //echo("<p style='text-align: right;'>I'm testing in prod right now. don't worry about it");
+
+ //Boilerplate for Parsedown
+ include($root."/Parsedown.php");
+ $Parsedown = new Parsedown();
+ echo $Parsedown->text(file_get_contents("index.md"));
+ $Parsedown->setSafeMode(true);
+ $return = $_GET["return"];
+ ?>
+ <hr>
+ <nav style="flex-direction: column;">
+ <?php
+ if($prevlink) {
+ echo("<a style='width: 100%; box-sizing: border-box;' href='$prevlink'><b>Previous</b>: $prevtitle</a>");
+ }
+ if($nextlink) {
+ echo("<a style='width: 100%; box-sizing: border-box;' href='$nextlink'><b>Next</b>: $nexttitle</a>");
+ }
+ ?>
+ </nav>
+ <hr>
+ <h2>Comments</h2>
+ <form action="/guestbook/submit.php" method="post" autocomplete="off">
+ <?php echo "<input type='text' name='entry' value='".preg_replace("/^.*\//","",getcwd())."' style='display: none;' readonly>"; ?>
+ <textarea name="msg" placeholder="I know what you are." style="opacity: 0; position: absolute; left: -10000rem; height: 0; width: 0; overflow: clip;"></textarea>
+ <div id="commentform-top">
+ <input type="text" name="name" placeholder="Name">
+ <input type="text" name="website" placeholder="Website (optional)">
+ <input type="text" name="botcheck" placeholder="Bot test (type &quot;isopod&quot;)">
+ </div>
+ <textarea name="message" placeholder="Comment (Now supports Markdown!)"></textarea>
+ <div id="commentform-bottom">
+ <?php
+ if($return) {
+ echo($gbform_messages[$return]);
+ }
+ ?>
+ <input type="submit" value="Submit">
+ </div>
+ </form>
+ <?php include($root.'/guestbook/comments.php'); echo_comments(preg_replace("/^.*\//","",getcwd()), $Parsedown); ?>
+ </body>
+</html>