LinuxMint4Ever 2020-02-10 08:57:02 +01:00
commit ab6b4127df
19 changed files with 706 additions and 66 deletions

View File

@ -6,67 +6,4 @@ This repository will be automagically pulled by the web server each time somethi
* `content/` → `*/common/content/` (everything else acessible by the web server)
* `default.html``lostcave.ddnss.de/index.html` (http redirect)
* `admin.php``admin.strassenkind.ip/index.php` (future management page, maybe for services, available sites, users, etc?)
* `strassenkind.php` `strassenkind.ip/index.php` (future status page)
Arbeit vom 06.01.2020
```
Login-Funktionalität
Administrationsseiten
Webmasters Program
Moderation
Reports etc von Usern, Posts, etc
Theming (Logowechsel)
MotD, Gepinnte Posts auf der Startseite, Themenvorschläge
Thread- / Gruppenverwaltung
Server-Wartung
Bugreports
Status
Administrative Eingriffe
Hauptfunktionen
Startseite
Newsfeed
Hot topics / Trending
Browse public forums
Forum-Funktionalität (Reddit style)
(o) Anonym (UID) / Nickname umschaltbar
DMs, Befreundungssystem
Random Chat zum Kennenlernen von Leuten
Gruppen- und Thread management
(o) PDF shredder
Regeln
Mögliche Default-Channels
Memezz
Spam
F!ck1&g School!
Allgemeines Allgemeinforum
(o) Mit Altersnachweis: NSFW / NSFS
```
# Roadmap
Grober Zeitplan
* 2020-01-10 Entwurf fertig
* 2020-02-14 Implementierung
* intensives Testen / Debuggen
* Dokumentation nebenbei
* 2020-03-06 Einsatzbereit
Entwicklungsziele
* 2020-01-12 Server-Wartung / Administration
* 2020-01-13 Startseite / Home page / Login / Newsfeed
* 2020-01-13 Registrierung
* 2020-01-17 Account management / Kontakte / User groups
* 2020-01-20 DMs
* 2020-01-24 Channels / Threads / Foren / Rollen-Management (generelle / öffentliche Channels; private Channels; Gruppenchannels)
* 2020-01-27 Forum / Thread / Channel / Chat management
* 2020-01-31 Profilseiten
* 2020-02-03 User home page (Benachrichtigungen, Profil, etc)
* 2020-02-07 Report-Funktionen
* To be continued
* `strassenkind.php``strassenkind.ip/index.php` (future status page)

41
admin_stuff/index.php Normal file
View File

@ -0,0 +1,41 @@
<?php
$command_file_name = "status_commands.txt";
$command_file = fopen($command_file_name, "r") or die("Could not read file $command_file_name. Aborting.");
$commands = explode(PHP_EOL, fread($command_file, filesize($command_file_name)));
fclose($command_file);
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="refresh" content="20">
<link rel="stylesheet" type="text/css" href="common/nalquas_style.css">
<link rel="stylesheet" type="text/css" href="status.css">
<title> Status Page </title>
</head>
<body>
<div class="header">
<h1> Website Name </h1>
<p>
Motto here
</p>
</div>
<div class="navbar">
<a href="status.php"> Status </a>
<a href="#"> Link 2 </a>
<a href="#"> Link 3 </a>
</div>
<div class="grid">
<?php
foreach ($commands as $command) {
echo "<div class=\"panel\"><pre>$command</pre><br /> <pre>";
echo shell_exec($command);
echo"</pre></div>\n";
echo '<br />';
} ?>
</div>
</body>
</html>

172
admin_stuff/lm4e_style.css Normal file
View File

@ -0,0 +1,172 @@
body {
background-color: #B6BDBD;
font-family: sans;
font-size: 12pt;
color: #000000;
}
h1, h2, h3, h4, h5, h6 {
font-family: times;
}
h3, h4, h5, h6 {
font-weight: normal;
}
p {
margin-left: 10px;
margin-top: 0px;
}
p.tiny{
font-size: 5pt;}
li {
margin-bottom: 1em;
}
/* code blocks */
pre {
margin-left: 20px;
margin-right: 20px;
margin-top: 0px;
background-color: white;
border-style: solid;
border-color: #888A85;
border-width: 1px;
font-size: 11pt;
font-family: monospace;
}
pre.commandLine {
background-color: #2E3436;
color: #C3F097;
}
span.structure {
color: #FCAF3E;
font-weight: bold;
}
span.primitive {
color: #729FCF;
font-weight: bold;
}
span.className {
color: #8AE234;
font-weight: bold;
}
span.type {
color: #729FCF;
}
span.value {
color: #C17D11;
}
span.function {
color: #75507B;
}
span.name {
color: #8AE234;
}
span.comment {
color: #888A85;
}
/* in-line code block */
span.codeBlockInText{
background-color: white;
border-color: black;
border-style: solid;
border-width: 1px;
font-size: 11pt;
font-family: monospace;
padding-left: 5px;
padding-right: 5px;
}
a {
text-decoration: none;
}
a:link {
color: #90BA45;
}
a:hover {
color: #FF2A00;
}
a:visited {
color: #FCAF3E;
}
ul {
margin-top: 0px;
}
table {
position: absolute;
top: 0px;
left: 0px;
border-collapse: collapse;
width: 100%;
}
td {
vertical-align: top;
margin: 0px;
}
td.left {
}
td.right{
}
td.content {
background-color: #F2F0FF;
}
td.comment {
background-color: #D7DBD7;
font-style: italic;
font-size: 10pt;
}
td.comment p {
border-left-style: solid;
border-left-width: 3px;
margin-left: 3px;
}
p.explanation {
border-left-color: #8ED424;
}
p.general {
border-left-color: #888A85;
}
p.warning {
border-left-color: #EF2929;
}
td.spacer {
height: 120px;
}
@media only screen and (min-width: 1000px) {
td.left {
border-right-style: solid;
border-right-width: 1px;
}
td.right {
border-left-style: solid;
border-left-width: 1px;
}
td.content {
width: 800px;
}
td.comment {
width: 200px;
}
}
@media only screen and (max-width: 999px) {
td.left{
width: 0px;
}
td.right{
width: 0px;
}
td.content {
width: 80%;
}
td.comment {
width: 20%;
}
}

View File

@ -0,0 +1,53 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="style.css" />
<meta charset="utf-8">
<title> Tab text </title>
<!-- this is to be removed in the future -->
<style>
.disclaimer{
font-size: 8pt;
color: red;}
</style>
</head>
<body>
<table>
<tr><td class="spacer" colspan=4 /></tr>
<tr>
<td class="left" />
<td class="content">
<p class="tiny"> Put some joke referring to the sites contents </p>
<h1> Head line </h1>
<p class="disclaimer"> Disclaimer: This is a template file. Do not use unedited.
</p>
<p>
Some text here.
</p>
This is an <span class="codeBlockInText">in-line code block</span>.
</td>
<td class="comment">
<p style="border-style:none;">
You will find some comments in this column: </p>
<p class="general">
General comments are gray. </p>
<p class="explanation">
Explanations are green and </p>
<p class="warning">
warnings are red. </p>
</td>
<td class="right" />
</tr>
<!-- Keep this here as a copying template!
<tr>
<td class="left" />
<td class="content"> </td>
<td class="comment"> </td>
<td class="right" />
</tr>
-->
<tr><td class="spacer" colspan=4 /></tr>
</table>
</body>
</html>

View File

@ -0,0 +1,203 @@
/* ================== STYLING ================= */
* {
box-sizing: border-box;
}
/* Body styling */
body {
font-family: sans;
font-size: 12pt;
color: black;
background: #bdbdbd;
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
font-family: times;
}
h3, h4, h5, h6 {
font-weight: normal;
}
p {
margin-top: 0px;
}
p.tiny {
font-size: 5pt;
}
li {
margin-bottom: 1em;
}
ul {
margin-top: 0px;
}
pre {
margin-left: 20px;
margin-right: 20px;
margin-top: 0px;
background-color: white;
border-style: solid;
border-color: #888A85;
border-width: 1px;
font-size: 11pt;
font-family: monospace;
}
pre.commandLine {
background-color: #2E3436;
color: #C3F097;
}
a {
text-decoration: none;
}
a:link {
color: #90BA45;
}
a:hover {
color: #FF2A00;
}
a:visited {
color: #FCAF3E;
}
span.structure {
color: #FCAF3E;
font-weight: bold;
}
span.primitive {
color: #729FCF;
font-weight: bold;
}
span.className {
color: #8AE234;
font-weight: bold;
}
span.type {
color: #729FCF;
}
span.value {
color: #C17D11;
}
span.function {
color: #75507B;
}
span.name {
color: #8AE234;
}
span.comment {
color: #888A85;
}
/* in-line code block */
span.codeBlockInText{
background-color: white;
border-color: black;
border-style: solid;
border-width: 1px;
font-size: 11pt;
font-family: monospace;
padding-left: 5px;
padding-right: 5px;
}
.disclaimer {
font-size: 8pt;
color: red;
}
/* TODO The following is broken because we're not using tables anymore.
Find another solution.
*/
p.explanation {
border-left-color: #8ED424;
}
p.general {
border-left-color: #888A85;
}
p.warning {
border-left-color: #EF2929;
}
/* ================== LAYOUT ================== */
/* Header containing title etc. */
.header {
text-align: center;
background: #795548;
color: white;
padding: 4px;
}
/* Navigation bar at top of page */
.navbar {
display: flex;
background-color: #4b2c20;
}
/* Styling of navigation bar links */
.navbar a {
color: white;
padding: 14px 20px;
text-decoration: none;
text-align: center;
}
/* Change color of navigation bar links on hover */
.navbar a:hover {
background-color: #a98274;
color: black;
}
/* Align page elements in a row */
.row {
display: flex;
flex-wrap: wrap;
}
/* Sidebar column */
.side {
flex: 15%;
font-size: 10pt;
font-style: italic;
background-color: #efefef;
padding: 20px;
max-width: 500px;
}
/* Main column */
.main {
flex: 40%;
background-color: #ffffff;
padding: 20px;
max-width: 1000px;
}
/* Spacer */
.spacer {
flex: auto;
}
/* Footer */
.footer {
padding: 20px;
text-align: center;
background: #8d8d8d;
}
/* Adaptively change layout based on window size */
@media only screen and (max-width: 1000px) {
.spacer {
display: none;
}
.main, .side {
max-width: none;
}
}
@media only screen and (max-width: 700px) {
.row, .navbar {
flex-direction: column;
}
}

View File

@ -0,0 +1,75 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="nalquas_style.css">
<title> Tab text </title>
</head>
<body>
<!-- Title etc. -->
<div class="header">
<h1> Website Name </h1>
<p>
Motto here
</p>
</div>
<!-- Links to the main page sections -->
<div class="navbar">
<a href="#"> Link 1 </a>
<a href="#"> Link 2 </a>
<a href="#"> Link 3 </a>
</div>
<!-- Content -->
<div class="row">
<div class="spacer"></div>
<div class="main">
<p class="tiny">
Put some joke referring to the sites contents
</p>
<h1> Head line </h1>
<p class="disclaimer">
Disclaimer: This is a template file. Do not use unedited.
</p>
<p>
Some text here.
</p>
This is an <span class="codeBlockInText">in-line code block</span>.
</div>
<div class="side">
<p>
You will find some comments in this column:
</p>
<p class="general">
General comments are gray.
</p>
<p class="explanation">
Explanations are green and
</p>
<p class="warning">
warnings are red.
</p>
</div>
<div class="spacer"></div>
<!-- Keep this here as a copying template!
<div class="row">
<div class="spacer"></div>
<div class="main"> </div>
<div class="side"> </div>
<div class="spacer"></div>
</div>
-->
</div>
<!-- Footer -->
<div class="footer">
<p>
Typical footer information <br />
This page's layout has been reworked by Nalquas.
</p>
</div>
</body>
</html>

View File

@ -0,0 +1,32 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="refresh" content="20">
<link rel="stylesheet" type="text/css" href="nalquas_style.css">
<link rel="stylesheet" type="text/css" href="status.css">
<title> Status Page </title>
</head>
<body>
<div class="header">
<h1> Website Name </h1>
<p>
Motto here
</p>
</div>
<div class="navbar">
<a href="status.php"> Status </a>
<a href="#"> Link 2 </a>
<a href="#"> Link 3 </a>
</div>
<div class="grid">
<div class="panel"><pre>$command</pre><br /> <pre>
hjvdusjmcvgsara nfozcd
</pre></div>
<br />
</div>
</body>
</html>

BIN
admin_stuff/putty.exe Executable file

Binary file not shown.

49
admin_stuff/status.css Normal file
View File

@ -0,0 +1,49 @@
* {
box-sizing: border-box;
}
body {
font-family: monospace;
font-size: 12pt;
background-color: #0b0b0b;
color: #ff6200;
}
pre {
margin: 20px;
/*border-style: solid;
border-width: 2px;
border-top: 0px;
border-right: 0px;
border-left: 0px;
border-color: #ff6200;*/
border-style: none;
background-color: #000000;
color: #ff6200;
font-family: monospace;
font-size: 11pt;
min-width: 500px;
max-width: 500px;
}
.grid {
display: flex;
flex-direction: row;
/*align-items: center;
justify-content: center;*/
flex-wrap: wrap;
}
/* Info panel, only used for status pages */
.panel {
flex: 50%;
padding: 4px;
padding-bottom: 32px;
}
/* Adaptively change layout based on window size */
/*@media only screen and (max-width: 1000px) {
.grid {
flex-direction: column;
}
}*/

View File

@ -0,0 +1,7 @@
who
df -h
systemctl status apache2.service
systemctl status mysql.service
systemctl status gitea.service
systemctl status sshd
apt list --upgradable

2
commands_ondemand.conf Normal file
View File

@ -0,0 +1,2 @@
sync
cat /var/log/apt-get_update_has_run; apt list --upgradable

7
commands_status.conf Normal file
View File

@ -0,0 +1,7 @@
systemctl status apache2.service
systemctl status sshd.service
systemctl status gitea.service
free
df -h
cat /var/run/reboot-required
who

13
content/forwarding.php Normal file
View File

@ -0,0 +1,13 @@
<?php
$user = $_POST["user"];
?>
<html>
<head>
<title>e-Mail Verification</title>
</head> <body>
<?php
echo "<p>Bitte senden sie nun zur Verifikation eine e-Mail mit folgendem Inhalt an \"authentication@lostcave.ddnss.de\":</p>";
echo "<p>Blub Blub $user</p>";
?>
</html>

6
content/index.html Normal file
View File

@ -0,0 +1,6 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="0;./404" />
</head>
</html>

View File

@ -1,5 +1,5 @@
<?php
/*
session_start();
$pdo = new PDO('mysql:host=localhost;dbname=web', 'webstuff', 'Schei// auf Pa$$w0rter!');
@ -13,5 +13,5 @@
}
//$result_name_by_auth = $Statement_name_by_auth->execute(array('authentication_string' => $authentication_string)); */
//$result_name_by_auth = $Statement_name_by_auth->execute(array('authentication_string' => $authentication_string));
?>

20
content/signup.php Normal file
View File

@ -0,0 +1,20 @@
<html>
<title>
Sign Up
</title>
<head>
<h1> Willkommen bei der Registrierung! </h1>
</head>
<body>
<hr>
<form action="forwarding.php" method="post">
<p> Bitte gib einen Benutzernamen ein: <input type="text" name="user" placeholder="Benutzername"/>
<p> Bitte gib eine E-Mail Adresse ein: <input type="text" name="email" placeholder="e-Mail Adresse"/>
<p> Bitte gib ein Passwort ein: <input type="password" name="password" placeholder="Passwort"/>
<p> Bitte bestätige dein Passwort ein: <input type="password" name="pass" placeholder="Passwort bestätigen"/>
<input type="submit" value="Registrieren" />
</form>
</body>
</html>

16
content/yeet.php Normal file
View File

@ -0,0 +1,16 @@
<?php
$hello = "Hello World!";
$blob = 564983;
$mulm = "655932";
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $blob + $mulm; ?></title>
</head>
<body>
<?php
echo "<p>" . $hello . "</p>";
?>
</body>
</html>

4
deployment-script.sh Executable file
View File

@ -0,0 +1,4 @@
#!/bin/bash
#do nothing for now.
echo "Yeee!"

View File

@ -11,5 +11,8 @@
<input type="password" name="password" maxlength="256" placeholder="Password" />
<input type="submit" value="Log in" />
</form>
<form action="./content/signup.php">
<input type="submit" value="Sign Up"/>
</form>
</body>
</html>