Add image page.

This commit is contained in:
abbie 2024-08-01 14:06:36 +01:00
parent 805bebcf65
commit 16cfecafbf
Signed by: threeoh6000
GPG key ID: 801FE4AD456E922C
3 changed files with 75 additions and 26 deletions

17
image.php Normal file
View file

@ -0,0 +1,17 @@
<?php
include 'include/db.php';
include 'include/templates.php';
showHeader();
$imgs = getImage(1);
$imgs[0]["uploader"] = uuidToUsername($imgs[0]["uploader"]);
$tags = explode(",", $imgs[0]["tags"]);
echo '<center><img src="' . $imgs[0]["location"] . '" /></center>';
echo '<strong>Uploader:</strong> ' . $imgs[0]["uploader"];
echo '<br/><strong>Tags:</strong>';
for($x = 0; $x < count($tags); $x++) {
printTag($tags[$x], true);
}
echo $footer;
?>

View file

@ -184,6 +184,21 @@ function getImages($page = 0) {
return $data;
}
function getImage($id) {
global $db;
$data = array();
$getStatement = $db->prepare("SELECT location, uploader, tags FROM images where id = ?");
$getStatement->bindParam(1, $id, SQLITE3_INTEGER);
$result = $getStatement->execute();
while ($res = $result->fetchArray(1))
{
array_push($data, $res);
}
return $data;
}
function usernameToUuid($username) {
global $db;
@ -193,4 +208,14 @@ function usernameToUuid($username) {
return $result->fetchArray()[0];
}
function uuidToUsername($uuid) {
global $db;
$getStatement = $db->prepare("SELECT username FROM users WHERE uuid = ?");
$getStatement->bindParam(1, $uuid, SQLITE3_TEXT);
$result = $getStatement->execute();
return $result->fetchArray()[0];
}
?>

View file

@ -6,36 +6,43 @@ $headerNoButtons = '<!DOCTYPE html><html><head><meta charset="utf-8"><title>' .
$headerLoggedIn = '<!DOCTYPE html><html><head><meta charset="utf-8"><title>' . $sitename . '</title><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" type="text/css" href="/css/zimit.min.css"><link rel="stylesheet" type="text/css" href="/css/custom.css"></head><body><header><nav><a class="site">' . $sitename . '</a><ul id="menu"><li><a href="/index.php" id="menu">home</a></li><li><a href="/upload.php" id="menu">upload</a></li><li><a href="/settings.php" id="menu">settings</a></li><li><a href="/logout.php" id="menu">logout</a></li></ul></nav></header><br/><main>';
$headerAdmin = '<!DOCTYPE html><html><head><meta charset="utf-8"><title>' . $sitename . '</title><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" type="text/css" href="/css/zimit.min.css"><link rel="stylesheet" type="text/css" href="/css/custom.css"></head><body><header><nav><a class="site">' . $sitename . '</a><ul id="menu"><li><a href="/index.php" id="menu">home</a></li><li><a href="/upload.php" id="menu">upload</a></li><li><a href="/settings.php" id="menu">settings</a></li><li><a href="/admin.php" id="menu">admin</a></li><li><a href="/logout.php" id="menu">logout</a></li></ul></nav></header><br/><main>';
$footer = '</main><footer>This website is powered by <form style="display:inline;"><button type="submit" formaction="https://git.colean.cc/threeoh6000/meowboard">meowboard</button></form>, licenced under the EUPL 1.2. This theme uses the <form style="display:inline;"><button type="submit" formaction="https://firezenk.github.io/zimit/">Zimit framework</button></form>, licenced under the MIT licence.</footer></body></html>';
function printTag($tag, $largerFontSize = false) {
if($largerFontSize == false) {
echo '<tag color="black">' . $tag . '</tag>';
} else {
echo '<tag color="black" style="font-size: 1em;">' . $tag . '</tag>';
}
}
function dispImage($imgurl, $tags) {
$imgstart = '<div class="thumbnail" style="padding:10px;"><img src="' . $imgurl . '"/><br/><div class="details" style="font-size:20px;">';
$imgend = '</div></div>';
echo "$imgstart";
for($x = 0; $x < count($tags); $x++) {
$tagblock = '<tag color="black">' . $tags[$x] . '</tag>';
echo "$tagblock";
}
echo "$imgend";
$imgstart = '<div class="thumbnail" style="padding:10px;"><img src="' . $imgurl . '" style="max-width: 200px; max-height: 200px;"/><br/><div class="details" style="font-size:20px;">';
$imgend = '</div></div>';
echo "$imgstart";
for($x = 0; $x < count($tags); $x++) {
printTag($tags[$x]);
}
echo "$imgend";
}
function showHeader($hideButtons = 0) {
// PHP is so quirky!!! I love scoping :sparkling-heart:
global $headerNoButtons;
global $headerLoggedIn;
global $headerGuest;
global $headerAdmin;
global $db;
// PHP is so quirky!!! I love scoping :sparkling-heart:
global $headerNoButtons;
global $headerLoggedIn;
global $headerGuest;
global $headerAdmin;
global $db;
if ($hideButtons == 1) { echo $headerNoButtons; return; }
if (!empty($db) && isset($_COOKIE["meowboardSession"])) {
if (isAdmin(tokenToUuid($_COOKIE["meowboardSession"])) == 1) {
echo $headerAdmin;
return;
} else {
echo $headerLoggedIn;
return;
}
}
if (isset($_COOKIE["meowboardSession"])) { echo $headerLoggedIn; return; }
echo $headerGuest;
if ($hideButtons == 1) { echo $headerNoButtons; return; }
if (!empty($db) && isset($_COOKIE["meowboardSession"])) {
if (isAdmin(tokenToUuid($_COOKIE["meowboardSession"])) == 1) {
echo $headerAdmin;
return;
} else {
echo $headerLoggedIn;
return;
}
}
if (isset($_COOKIE["meowboardSession"])) { echo $headerLoggedIn; return; }
echo $headerGuest;
}
?>