Slight modifications to how posts are rendered

This commit is contained in:
Conner Harkness 2025-06-24 10:19:51 -06:00
parent 11d4896647
commit 1152b38cb7
7 changed files with 71 additions and 75 deletions

View File

@ -5,7 +5,7 @@
<hr /> <hr />
<div class="container"> <div class="container mb-5">
<div class="row"> <div class="row">
<div class="col-lg-4"> <div class="col-lg-4">
<?php foreach ($varFooterLinks as $varLink): ?> <?php foreach ($varFooterLinks as $varLink): ?>

View File

@ -19,7 +19,6 @@
<div class="offcanvas offcanvas-start" id="sidebar"> <div class="offcanvas offcanvas-start" id="sidebar">
<div class="offcanvas-body"> <div class="offcanvas-body">
<?php foreach ($varSidebarLinks as $varLink): ?> <?php foreach ($varSidebarLinks as $varLink): ?>
<a class="btn btn-outline-secondary d-block w-100 mb-2" href="<?= $varLink["url"]; ?>"><i class="fa fa-fw fa-<?= $varLink["icon"]; ?> pe-2"></i> <?= $varLink["label"]; ?></a> <a class="btn btn-outline-secondary d-block w-100 mb-2" href="<?= $varLink["url"]; ?>"><i class="fa fa-fw fa-<?= $varLink["icon"]; ?> pe-2"></i> <?= $varLink["label"]; ?></a>
<?php endforeach; ?> <?php endforeach; ?>
@ -32,7 +31,7 @@
<div class="navbar-nav d-inline-flex align-items-center"> <div class="navbar-nav d-inline-flex align-items-center">
<div class="navbar-nav d-inline-flex"> <div class="navbar-nav d-inline-flex">
<a class="btn btn-secondary me-2" data-bs-toggle="offcanvas" data-bs-target="#sidebar"><i class="fa fa-fw fa-bars"></i></a> <a class="btn btn-secondary me-2" data-bs-toggle="offcanvas" data-bs-target="#sidebar">&nbsp; <i class="fa fa-fw fa-bars"></i> &nbsp;</a>
</div> </div>
@ -64,7 +63,7 @@
$strUserText = $varUser["user_name"] ?? $varUser["email"] ?? "User"; $strUserText = $varUser["user_name"] ?? $varUser["email"] ?? "User";
?> ?>
<a class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown"><i class="fa fa-fw fa-user"></i></a> <a class="btn btn-secondary dropdown-toggle h-100" data-bs-toggle="dropdown"><i class="fa fa-fw fa-user"></i> &nbsp;</a>
<div class="dropdown-menu dropdown-menu-end"> <div class="dropdown-menu dropdown-menu-end">

49
lib/PostRender.php Normal file
View File

@ -0,0 +1,49 @@
<?php
class PostRender
{
public static function rows($varRows)
{
?>
<?php if (file_exists("site.css")): ?>
<link rel="stylesheet" href="site.css" />
<?php endif; ?>
<?php foreach ($varRows as $r): ?>
<div class="container my-5">
<div class="row">
<div class="col-lg-8">
<div class="xborder xborder-secondary xrounded xp-3">
<?php echo $varParsedown->text($r["content"]); ?>
</div>
<hr />
<div class="text-muted">
<div>by <?= $r["display_name"] ?? $r["user_name"] ?? $r["email"]; ?></div>
<div>on <?= $r["created"]; ?> UTC</div>
</div>
<?php if (Request::getParam("edit")): ?>
<div>
<a href="/post/<?= $r["id"]; ?>">edit</a>
</div>
<?php endif; ?>
</div>
</div>
</div>
<?php endforeach; ?>
<?php if (count($varRows) < 1): ?>
<div class="container my-5">
<div class="row">
<div class="col-lg-8">
<p>Sorry, there is nothing here to show.</p>
</div>
</div>
</div>
<?php endif; ?>
<?php if (file_exists("site.js")): ?>
<script src="site.js"></script>
<?php endif; ?>
<?php
}
}
?>

View File

@ -5,9 +5,19 @@
{ {
global $c; global $c;
$varRows = $c->query("SELECT * from {$strTableName} order by `sort` asc"); $varRows = [];
$varKeys = []; $varKeys = [];
try
{
$varRows = $c->query("SELECT * from {$strTableName} order by sort asc");
}
catch (Exception $x)
{
$varRows = $c->query("SELECT * from {$strTableName}");
}
$strInput = file_get_contents("php://input"); $strInput = file_get_contents("php://input");
if (strlen($strInput) > 0) if (strlen($strInput) > 0)

View File

@ -58,10 +58,6 @@
</div> </div>
<?php endif; ?> <?php endif; ?>
<?php if (file_exists("site.css")): ?>
<link rel="stylesheet" href="site.css" />
<?php endif; ?>
<?php if (Request::getParam("edit")): ?> <?php if (Request::getParam("edit")): ?>
<div class="container my-5"> <div class="container my-5">
<div class="row"> <div class="row">
@ -72,38 +68,6 @@
</div> </div>
<?php endif; ?> <?php endif; ?>
<?php foreach ($varPosts as $p): ?> <?php
<div class="container my-5"> PostRender::rows($varPosts);
<div class="row"> ?>
<div class="col-lg-8">
<div class="xborder xborder-secondary xrounded xp-3">
<?php echo $varParsedown->text($p["content"]); ?>
</div>
<hr />
<div class="text-muted">
<div>by <?= $p["display_name"] ?? $p["user_name"] ?? $p["email"]; ?></div>
<div>on <?= $p["created"]; ?> UTC</div>
</div>
<?php if (Request::getParam("edit")): ?>
<div>
<a href="/post/<?= $p["id"]; ?>">edit</a>
</div>
<?php endif; ?>
</div>
</div>
</div>
<?php endforeach; ?>
<?php if (count($varPosts) < 1): ?>
<div class="container my-5">
<div class="row">
<div class="col-lg-8">
<p>Sorry, there is nothing here to show.</p>
</div>
</div>
</div>
<?php endif; ?>
<?php if (file_exists("site.js")): ?>
<script src="site.js"></script>
<?php endif; ?>

View File

@ -1,29 +0,0 @@
<?php
$varParsedown = new Parsedown();
$strText = $varParsedown->text("
# Hello world
1. Testing 123
2. Testing 456
```
if then else
```
");
if (Request::getArg(0) == "plain")
{
ob_clean();
echo $strText;
ob_end_flush();
exit;
}
?>
<div class="container my-5">
<div class="row">
<div class="col-lg-6">
<?= $strText; ?>
</div>
</div>
</div>

View File

@ -7,9 +7,11 @@
$strId = Request::getArg(0); $strId = Request::getArg(0);
$strPath = Request::getParam("to") ?? ""; $strPath = Request::getParam("to") ?? "";
$strContent = ""; $strContent = "";
$strVerb = "Create";
if (strlen($strId) > 0) if (strlen($strId) > 0)
{ {
$strVerb = "Edit";
$varRows = $c->query("SELECT * from posts where id = ?", $strId); $varRows = $c->query("SELECT * from posts where id = ?", $strId);
if (count($varRows) !== 1) if (count($varRows) !== 1)
@ -74,12 +76,13 @@
<div class="navbar navbar-expand bg-body-tertiary d-flex px-3 sticky-top"> <div class="navbar navbar-expand bg-body-tertiary d-flex px-3 sticky-top">
<div class="container justify-content-between"> <div class="container justify-content-between">
<div class="navbar-nav d-inline-flex align-items-center"> <div class="navbar-nav d-inline-flex align-items-center">
<span class="navbar-brand">Post</span> <span class="navbar-brand"><?= $strVerb; ?> Post</span>
<span class="nav-item text-nowrap me-2">Location</span>
<input class="form-control me-2" type="text" name="path" placeholder="e.g. /home" value="<?= $strPath; ?>" /> <input class="form-control me-2" type="text" name="path" placeholder="e.g. /home" value="<?= $strPath; ?>" />
<?php if ($strId == null || strlen($strId) < 1): ?> <?php if ($strId == null || strlen($strId) < 1): ?>
<a class="btn btn-outline-primary text-nowrap" onclick="fnSave();"><i class="fa fa-fw fa-plus-circle"></i> Create</a> <a class="btn btn-outline-primary text-nowrap" onclick="fnSave();"><i class="fa fa-fw fa-paper-plane"></i> Submit</a>
<?php else: ?> <?php else: ?>
<a class="btn btn-outline-success text-nowrap" onclick="fnSave();"><i class="fa fa-fw fa-save"></i> Save</a> <a class="btn btn-outline-success text-nowrap" onclick="fnSave();"><i class="fa fa-fw fa-save"></i> Save</a>
<?php endif; ?> <?php endif; ?>