aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannah Isopod <me@bathynomus.xyz>2025-06-25 21:40:34 -0600
committerHannah Isopod <me@bathynomus.xyz>2025-06-25 21:40:34 -0600
commit2645f9c733fcab7491238c88a27826fb090aa6b0 (patch)
treebd2649a771eb9184d0c39d86f029ab626cb8716d
parent54dac74821cca8bb84af32bece3779eb59dcf5ef (diff)
guestbook reflects .well-known/button in your site
also: - moved johnvertisement and mothverisement to landing page - minor css fixes and other routine updates
-rw-r--r--about/index.php2
-rw-r--r--common.php2
-rw-r--r--etc/index.php22
-rw-r--r--guestbook/bg.jxlbin664811 -> 0 bytes
-rw-r--r--guestbook/comments.css10
-rw-r--r--guestbook/comments.php12
-rw-r--r--guestbook/index.php2
-rw-r--r--guestbook/submit.php33
-rw-r--r--index.php30
-rw-r--r--links/index.php1
-rw-r--r--notes/index.php2
-rw-r--r--notes/notes.atom23
-rw-r--r--stats/index.php17
-rw-r--r--style.css33
14 files changed, 139 insertions, 50 deletions
diff --git a/about/index.php b/about/index.php
index 52730b1..93441ee 100644
--- a/about/index.php
+++ b/about/index.php
@@ -76,7 +76,7 @@
<td>Youtube for other stuff</td>
</tr>
<tr>
- <td><a href="https://www.twitch.tv/deeptwistygaming" rel="me">deeptwistygaming</a></td>
+ <td><a href="https://www.twitch.tv/isopodgaming_" rel="me">isopodgaming_</a></td>
<td>Twitch</td>
</tr>
<tr>
diff --git a/common.php b/common.php
index 26b02e5..3100ca9 100644
--- a/common.php
+++ b/common.php
@@ -3,7 +3,7 @@
$datadir = "/var/www/data/isopoddotcool/";
# Common data for the various guestbook scripts
-$defaultmodstatus = 0; # If 0, all posts will be held for review by default.
+$defaultmodstatus = 1; # If 0, all posts will be held for review by default.
# If 1, only posts containing the banned words defined in
# $datadir/bannedwords.json will be held for review.
$gbform_messages = array (
diff --git a/etc/index.php b/etc/index.php
index f164f9a..d8259ef 100644
--- a/etc/index.php
+++ b/etc/index.php
@@ -6,24 +6,6 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>More</title>
<link href="../style.css" rel="stylesheet" type="text/css" media="all">
- <style>
- #mothvertisement {
- margin-left: auto;
- display: block;
- margin-right: auto;
- max-width: 728px;
- width: 100%;
- height: 90px;
- }
-
- @media (max-width: 750px) {
- #mothvertisement {
- max-width: 300px;
- width: 100%;
- height: 250px;
- }
- }
-</style>
<?php include($_SERVER['DOCUMENT_ROOT'] . '/seasonal.php'); ?>
</head>
@@ -32,9 +14,7 @@
<h1>more</h1>
<h2 id="caption">more</h2>
<nav><a href="quotes/">quotes</a><a href="https://rss-bridge.isopod.cool/?action=display&bridge=GiteaBridge&context=Commits&branch=main&host=https%3A%2F%2Fgit.isopod.cool&user=will&project=isopod.cool&format=Atom">changelog (atom)</a><!--a href="changelog.php">changelog (legacy)</a--></nav>
- <iframe src="https://john.citrons.xyz/embed?ref=https://isopod.cool/"
- style="margin-left:auto;display:block;margin-right:auto;max-width:732px;width:100%;max-height:94px;height:fit-content;border:none;"></iframe>
- <iframe src="https://mothvertising.moth.monster/embed" id="mothvertisement"></iframe>
+
<!--h2>Time warp</h2>
<p><a href="../old/1/">v1</a> - Old, slow, basically just a carrd page on steroids. Made heavy use of <code>float</code> initially. Ugh.</p>
<p><a href="../old/2/">v2</a> - Slick as hell but entirely Javascript-dependent. This is where my webpage became a website.</p-->
diff --git a/guestbook/bg.jxl b/guestbook/bg.jxl
deleted file mode 100644
index a386f5e..0000000
--- a/guestbook/bg.jxl
+++ /dev/null
Binary files differ
diff --git a/guestbook/comments.css b/guestbook/comments.css
index 031320f..91628cf 100644
--- a/guestbook/comments.css
+++ b/guestbook/comments.css
@@ -12,7 +12,7 @@ form > table {
margin-bottom: 1.5rem;
}
-article {
+.comment {
width: 100%;
margin: 2rem auto;
display: grid;
@@ -24,7 +24,7 @@ article {
'gb-message gb-message gb-message'
'gb-reply gb-reply gb-reply';
}
-article :is(h1,h2,h3,h4,h5,h6) {
+.comment :is(h1,h2,h3,h4,h5,h6) {
border: none;
padding-left: initial;
}
@@ -86,7 +86,7 @@ input[type="submit"]:hover, input[type="reset"]:hover {
.gb-index {
text-align: right;
}
-.gb-cool {
+.gb-cool, .gb-found {
word-break: break-all;
}
.gb-name, .gb-date, .gb-index {
@@ -105,11 +105,11 @@ input[type="submit"]:hover, input[type="reset"]:hover {
border: 2px solid #00000033;
border-bottom: 2px solid #888888;
}
- article {
+ .comment {
margin: 2rem auto;
}
@media (max-width: 43rem) {
- article {
+ .comment {
grid-template-areas:
'gb-name gb-name gb-index'
'gb-date gb-date gb-date'
diff --git a/guestbook/comments.php b/guestbook/comments.php
index 3f65fb9..432c1d2 100644
--- a/guestbook/comments.php
+++ b/guestbook/comments.php
@@ -18,13 +18,19 @@ function echo_comments($page, $Parsedown = null) {
$message = $Parsedown->text($post->message);
$found = htmlentities($post->found);
$website = $post->website;
+ $button = $post->button;
$cool = $post->cool;
$coolsanitized = htmlentities(preg_replace("/https?:\/\//i", "", $cool));
$reply = $Parsedown->text($post->reply);
- $output = $output."<hr><article><div style='grid-area:gb-name;' class='gb-name'>";
- if($website) { $output = $output."<a href='$website'>$name</a>"; }
- else { $output = $output.$name; }
+ $output = $output."<hr><article class='comment'><div style='grid-area:gb-name;' class='gb-name'>";
+ if($website) {
+ if($button) {
+ $output = $output."<a href='$website'><img src='$button' alt='$name'/></a>";
+ } else {
+ $output = $output."<a href='$website'>$name</a>";
+ }
+ } else { $output = $output.$name; }
$output = $output."</div><div style='grid-area:gb-date;' class='gb-date'>$date</div><div style='grid-area:gb-index;' class='gb-index'>Entry #$index</div>";
if($cool) {
$output = $output."<div style='grid-area:gb-cool;' class='gb-cool'><b>cool thing</b>: <a href='$cool'>$coolsanitized</a></div>";
diff --git a/guestbook/index.php b/guestbook/index.php
index 8908e25..299bf96 100644
--- a/guestbook/index.php
+++ b/guestbook/index.php
@@ -22,7 +22,7 @@ error_reporting(E_ALL);
<?php include($_SERVER['DOCUMENT_ROOT'] . '/nav.php'); bg();
include($_SERVER['DOCUMENT_ROOT'] . '/common.php'); ?>
<h1>guestbook</h1>
- <h2 id="caption">say hi!</h2>
+ <h2 id="caption">say hi</h2>
<nav>
<a href="feed.php">RSS</a>
</nav>
diff --git a/guestbook/submit.php b/guestbook/submit.php
index 0e53fb3..bb745a2 100644
--- a/guestbook/submit.php
+++ b/guestbook/submit.php
@@ -52,6 +52,38 @@ error_reporting(E_ALL);
$returnCode = "review";
}
+ $button = ""; // URL for the submitter's .well-known/button.json
+ if($_POST["website"]) {
+ $buttonjson = "";
+ $buttonjsonurl = 'https://'.parse_url($_POST["website"], PHP_URL_HOST).'/.well-known/button.json';
+
+ $ch = curl_init($buttonjsonurl);
+
+ curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
+ curl_setopt($ch, CURLOPT_HEADER, 0);
+
+ $buttonjson = curl_exec($ch);
+ if(curl_error($ch)) {
+ //echo curl_error($ch);
+ $buttonjson = "";
+ }
+ curl_close($ch);
+
+ if($buttonjson) {
+ $buttonobj = json_decode($buttonjson);
+ if($buttonobj->default) {
+ foreach ($buttonobj->buttons as $btn) {
+ if($btn->id === $buttonobj->default) {
+ $button = $btn->uri;
+ break;
+ }
+ }
+ } else {
+ $button = $buttonobj->buttons[0]->uri;
+ }
+ }
+ }
+
$currentPost = array(
"entry" => $_POST["entry"],
"sourceip" => $sourceip,
@@ -61,6 +93,7 @@ error_reporting(E_ALL);
"found" => $_POST["found"],
"website" => $_POST["website"],
+ "button" => $button,
"cool" => $_POST["cool"],
"reply" => "",
"modstatus" => $modstatus
diff --git a/index.php b/index.php
index 7ec1dd8..d7add18 100644
--- a/index.php
+++ b/index.php
@@ -40,6 +40,16 @@
#guys > * {
margin-right: var(--stdpadding);
}
+ #ads {
+ position: fixed;
+ bottom: -181px;
+ left: 50%;
+ transform: translateX(-50%);
+ transition: 0.5s;
+ }
+ #ads:hover {
+ bottom: 0;
+ }
#bubblecolumn {
position: fixed;
right: 7%;
@@ -91,6 +101,11 @@
position: relative;
}
+ iframe {
+ border: none;
+ border-left: var(--stdaccentborder);
+ }
+
@media (prefers-reduced-motion) {
#bubblecolumn {
display: none;
@@ -107,10 +122,11 @@
justify-content: initial;
height: initial;
}
- #guys {
+ #guys, #ads, #ads:hover {
position: initial;
bottom: initial;
left: initial;
+ transform: initial;
}
body {
display: flex;
@@ -198,13 +214,17 @@
<a href="https://baccyflap.com/noai/?nxt&s=ipd">→</a>
</div>
</nav>
- <div class="buttons">
- <img src="etc/buttons/isopodhours.png" alt="isopod hours">
- <a target="_blank" href="https://deeptwisty.com/"><img src="etc/buttons/deeptwisty_button.png" alt="deep twisty"></a>
- </div>
<!--script type="text/javascript">document.write('<a href="desktop.html">$login<span class="blinking" >_</span></a>');</script-->
</main>
+ <div id="ads">
+ <blockquote style="margin-bottom: 0; width: 100%; max-width: 680px;">
+ Unpaid advertising below! My apolo<?php if(rand(0,100) > 90) { echo "cheese"; } else { echo "gies"; } ?>, but it's how we keep the lights on here at IsopodCoolGGMBH PBLLC.
+ </blockquote>
+ <iframe src="https://john.citrons.xyz/embed?ref=https://isopod.cool/" id="johnvertisement"></iframe>
+ <iframe src="https://mothvertising.moth.monster/embed" id="mothvertisement"></iframe>
+ </div>
+
<div id="guys">
<a target="_blank" href="https://dokodemo.neocities.org/" title="made by Dokodemo"><img alt="An isopod!" src="images/isopod3.png"></a>
<a target="_blank" href="https://lu.tiny-universes.net" title="hi, i'm kevin!"><img alt="Kevin" src="images/plant1-2.png"></a>
diff --git a/links/index.php b/links/index.php
index fbb3c71..9a7c400 100644
--- a/links/index.php
+++ b/links/index.php
@@ -30,6 +30,7 @@
<a href="https://maia.crimew.gay/"><img src="buttons/crimew.png" alt="maia.crimew.gay"></a>
<iframe src="https://baccyflap.com/mus/ti/ti.php" style="width:88px;height:31px" scrolling="no" frameborder="0" style="border: none;" cellspacing="0"></iframe>
<a href="https://midnightsolarium.nekoweb.org/home"><img src="buttons/misor.png" alt="Midnight Solarium"></a>
+ <a href="https://dimden.dev/"><img src="https://dimden.dev/services/images/88x31.gif"></a>
</div>
</td>
</tr>
diff --git a/notes/index.php b/notes/index.php
index 9daaf25..e3398ae 100644
--- a/notes/index.php
+++ b/notes/index.php
@@ -45,7 +45,7 @@ error_reporting(E_ALL);
<?php include($_SERVER['DOCUMENT_ROOT'] . '/seasonal.php'); ?>
</head>
<body>
- <?php include($_SERVER['DOCUMENT_ROOT'] . '/nav.php'); bg(true); ?>
+ <?php include($_SERVER['DOCUMENT_ROOT'] . '/nav.php'); bg(); ?>
<h1>isonotes</h1>
<h2 id="caption">superfluous commentary</h2>
<nav>
diff --git a/notes/notes.atom b/notes/notes.atom
index 63d34c3..80580b2 100644
--- a/notes/notes.atom
+++ b/notes/notes.atom
@@ -3,7 +3,7 @@
<title>isopod.cool notes</title>
<id>https://isopod.cool/notes/</id>
<link rel="alternate" href="https://isopod.cool/notes/"></link>
- <updated>2025-06-12T00:00:00+00:00</updated>
+ <updated>2025-06-23T00:00:00+00:00</updated>
<author>
<name>Hannah Isopod</name>
<uri>https://isopod.cool/</uri>
@@ -13,6 +13,27 @@
<category term="links"/>
<category term="tech"/>
<entry>
+ <title>Crazy hacks #2 – Drill a hole in your chip and find out</title>
+ <id>https://wololo.net/2023/05/08/crazy-hacks-2-drill-a-hole-in-your-chip-and-find-out/</id>
+ <link rel="alternate" href="https://wololo.net/2023/05/08/crazy-hacks-2-drill-a-hole-in-your-chip-and-find-out/" type="html" title="Crazy hacks #2 – Drill a hole in your chip and find out"></link>
+ <published>2025-06-25T02:00:00+00:00</published>
+ <updated>2025-06-25T02:00:00+00:00</updated>
+ <summary>&lt;p&gt;Why don't iPhone repair technicians just do this?&lt;/p&gt;</summary>
+ <category term="diy"/>
+ <category term="hacking"/>
+ </entry>
+ <entry>
+ <title>Google Made Me Ruin A Perfectly Good Website: A Case Study On The AI-Generated Internet</title>
+ <id>https://theluddite.org/post/google-ads.html</id>
+ <link rel="alternate" href="https://theluddite.org/post/google-ads.html" type="html" title="Google Made Me Ruin A Perfectly Good Website: A Case Study On The AI-Generated Internet"></link>
+ <published>2025-06-23T02:00:00+00:00</published>
+ <updated>2025-06-23T02:00:00+00:00</updated>
+ <summary>&lt;p&gt;That explains... a lot.&lt;/p&gt;</summary>
+ <category term="capitalism"/>
+ <category term="ai"/>
+ <category term="chatgpt"/>
+ </entry>
+ <entry>
<title>Tiktok's enshittification</title>
<id>https://pluralistic.net/2023/01/21/potemkin-ai/#hey-guys</id>
<link rel="alternate" href="https://pluralistic.net/2023/01/21/potemkin-ai/#hey-guys" type="html" title="Tiktok's enshittification"></link>
diff --git a/stats/index.php b/stats/index.php
index 16a0584..1c279fd 100644
--- a/stats/index.php
+++ b/stats/index.php
@@ -29,14 +29,7 @@
<h1>stat tracker</h1>
<h2 id="caption">Powered by RealTrue&trade; StatAI&trade;</h2>
<table id="statstable">
- <tbody><tr>
- <td>Height</td>
- <td>194cm</td>
- </tr>
- <tr>
- <td>Social Insurance Number</td>
- <td>69</td>
- </tr>
+ <tbody>
<tr>
<td>Storage space</td>
<td>47TiB</td>
@@ -147,6 +140,14 @@
<td>1000W</td>
</tr>
<tr>
+ <td>Height</td>
+ <td>194cm</td>
+ </tr>
+ <tr>
+ <td>Social Insurance Number</td>
+ <td>69</td>
+ </tr>
+ <tr>
<td>Home address</td>
<td>12h 28m 24.97s, +31° 28′ 37.7″</td>
</tr>
diff --git a/style.css b/style.css
index 859ade6..bfadaa5 100644
--- a/style.css
+++ b/style.css
@@ -90,7 +90,7 @@ a:hover {
header {
position: absolute;
top: 0;
- width: fit-content;
+ width: max-content;
min-width: var(--bodywidth);
height: var(--navbarheight);
padding-top: 0.5rem;
@@ -142,8 +142,8 @@ body > a {
/* Background image type beat */
#leftsidebg, #rightsidebg {
--bgimg: url(/bg_dither.png)/*, url(/bg.jxl), url(/bg.jpg)*/;
- background-image: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06)), var(--bgimg);
- background-size: 100% 2px, 3px 100%, cover, cover, cover, cover;
+ background-image: /*linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06)), */var(--bgimg);
+ background-size: /*100% 2px, 3px 100%, cover, cover, cover, */cover;
background-repeat: repeat;
background-position: center;
position: fixed;
@@ -355,6 +355,32 @@ hr {
91%{color: rgb(255,0,127); text-shadow: 0 0 4px rgb(211, 0, 105);}
}
+/* ads */
+#mothvertisement, #johnvertisement {
+ margin-left: auto;
+ display: block;
+ margin-right: auto;
+ width: 100%;
+ max-width: 728px;
+ height: 90px;
+}
+/*#johnvertisement {
+ max-width: 732px;
+ max-height: 94px;
+ height: fit-content;
+}
+#mothvertisement {
+ max-width: 728px;
+ height: 90px;
+}*/
+@media (max-width: 750px) {
+ #mothvertisement {
+ max-width: 300px;
+ width: 100%;
+ height: 250px;
+ }
+}
+
/* If user is on mobile */
@media only screen and (hover: none) {
header {
@@ -364,6 +390,7 @@ hr {
right: initial;
height: initial;
transform: initial;
+ width: fit-content;
}
#header-content {
padding-bottom: calc(var(--stdpadding) / 2);