This commit is contained in:
parent
e20f6b4545
commit
a1b1ba4826
462
index.php
462
index.php
|
@ -4,7 +4,9 @@
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<link rel="icon" href="https://tilde.team/~grizzly/favicon.svg" />
|
<link rel="icon" href="https://tilde.team/~grizzly/components/favicon.svg" />
|
||||||
|
<!-- <link rel="stylesheet" href="https://tilde.team/~grizzly/css/picnic.min.css" /> -->
|
||||||
|
<link rel="stylesheet" href="components/css/picnic.min.css" />
|
||||||
<title>Grizzly’s Space</title>
|
<title>Grizzly’s Space</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -17,265 +19,145 @@
|
||||||
<main>
|
<main>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="left">
|
|
||||||
<h2>Hi, I'm Grizzly!</h2>
|
<h2>Hi, I'm Grizzly!</h2>
|
||||||
Have a great day! :)
|
Have a great day! :)
|
||||||
|
|
||||||
<div class="widgets">
|
<div class="widgets">
|
||||||
<pre>
|
<?=Ascii()?>
|
||||||
_________________
|
|
||||||
< Hello, everyone >
|
|
||||||
-----------------
|
|
||||||
\
|
|
||||||
\
|
|
||||||
___
|
|
||||||
{~._.~}
|
|
||||||
( Y )
|
|
||||||
()~*~()
|
|
||||||
(_)-(_)
|
|
||||||
</pre
|
|
||||||
>
|
|
||||||
<div class="botany">
|
<div class="botany">
|
||||||
<h3>botany: my plant</h3>
|
<h3>botany: my plant</h3>
|
||||||
<?php require_once("components/botany.php"); ?>
|
<?php require_once('components/botany.php'); ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="more">
|
<?php echo More(); ?>
|
||||||
<div class="links">
|
|
||||||
<div>
|
|
||||||
<p>
|
|
||||||
contact
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div style="margin-left: 10px;">
|
|
||||||
<div style="display: flex;">
|
|
||||||
<div style="width: 50px;">
|
|
||||||
mail:
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
grizzly <em>at</em> ttm.sh
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div style="display: flex;">
|
|
||||||
<div style="width: 50px;">|---</div>
|
|
||||||
<div>
|
|
||||||
grizzly <em>at</em> tilde.club
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div style="display: flex;">
|
|
||||||
<div style="width: 50px;">|---</div>
|
|
||||||
<div>
|
|
||||||
grizzly <em>at</em> tilde.team
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div style="display: flex;">
|
|
||||||
<div style="width: 50px;">|---</div>
|
|
||||||
<div>
|
|
||||||
grizzly <em>at</em> envs.net
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div style="display: flex;">
|
|
||||||
<div style="width: 50px;">
|
|
||||||
xmpp:
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
grizzly <em>at</em> tilde.team
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div class="side">
|
||||||
<p>
|
<?php require_once('components/comments/comment.php'); ?>
|
||||||
me
|
<?php require_once('components/comments/form.php'); ?>
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<a href="https://grizzly.ttm.sh/twtxt.txt">twtxt</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="https://tilde.team/~grizzly/">tilde.team/~grizzly</a>,
|
|
||||||
<small>
|
|
||||||
(<a href="https://grizzly.ttm.sh/">grizzly.ttm.sh</a>)
|
|
||||||
</small>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="https://tilde.club/~grizzly/">tilde.club/~grizzly</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="https://envs.net/~grizzly/">envs.net/~grizzly</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="http://rw.rs/~grizzly/">rw.rs/~grizzly</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="gemini://tilde.team/~grizzly/">gemini://tilde.team/~grizzly</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<p>projects</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
members site roulette: (<a href="https://tildegit.org/grizzly/site_roulette" target="_blank">source code</a>) =>
|
|
||||||
<a href="https://tilde.club/~grizzly/browser/" target="_blank">tilde.club</a>,
|
|
||||||
<a href="https://tilde.team/~grizzly/browser/" target="_blank">tilde.team</a>,
|
|
||||||
<a href="https://envs.net/~grizzly/browser/" target="_blank">envs.net</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
botany widget: (<a href="https://tildegit.org/grizzly/botany_widget" target="_blank">source code</a>)
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<p>interesting links</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
awesome tuis: <a href="https://github.com/rothgar/awesome-tuis" target="_blank">github.com/rothgar/awesome-tuis</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="right">
|
|
||||||
<div class="comments">
|
|
||||||
<?php
|
|
||||||
require_once('/home/grizzly/store/comments/db.php');
|
|
||||||
$query = $db->prepare("SELECT * FROM `comments` ORDER BY id DESC;");
|
|
||||||
$query->execute();
|
|
||||||
|
|
||||||
while($fetch = $query->fetch()) {
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|
||||||
<div class="comment">
|
|
||||||
<div class="meta">
|
|
||||||
<span><?=$fetch['login_name']?></span>
|
|
||||||
<span><?=date("Y/m/d H:i:s", $fetch['post_time'])?></span>
|
|
||||||
</div>
|
|
||||||
<div class="comment"><?=$fetch['comment']?></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<?php } ?>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="form">
|
|
||||||
<?php if (@$_GET['success'] == 'posted') { echo '<span style="color: green;font-size: 10px">Posted, thanks for comment!</span>'; } ?>
|
|
||||||
<?php if (@$_GET['error'] == 'not_valid_auth_key') { echo '<span style="color: red;font-size: 10px">Not valid auth key</span>'; }?>
|
|
||||||
<?php if (@$_GET['error'] == 'fill_all_inputs') { echo '<span style="color: red;font-size: 10px">Fill all inputs</span>'; }?>
|
|
||||||
<?php if (@$_GET['error'] == 'max_240_characters') { echo '<span style="color: red;font-size: 10px">Maximum 240 characters</span>'; }?>
|
|
||||||
<?php if (@$_GET['error'] == 'auth_file_not_readable') { echo '<span style="color: red;font-size: 10px">Auth file not readable</span>'; }?>
|
|
||||||
|
|
||||||
<div style="font-size: 10px;">Leave a message :)</div>
|
|
||||||
|
|
||||||
<form action="https://tilde.team/~grizzly/comments/" method="post">
|
|
||||||
<input type="text" placeholder="your tilde login" name="login_name" />
|
|
||||||
<input type="text" placeholder="your auth key" name="auth_key" />
|
|
||||||
<textarea
|
|
||||||
name="comment"
|
|
||||||
placeholder="your comment"
|
|
||||||
maxlength="240"
|
|
||||||
></textarea>
|
|
||||||
<input type="submit" name="save" value="post" />
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<div class="howto">
|
|
||||||
<details>
|
|
||||||
<summary>
|
|
||||||
How to post comment
|
|
||||||
</summary>
|
|
||||||
|
|
||||||
Only tilde.team members can post comments here, if you are a tilde.team member, please add to your home directory a file with a random string which will be your auth key.
|
|
||||||
<pre>
|
|
||||||
touch ~/.auth_key.grizzly;
|
|
||||||
echo "password"\
|
|
||||||
> ~/.auth_key.grizzly</pre>
|
|
||||||
</details>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
<footer>
|
<footer>
|
||||||
|
<?=WebRing()?>
|
||||||
<!-- tilde.team ring fragment-->
|
|
||||||
<div class="newring">
|
|
||||||
[<a href="https://tilde.team/ring/?action=prev&me=grizzly">previous</a
|
|
||||||
>] [<a href="https://tilde.team/ring/?action=random&me=grizzly"
|
|
||||||
>random</a
|
|
||||||
>] [<a href="https://tilde.team/ring/?action=next&me=grizzly">next</a
|
|
||||||
>]
|
|
||||||
<br />
|
|
||||||
<a href="https://tilde.team/ring/">how to join this webring</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>copyleft 2137</div>
|
<div>copyleft 2137</div>
|
||||||
</footer>
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
<style>
|
<style>
|
||||||
|
@media (max-width: 50rem) {
|
||||||
|
.widgets,
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column !important;
|
||||||
|
}
|
||||||
|
.side {
|
||||||
|
border: 0px !important;
|
||||||
|
width: 100vw !important;
|
||||||
|
flex-grow: 0 !important;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
* {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-family: "lucida sans unicode", "lucida grande", sans-serif;
|
||||||
|
line-height: 1.4;
|
||||||
|
/* line-height: 1.7; */
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
.app {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
min-height: 100vh;
|
||||||
|
}
|
||||||
|
header {
|
||||||
|
background-color: #5300be;
|
||||||
|
border-bottom: 3px solid #2a0061;
|
||||||
|
padding: 10px;
|
||||||
|
color: #eee;
|
||||||
|
font-weight: 800;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
main {
|
||||||
|
display: flex;
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
footer {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 12px;
|
||||||
|
background-color: #eee;
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
header span {
|
||||||
|
width: 33%;
|
||||||
|
}
|
||||||
|
header span a {
|
||||||
|
color: #eee;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.quote {
|
||||||
|
font-weight: 300;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.newring {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-grow: 1;
|
||||||
|
height: auto;
|
||||||
|
flex-direction: row;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex-grow: 1;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
width: 100%;
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
.side {
|
||||||
|
width: 200px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
background-color: #e7e5eb;
|
||||||
|
border-left: 1px solid #2a0061;
|
||||||
|
/* height: 100vh; */
|
||||||
|
flex-grow: 1; /* XXX */
|
||||||
|
}
|
||||||
.widgets {
|
.widgets {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
@media (max-width: 45rem) {
|
.more {
|
||||||
.widgets,
|
margin-top: 20px;
|
||||||
.content {
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
}
|
||||||
.right {
|
.mail {
|
||||||
position: static !important;
|
margin-bottom: 10px;
|
||||||
width: 100vw !important;
|
|
||||||
border: 0px !important;
|
|
||||||
}
|
|
||||||
.left {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
.left {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
|
|
||||||
margin: 20px;
|
|
||||||
|
|
||||||
/* align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
align-self: center;
|
|
||||||
align-content: center; */
|
|
||||||
}
|
|
||||||
.right {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
background-color: #e7e5eb;
|
|
||||||
border-left: 1px solid #2a0061;
|
|
||||||
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
width: 200px;
|
|
||||||
|
|
||||||
height: 100%;
|
|
||||||
|
|
||||||
padding: 10px;
|
|
||||||
}
|
}
|
||||||
.comments {
|
.comments {
|
||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
flex-grow: 1;
|
flex-grow: 1;
|
||||||
|
max-height: 50vh; /* XXX */
|
||||||
}
|
}
|
||||||
.comment {
|
.comment {
|
||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
border-bottom: 1px dotted #2a0061;
|
border-bottom: 1px dotted #2a0061;
|
||||||
|
padding: 5px;
|
||||||
}
|
}
|
||||||
.form {
|
.form {
|
||||||
border-top: 1px solid #2a0061;
|
border-top: 1px solid #2a0061;
|
||||||
|
@ -287,9 +169,6 @@ echo "password"\
|
||||||
display: block;
|
display: block;
|
||||||
margin: 3px;
|
margin: 3px;
|
||||||
}
|
}
|
||||||
.form input {
|
|
||||||
height: 20px;
|
|
||||||
}
|
|
||||||
.form textarea {
|
.form textarea {
|
||||||
height: 40px;
|
height: 40px;
|
||||||
}
|
}
|
||||||
|
@ -314,39 +193,8 @@ echo "password"\
|
||||||
.links p {
|
.links p {
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
|
.info_form {
|
||||||
* {
|
font-size: 10px;
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font-family: "lucida sans unicode", "lucida grande", sans-serif;
|
|
||||||
line-height: 1.7;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
.app {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
min-height: 100vh;
|
|
||||||
background-color: #f5f5f5;
|
|
||||||
}
|
|
||||||
.container {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
/* align-items: center; TODO */
|
|
||||||
background-color: #f5f5f5;
|
|
||||||
/* margin: 20px; */
|
|
||||||
flex-grow: 1;
|
|
||||||
}
|
|
||||||
.more {
|
|
||||||
margin-top: 20px;
|
|
||||||
}
|
|
||||||
.mail {
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
.quote {
|
|
||||||
font-weight: 300;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
.botany {
|
.botany {
|
||||||
|
@ -359,46 +207,54 @@ echo "password"\
|
||||||
.botany h3 {
|
.botany h3 {
|
||||||
color: green;
|
color: green;
|
||||||
}
|
}
|
||||||
header {
|
|
||||||
padding: 10px;
|
|
||||||
border-bottom: 3px solid #2a0061;
|
|
||||||
background-color: #5300be;
|
|
||||||
font-weight: 800;
|
|
||||||
color: #eee;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
header span {
|
|
||||||
width: 33%;
|
|
||||||
}
|
|
||||||
header span a {
|
|
||||||
color: #eee;
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
main {
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
flex-grow: 1;
|
|
||||||
}
|
|
||||||
footer {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
font-size: 12px;
|
|
||||||
background-color: #eeeeee;
|
|
||||||
}
|
|
||||||
footer div {
|
|
||||||
margin: 10px;
|
|
||||||
}
|
|
||||||
.newring a {
|
|
||||||
color: #777;
|
|
||||||
}
|
|
||||||
.newring a:hover {
|
|
||||||
color: #525252;
|
|
||||||
}
|
|
||||||
.newring {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
|
||||||
|
function Ascii() {
|
||||||
|
return '
|
||||||
|
<pre>
|
||||||
|
_________________
|
||||||
|
< Hello, everyone >
|
||||||
|
-----------------
|
||||||
|
\
|
||||||
|
\
|
||||||
|
___
|
||||||
|
{~._.~}
|
||||||
|
( Y )
|
||||||
|
()~*~()
|
||||||
|
(_)-(_)
|
||||||
|
</pre>';
|
||||||
|
}
|
||||||
|
|
||||||
|
function More() {
|
||||||
|
return '
|
||||||
|
<div class="more">
|
||||||
|
<div class="links">
|
||||||
|
' . file_get_contents('components/more/Contact.html') . '
|
||||||
|
' . file_get_contents('components/more/Me.html') . '
|
||||||
|
' . file_get_contents('components/more/Projects.html') . '
|
||||||
|
' . file_get_contents('components/more/CoolLinks.html') . '
|
||||||
|
</div>
|
||||||
|
</div>';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function WebRing() {
|
||||||
|
return '<!-- tilde.team ring fragment-->
|
||||||
|
<div class="newring">
|
||||||
|
[<a href="https://tilde.team/ring/?action=prev&me=grizzly"
|
||||||
|
>previous</a
|
||||||
|
>] [<a href="https://tilde.team/ring/?action=random&me=grizzly"
|
||||||
|
>random</a
|
||||||
|
>] [<a href="https://tilde.team/ring/?action=next&me=grizzly"
|
||||||
|
>next</a
|
||||||
|
>]
|
||||||
|
<br />
|
||||||
|
<a href="https://tilde.team/ring/">how to join this webring</a>
|
||||||
|
</div>';
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
260
index_beta.php
260
index_beta.php
|
@ -1,260 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<link rel="icon" href="https://tilde.team/~grizzly/components/favicon.svg" />
|
|
||||||
<!-- <link rel="stylesheet" href="https://tilde.team/~grizzly/css/picnic.min.css" /> -->
|
|
||||||
<link rel="stylesheet" href="components/css/picnic.min.css" />
|
|
||||||
<title>Grizzly’s Space</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="app">
|
|
||||||
<header>
|
|
||||||
<span> ~team </span>
|
|
||||||
<span class="quote">Security does not exist, no system is save</span>
|
|
||||||
<span><a href="https://tilde.team/"><- back to tilde.team</a></span>
|
|
||||||
</header>
|
|
||||||
<main>
|
|
||||||
<div class="container">
|
|
||||||
<div class="content">
|
|
||||||
|
|
||||||
<h2>Hi, I'm Grizzly!</h2>
|
|
||||||
Have a great day! :)
|
|
||||||
<div class="widgets">
|
|
||||||
<?=Ascii()?>
|
|
||||||
<div class="botany">
|
|
||||||
<h3>botany: my plant</h3>
|
|
||||||
<?php require_once('components/botany.php'); ?>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<?php echo More(); ?>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="side">
|
|
||||||
<?php require_once('components/comments/comment.php'); ?>
|
|
||||||
<?php require_once('components/comments/form.php'); ?>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
<footer>
|
|
||||||
<?=WebRing()?>
|
|
||||||
<div>copyleft 2137</div>
|
|
||||||
</footer>
|
|
||||||
</div>
|
|
||||||
<style>
|
|
||||||
@media (max-width: 50rem) {
|
|
||||||
.widgets,
|
|
||||||
.container {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column !important;
|
|
||||||
}
|
|
||||||
.side {
|
|
||||||
border: 0px !important;
|
|
||||||
width: 100vw !important;
|
|
||||||
flex-grow: 0 !important;
|
|
||||||
}
|
|
||||||
.content {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
* {
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font-family: "lucida sans unicode", "lucida grande", sans-serif;
|
|
||||||
line-height: 1.4;
|
|
||||||
/* line-height: 1.7; */
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
.app {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
min-height: 100vh;
|
|
||||||
}
|
|
||||||
header {
|
|
||||||
background-color: #5300be;
|
|
||||||
border-bottom: 3px solid #2a0061;
|
|
||||||
padding: 10px;
|
|
||||||
color: #eee;
|
|
||||||
font-weight: 800;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
main {
|
|
||||||
display: flex;
|
|
||||||
flex-grow: 1;
|
|
||||||
}
|
|
||||||
footer {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
font-size: 12px;
|
|
||||||
background-color: #eee;
|
|
||||||
padding: 20px;
|
|
||||||
}
|
|
||||||
header span {
|
|
||||||
width: 33%;
|
|
||||||
}
|
|
||||||
header span a {
|
|
||||||
color: #eee;
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
.quote {
|
|
||||||
font-weight: 300;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.newring {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.container {
|
|
||||||
display: flex;
|
|
||||||
flex-grow: 1;
|
|
||||||
height: auto;
|
|
||||||
flex-direction: row;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.content {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
flex-grow: 1;
|
|
||||||
background-color: #f5f5f5;
|
|
||||||
width: 100%;
|
|
||||||
padding: 20px;
|
|
||||||
}
|
|
||||||
.side {
|
|
||||||
width: 200px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
background-color: #e7e5eb;
|
|
||||||
border-left: 1px solid #2a0061;
|
|
||||||
/* height: 100vh; */
|
|
||||||
flex-grow: 1; /* XXX */
|
|
||||||
}
|
|
||||||
.widgets {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.more {
|
|
||||||
margin-top: 20px;
|
|
||||||
}
|
|
||||||
.mail {
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
.comments {
|
|
||||||
overflow-y: scroll;
|
|
||||||
overflow-x: hidden;
|
|
||||||
flex-grow: 1;
|
|
||||||
max-height: 50vh; /* XXX */
|
|
||||||
}
|
|
||||||
.comment {
|
|
||||||
font-size: 10px;
|
|
||||||
border-bottom: 1px dotted #2a0061;
|
|
||||||
padding: 5px;
|
|
||||||
}
|
|
||||||
.form {
|
|
||||||
border-top: 1px solid #2a0061;
|
|
||||||
padding: 10px;
|
|
||||||
}
|
|
||||||
.form input,
|
|
||||||
.form textarea {
|
|
||||||
width: 160px;
|
|
||||||
display: block;
|
|
||||||
margin: 3px;
|
|
||||||
}
|
|
||||||
.form textarea {
|
|
||||||
height: 40px;
|
|
||||||
}
|
|
||||||
.howto {
|
|
||||||
font-size: 10px;
|
|
||||||
}
|
|
||||||
.howto summary {
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
.howto pre {
|
|
||||||
margin-top: 5px;
|
|
||||||
}
|
|
||||||
.comment .meta span {
|
|
||||||
font-size: smaller;
|
|
||||||
}
|
|
||||||
.links {
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
.links ul {
|
|
||||||
margin-left: 20px;
|
|
||||||
}
|
|
||||||
.links p {
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
.info_form {
|
|
||||||
font-size: 10px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.botany {
|
|
||||||
transform: scale(0.8);
|
|
||||||
transition: all 0.2s ease-in-out;
|
|
||||||
}
|
|
||||||
.botany:hover {
|
|
||||||
transform: scale(1);
|
|
||||||
}
|
|
||||||
.botany h3 {
|
|
||||||
color: green;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
||||||
<?php
|
|
||||||
|
|
||||||
function Ascii() {
|
|
||||||
return '
|
|
||||||
<pre>
|
|
||||||
_________________
|
|
||||||
< Hello, everyone >
|
|
||||||
-----------------
|
|
||||||
\
|
|
||||||
\
|
|
||||||
___
|
|
||||||
{~._.~}
|
|
||||||
( Y )
|
|
||||||
()~*~()
|
|
||||||
(_)-(_)
|
|
||||||
</pre>';
|
|
||||||
}
|
|
||||||
|
|
||||||
function More() {
|
|
||||||
return '
|
|
||||||
<div class="more">
|
|
||||||
<div class="links">
|
|
||||||
' . file_get_contents('components/more/Contact.html') . '
|
|
||||||
' . file_get_contents('components/more/Me.html') . '
|
|
||||||
' . file_get_contents('components/more/Projects.html') . '
|
|
||||||
' . file_get_contents('components/more/CoolLinks.html') . '
|
|
||||||
</div>
|
|
||||||
</div>';
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function WebRing() {
|
|
||||||
return '<!-- tilde.team ring fragment-->
|
|
||||||
<div class="newring">
|
|
||||||
[<a href="https://tilde.team/ring/?action=prev&me=grizzly"
|
|
||||||
>previous</a
|
|
||||||
>] [<a href="https://tilde.team/ring/?action=random&me=grizzly"
|
|
||||||
>random</a
|
|
||||||
>] [<a href="https://tilde.team/ring/?action=next&me=grizzly"
|
|
||||||
>next</a
|
|
||||||
>]
|
|
||||||
<br />
|
|
||||||
<a href="https://tilde.team/ring/">how to join this webring</a>
|
|
||||||
</div>';
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
|
|
@ -0,0 +1,404 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<link rel="icon" href="https://tilde.team/~grizzly/favicon.svg" />
|
||||||
|
<title>Grizzly’s Space</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="app">
|
||||||
|
<header>
|
||||||
|
<span> ~team </span>
|
||||||
|
<span class="quote">Security does not exist, no system is save</span>
|
||||||
|
<span><a href="https://tilde.team/"><- back to tilde.team</a></span>
|
||||||
|
</header>
|
||||||
|
<main>
|
||||||
|
<div class="container">
|
||||||
|
<div class="content">
|
||||||
|
<div class="left">
|
||||||
|
<h2>Hi, I'm Grizzly!</h2>
|
||||||
|
Have a great day! :)
|
||||||
|
|
||||||
|
<div class="widgets">
|
||||||
|
<pre>
|
||||||
|
_________________
|
||||||
|
< Hello, everyone >
|
||||||
|
-----------------
|
||||||
|
\
|
||||||
|
\
|
||||||
|
___
|
||||||
|
{~._.~}
|
||||||
|
( Y )
|
||||||
|
()~*~()
|
||||||
|
(_)-(_)
|
||||||
|
</pre
|
||||||
|
>
|
||||||
|
<div class="botany">
|
||||||
|
<h3>botany: my plant</h3>
|
||||||
|
<?php require_once("components/botany.php"); ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="more">
|
||||||
|
<div class="links">
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
contact
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div style="margin-left: 10px;">
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="width: 50px;">
|
||||||
|
mail:
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
grizzly <em>at</em> ttm.sh
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="width: 50px;">|---</div>
|
||||||
|
<div>
|
||||||
|
grizzly <em>at</em> tilde.club
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="width: 50px;">|---</div>
|
||||||
|
<div>
|
||||||
|
grizzly <em>at</em> tilde.team
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="width: 50px;">|---</div>
|
||||||
|
<div>
|
||||||
|
grizzly <em>at</em> envs.net
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="width: 50px;">
|
||||||
|
xmpp:
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
grizzly <em>at</em> tilde.team
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
me
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="https://grizzly.ttm.sh/twtxt.txt">twtxt</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="https://tilde.team/~grizzly/">tilde.team/~grizzly</a>,
|
||||||
|
<small>
|
||||||
|
(<a href="https://grizzly.ttm.sh/">grizzly.ttm.sh</a>)
|
||||||
|
</small>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="https://tilde.club/~grizzly/">tilde.club/~grizzly</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="https://envs.net/~grizzly/">envs.net/~grizzly</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://rw.rs/~grizzly/">rw.rs/~grizzly</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="gemini://tilde.team/~grizzly/">gemini://tilde.team/~grizzly</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p>projects</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
members site roulette: (<a href="https://tildegit.org/grizzly/site_roulette" target="_blank">source code</a>) =>
|
||||||
|
<a href="https://tilde.club/~grizzly/browser/" target="_blank">tilde.club</a>,
|
||||||
|
<a href="https://tilde.team/~grizzly/browser/" target="_blank">tilde.team</a>,
|
||||||
|
<a href="https://envs.net/~grizzly/browser/" target="_blank">envs.net</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
botany widget: (<a href="https://tildegit.org/grizzly/botany_widget" target="_blank">source code</a>)
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p>interesting links</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
awesome tuis: <a href="https://github.com/rothgar/awesome-tuis" target="_blank">github.com/rothgar/awesome-tuis</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="right">
|
||||||
|
<div class="comments">
|
||||||
|
<?php
|
||||||
|
require_once('/home/grizzly/store/comments/db.php');
|
||||||
|
$query = $db->prepare("SELECT * FROM `comments` ORDER BY id DESC;");
|
||||||
|
$query->execute();
|
||||||
|
|
||||||
|
while($fetch = $query->fetch()) {
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="comment">
|
||||||
|
<div class="meta">
|
||||||
|
<span><?=$fetch['login_name']?></span>
|
||||||
|
<span><?=date("Y/m/d H:i:s", $fetch['post_time'])?></span>
|
||||||
|
</div>
|
||||||
|
<div class="comment"><?=$fetch['comment']?></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="form">
|
||||||
|
<?php if (@$_GET['success'] == 'posted') { echo '<span style="color: green;font-size: 10px">Posted, thanks for comment!</span>'; } ?>
|
||||||
|
<?php if (@$_GET['error'] == 'not_valid_auth_key') { echo '<span style="color: red;font-size: 10px">Not valid auth key</span>'; }?>
|
||||||
|
<?php if (@$_GET['error'] == 'fill_all_inputs') { echo '<span style="color: red;font-size: 10px">Fill all inputs</span>'; }?>
|
||||||
|
<?php if (@$_GET['error'] == 'max_240_characters') { echo '<span style="color: red;font-size: 10px">Maximum 240 characters</span>'; }?>
|
||||||
|
<?php if (@$_GET['error'] == 'auth_file_not_readable') { echo '<span style="color: red;font-size: 10px">Auth file not readable</span>'; }?>
|
||||||
|
|
||||||
|
<div style="font-size: 10px;">Leave a message :)</div>
|
||||||
|
|
||||||
|
<form action="https://tilde.team/~grizzly/comments/" method="post">
|
||||||
|
<input type="text" placeholder="your tilde login" name="login_name" />
|
||||||
|
<input type="text" placeholder="your auth key" name="auth_key" />
|
||||||
|
<textarea
|
||||||
|
name="comment"
|
||||||
|
placeholder="your comment"
|
||||||
|
maxlength="240"
|
||||||
|
></textarea>
|
||||||
|
<input type="submit" name="save" value="post" />
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<div class="howto">
|
||||||
|
<details>
|
||||||
|
<summary>
|
||||||
|
How to post comment
|
||||||
|
</summary>
|
||||||
|
|
||||||
|
Only tilde.team members can post comments here, if you are a tilde.team member, please add to your home directory a file with a random string which will be your auth key.
|
||||||
|
<pre>
|
||||||
|
touch ~/.auth_key.grizzly;
|
||||||
|
echo "password"\
|
||||||
|
> ~/.auth_key.grizzly</pre>
|
||||||
|
</details>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
<footer>
|
||||||
|
|
||||||
|
<!-- tilde.team ring fragment-->
|
||||||
|
<div class="newring">
|
||||||
|
[<a href="https://tilde.team/ring/?action=prev&me=grizzly">previous</a
|
||||||
|
>] [<a href="https://tilde.team/ring/?action=random&me=grizzly"
|
||||||
|
>random</a
|
||||||
|
>] [<a href="https://tilde.team/ring/?action=next&me=grizzly">next</a
|
||||||
|
>]
|
||||||
|
<br />
|
||||||
|
<a href="https://tilde.team/ring/">how to join this webring</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>copyleft 2137</div>
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
<style>
|
||||||
|
.widgets {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
@media (max-width: 45rem) {
|
||||||
|
.widgets,
|
||||||
|
.content {
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
position: static !important;
|
||||||
|
width: 100vw !important;
|
||||||
|
border: 0px !important;
|
||||||
|
}
|
||||||
|
.left {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.left {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
margin: 20px;
|
||||||
|
|
||||||
|
/* align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
align-self: center;
|
||||||
|
align-content: center; */
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
background-color: #e7e5eb;
|
||||||
|
border-left: 1px solid #2a0061;
|
||||||
|
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
width: 200px;
|
||||||
|
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
.comments {
|
||||||
|
overflow-y: scroll;
|
||||||
|
overflow-x: hidden;
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
.comment {
|
||||||
|
font-size: 10px;
|
||||||
|
border-bottom: 1px dotted #2a0061;
|
||||||
|
}
|
||||||
|
.form {
|
||||||
|
border-top: 1px solid #2a0061;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
.form input,
|
||||||
|
.form textarea {
|
||||||
|
width: 160px;
|
||||||
|
display: block;
|
||||||
|
margin: 3px;
|
||||||
|
}
|
||||||
|
.form input {
|
||||||
|
height: 20px;
|
||||||
|
}
|
||||||
|
.form textarea {
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
.howto {
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
.howto summary {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.howto pre {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
.comment .meta span {
|
||||||
|
font-size: smaller;
|
||||||
|
}
|
||||||
|
.links {
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.links ul {
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
.links p {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
* {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-family: "lucida sans unicode", "lucida grande", sans-serif;
|
||||||
|
line-height: 1.7;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
.app {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
/* align-items: center; TODO */
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
/* margin: 20px; */
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
.more {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.mail {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
.quote {
|
||||||
|
font-weight: 300;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.botany {
|
||||||
|
transform: scale(0.8);
|
||||||
|
transition: all 0.2s ease-in-out;
|
||||||
|
}
|
||||||
|
.botany:hover {
|
||||||
|
transform: scale(1);
|
||||||
|
}
|
||||||
|
.botany h3 {
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
header {
|
||||||
|
padding: 10px;
|
||||||
|
border-bottom: 3px solid #2a0061;
|
||||||
|
background-color: #5300be;
|
||||||
|
font-weight: 800;
|
||||||
|
color: #eee;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
header span {
|
||||||
|
width: 33%;
|
||||||
|
}
|
||||||
|
header span a {
|
||||||
|
color: #eee;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
main {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
footer {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 12px;
|
||||||
|
background-color: #eeeeee;
|
||||||
|
}
|
||||||
|
footer div {
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
.newring a {
|
||||||
|
color: #777;
|
||||||
|
}
|
||||||
|
.newring a:hover {
|
||||||
|
color: #525252;
|
||||||
|
}
|
||||||
|
.newring {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue