Compare commits

...

23 Commits

Author SHA1 Message Date
50bf7b13a7 css: better split medias 2025-10-09 23:17:37 +02:00
76687cc725 translate news.php, move it to main page 2025-10-09 23:16:58 +02:00
3098e5c010 css? 2025-10-09 13:31:56 +02:00
7c41c06d16 Merge pull request 'feature/news' (#6) from feature/news into main
Reviewed-on: #6
2025-10-09 13:30:35 +02:00
8b0a27358d minor chages for users.php
* article css
* h1 > Users
2025-10-09 03:10:02 +02:00
a077f2e95f news page 2025-10-09 03:09:49 +02:00
df15387f84 escape xd 2025-10-08 13:44:16 +02:00
5ce36803b8 Merge pull request 'users tab' (#5) from feature/users-tab into main
Reviewed-on: #5
Reviewed-by: v0id1st <v0id1st@tylda.org>
2025-10-08 13:42:29 +02:00
fea7b92687 link 2025-10-08 13:41:25 +02:00
ef777eb779 register 2025-10-08 13:33:14 +02:00
e19a66ff62 users tab 2025-10-08 12:15:37 +02:00
5bff409db4 Merge pull request 'feature/css-hell' (#4) from feature/css-hell into main
Reviewed-on: #4
2025-10-07 01:14:23 +02:00
2c21a866b1 media chaos
* dodane media na desktop (900+)
* dodane media na 480px
* dodane media dla telefonow (max-device-width)
2025-10-03 22:42:17 +02:00
8cfc95535d avoid hardcoding height for flex purposes 2025-10-03 21:23:10 +02:00
cdbd3140ba Merge pull request 'feature/simplify-form' (#3) from feature/simplify-form into main
Reviewed-on: #3
2025-09-30 17:47:38 +02:00
9f7d68bd5e wzmianka o tildeverse na index.php 2025-09-30 14:37:00 +02:00
d77fb7b2b6 Kilka zmian w formie rejestracji
* dodany klucz ssh
* usuniete pole skąd do nas trafiłeś
* dodane 4 wiersze do zainteresowań
* dodane max 500 znaków w zainteresowaniach
2025-09-30 14:35:08 +02:00
9c305c1a83 dodana czerwona gwiazdka na pola wymagane 2025-09-30 14:33:43 +02:00
7555926f10 git info 2025-09-25 13:17:16 +02:00
464de76751 wiki 2025-09-25 13:11:51 +02:00
a9f2a76d2a Merge pull request 'cleanup, register in one file' (#2) from update/merge-register into main
Reviewed-on: #2
2025-09-22 10:57:07 +02:00
68e4b418fd cleanup, register in one file 2025-09-22 10:36:14 +02:00
e6b84035e1 Merge pull request 'register form draft' (#1) from feature/register-form into main
Reviewed-on: #1
Reviewed-by: v0id1st <v0id1st@tylda.org>
2025-09-21 23:45:38 +02:00
8 changed files with 290 additions and 73 deletions

View File

@ -1,6 +1,7 @@
<html lang="pl"> <html lang="pl">
<head> <head>
<link rel="stylesheet" type="text/css" href="static/css/main.css"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="/static/css/main.css">
<meta charset="utf-8"> <meta charset="utf-8">
<title>~tylda.org~ polskie tildeverse</title> <title>~tylda.org~ polskie tildeverse</title>
</head> </head>
@ -12,4 +13,5 @@
<a href="/wiki/">wiki</a> <a href="/wiki/">wiki</a>
<a href="/git/">git</a> <a href="/git/">git</a>
<a href="/register.php">dołącz</a> <a href="/register.php">dołącz</a>
<a href="/users.php">użytkownicy</a>
</header> </header>

View File

@ -35,8 +35,9 @@ $slogan = $slogans[rand(0, count($slogans) - 1)];
</div> </div>
<article id="content"> <article id="content">
<p>Wzorując się na <a href="https://tildeverse.org">tildeverse.org</a> tworzymy polskojęzyczną przestrzeń tilde.</p>
<p><b>tylda.org</b> to wspólny serwer linuksowy dla ludzi, którzy lubią prostotę, wolność i internet z czasów, gdy wszystko było bardziej tekstowe.</p> <p><b>tylda.org</b> to wspólny serwer linuksowy dla ludzi, którzy lubią prostotę, wolność i internet z czasów, gdy wszystko było bardziej tekstowe.</p>
<p>Możesz tu prowadzić bloga w Markdownie, tworzyć własne strony WWW, korzystać z maila, czatu IRC i terminala albo po prostu eksplorować i uczyć się Linuksa.</p> <p>Możesz tu prowadzić bloga w Markdownie, tworzyć własne strony WWW, kapsuły gemini, korzystać z maila, czatu IRC i terminala albo po prostu eksplorować i uczyć się Linuksa.</p>
<p>Nie ma reklam, lajków, followersów jest społeczność, współdzielenie wiedzy i dobre oldschoolowe wibracje.</p> <p>Nie ma reklam, lajków, followersów jest społeczność, współdzielenie wiedzy i dobre oldschoolowe wibracje.</p>
<p>To miejsce powstało z potrzeby stworzenia własnego „kąta” w internecie minimalistycznego, bezpośredniego, z klimatem dawnych shell accountów.</p> <p>To miejsce powstało z potrzeby stworzenia własnego „kąta” w internecie minimalistycznego, bezpośredniego, z klimatem dawnych shell accountów.</p>
<p>Jeśli szukasz alternatywy dla współczesnej sieci dobrze trafiłeś.</p> <p>Jeśli szukasz alternatywy dla współczesnej sieci dobrze trafiłeś.</p>
@ -50,11 +51,13 @@ $slogan = $slogans[rand(0, count($slogans) - 1)];
foreach($recent as $user => $date) { foreach($recent as $user => $date) {
echo "<a class=\"link\" href=\"/~".$user."/\"><p class=\"user_home\"><span>drwxr-xr-x</span><span>".rand(1,9)."</span><span>".$user."</span><span>".$user."</span><span>".rand(1,19)."</span><span>".date("M d H:i", $date)."</span><span>".$user."</span></p></a>"; echo "<a class=\"link\" href=\"/~".$user."/\"><p class=\"user_home\"><span>drwxr-xr-x</span><span>".rand(1,9)."</span><span>".$user."</span><span>".$user."</span><span>".rand(1,19)."</span><span>".date("M d H:i", $date)."</span><span>".$user."</span></p></a>";
} }
?> ?>
</article> </article>
<?php <?php
include 'news.php';
include 'footer.php'; include 'footer.php';
?> ?>

60
news.php Normal file
View File

@ -0,0 +1,60 @@
<h1>> Niusy </h1>
<article id="content">
<h2> 2025/10/09 </h2>
<p>
<ul>
<li>Założyliśmy instancję <a href="https://cloud.tylda.org">nextcloud</a>. Powoli odzywamy się do środowiska linuxowego i fediverse promując inicjatywę.</li>
<li>Niusy dodane na główną</li>
</ul>
</p>
<h2> 2025/10/08 </h2>
<p>
Nowa strona listująca wszystkich <a href="/users.php">użytkowników</a>.
</p>
<h2> 2025/10/03 </h2>
<p>
Poprawiony interaktywny layout strony. Głównie css @media.
</p>
<h2> 2025/09/30 </h2>
<p>
Formularz rejestracji wymusza podanie klucza SSH.
</p>
<h2> 2025/09/25 </h2>
<p>
<ul>
<li>Podstawowe wsparcie gemini protocol. Używamy serwera satellite</li>
<li>Strona wiki</li>
</ul>
</p>
<h2> 2025/09/20 </h2>
<p>
<ul>
<li>Smoorg dołącza do tyldy jako wolontariusz, developer i admin</li>
<li>Dodany podstawowy formularz rejestracji</li>
</ul>
</p>
<h2> 2025/09/18 </h2>
<p>
v0id1st stworzył podwaliny serwera
<ul>
<li>skrypt dodający użytkowników</li>
<li>konfiguracja irc</li>
<li>podstawowa strona html+php</li>
</ul>
</p>
<h2> 2025/07/22 </h2>
<p>
Początek prac.
</p>
</article>

View File

@ -1,37 +1,76 @@
<?php <?php
include 'header.php'; include 'header.php';
if($_POST['email'] && $_POST['nick'] && $_POST['pubkey']) {
?> ?>
<article>
Hej
<strong>
<?= htmlspecialchars($_POST['nick']); ?>
</strong>!
<br><br>
Otrzymaliśmy twój formularz rejestracji. Oczekuj na dalsze informacje na swojej skrzynce mailowej. :) Odpowiedź może potrwać kilka dni, w zależności od oczekującej liczby użytkowników.
</article>
<?php
$nick=htmlspecialchars($_POST["nick"]);
$email=htmlspecialchars($_POST["email"]);
$url=htmlspecialchars($_POST["url"]);
$who=htmlspecialchars($_POST["who"]);
$interests=htmlspecialchars($_POST["interests"]);
$pubkey=htmlspecialchars($_POST["pubkey"]);
$to = 'smoorg@tylda.org';
$subject = 'Rejestracja usera ' . "$nick";
$message = "Nick:\t\t$nick\n" .
"Email:\t\t$email\n" .
"Url:\t\t$url\n" .
"SSH:\t\t$pubkey\n" .
"Opowiedz coś na swój temat:\t\t$who\n" .
"Zainteresowania:\t\t$interests\n"
;
$headers = array(
'From' => 'noreply@tylda.org',
'Reply-To' => 'noreply@tylda.org',
'X-Mailer' => 'PHP/' . phpversion()
);
mail($to, $subject, $message, $headers);
} else {
?>
<article>
Poniższy formularz trafi do naszych administratorów, którzy go ocenią. Potraktuj go częściowo jako antyspam. Chcemy sensownych odpowiedzi na poniższe pytania. Posiadanie własnej strony też jest na duży plus. Poniższy formularz trafi do naszych administratorów, którzy go ocenią. Potraktuj go częściowo jako antyspam. Chcemy sensownych odpowiedzi na poniższe pytania. Posiadanie własnej strony też jest na duży plus.
<form action="register_post.php" method="POST"> <form action="register.php" method="POST">
<div class="form-row"> <div class="form-row">
<label>Email*</label> <label>
Email
<span color=red>*</span>
</label>
<input name="email" type="email" required> <input name="email" type="email" required>
</div> </div>
<div class="form-row"> <div class="form-row">
<label>Nick*</label> <label>
Nick
<span color=red>*</span>
</label>
<input name="nick" type="string" min=3 max=20 pattern="[a-zA-Z0-9]+" required> <input name="nick" type="string" min=3 max=20 pattern="[a-zA-Z0-9]+" required>
</div> </div>
<div class="form-row">
<label>
Klucz publiczny (posłuży ci do logowania)
<span color=red>*</span>
</br>
NIE podawaj tu klucza prywatnego!
</label>
<textarea name="pubkey" rows 3 maxlength=200 required></textarea>
</div>
<div class="form-row"> <div class="form-row">
<label>Strona WWW</label> <label>Strona WWW</label>
<input name="url" type="url"> <input name="url" type="url">
</div> </div>
<div class="form-row">
<label>Jak do nas trafiłeś?</label>
<select name="how" required>
<option selected></option>
<option>komunikator (np. matrix, irc, xmpp)</option>
<option>wyszukiwarka</option>
<option>tildeeverse.org</option>
<option>promocja w internecie</option>
<option>polecenie</option>
<option>inne</option>
</select>
</div>
<div class="form-row">
<label>Zainteresowania</label>
<textarea name="interests" maxlength=1000></textarea>
</div>
<div class="form-row"> <div class="form-row">
<label>Opowiedz coś na swój temat</label> <label>Opowiedz coś na swój temat</label>
<textarea name="who" rows=8 maxlength=1000"></textarea> <textarea name="who" rows=8 maxlength=1000"></textarea>
@ -40,3 +79,10 @@ Poniższy formularz trafi do naszych administratorów, którzy go ocenią. Potra
<button type="submit">Submit</button> <button type="submit">Submit</button>
</div> </div>
</form> </form>
</article>
<?php
}
?>

View File

@ -1,38 +0,0 @@
<?php
include 'header.php';
?>
<article>
Hej
<strong>
<?= htmlspecialchars($_POST['nick']); ?>
</strong>!
<br><br>
Otrzymaliśmy twój formularz rejestracji. Oczekuj na dalsze informacje na swojej skrzynce mailowej. :) Odpowiedź może potrwać kilka dni, w zależności od oczekującej liczby użytkowników.
</article>
<?php
$nick=htmlspecialchars($_POST["nick"]);
$email=htmlspecialchars($_POST["email"]);
$url=htmlspecialchars($_POST["url"]);
$who=htmlspecialchars($_POST["who"]);
$how=htmlspecialchars($_POST["how"]);
$interests=htmlspecialchars($_POST["interests"]);
$to = 'smoorg@tylda.org';
$subject = 'Rejestracja usera' . "$nick";
$message = "Nick: $nick\n" .
"Email: $email\n" .
"Url: $url\n" .
"Opowiedz coś na swój temat: $who\n" .
"Jak do nas trafiłeś?: $how\n" .
"Zainteresowania: $interests\n"
;
$headers = array(
'From' => 'noreply@tylda.org',
'Reply-To' => 'noreply@tylda.org',
'X-Mailer' => 'PHP/' . phpversion()
);
mail($to, $subject, $message, $headers);
?>

View File

@ -1,9 +1,3 @@
@media only screen and (max-width: 850px) {
header#menu {
flex-direction: column !important;
}
}
:root { :root {
--main: #dd9a1a; --main: #dd9a1a;
--bg: #111; --bg: #111;
@ -23,18 +17,24 @@ body {
font-family: "Helvetica", "Arial", sans-serif; font-family: "Helvetica", "Arial", sans-serif;
} }
h1 {
margin-bottom: 1rem;
}
h2, h3, h4, h5, h6 {
margin: 0.5rem 0;
}
div.main-content { div.main-content {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 60%;
margin: 0 auto; margin: 0 auto;
padding: 1rem; padding: 1rem;
} }
header#menu { header#menu {
display: flex; display: flex;
flex-direction: row;
height: 3rem;
border-width: 5px; border-width: 5px;
border-color: var(--main); border-color: var(--main);
border-style: double; border-style: double;
@ -72,9 +72,9 @@ article#content {
border-color: var(--main); border-color: var(--main);
border-style: double; border-style: double;
border-radius: 5px; border-radius: 5px;
margin-top: 2rem; margin: 2rem 0;
padding: 1rem; padding: 1rem;
gap: 8px; gap: .5rem;
padding-block: 2rem; padding-block: 2rem;
} }
@ -104,7 +104,8 @@ footer#footer > *:not(:last-child)::after {
pre.ascii { pre.ascii {
margin-bottom: 2rem; margin-bottom: 2rem;
font-size: 15px; font-size: 1rem;
overflow: auto;
} }
.user_home { .user_home {
@ -116,6 +117,7 @@ pre.ascii {
.form-row { .form-row {
display: flex; display: flex;
flex-direction: column;
justify-content: flex-end; justify-content: flex-end;
padding: .5em; padding: .5em;
} }
@ -131,12 +133,87 @@ pre.ascii {
} }
.form-row > button:hover { .form-row > button:hover {
background: var(--main); background: var(--link);
} }
.form-row > button { .form-row > button {
padding: .5em; padding: .5em;
background: var(--link); background: var(--main);
color: white; color: white;
border: 0; border: 0;
padding: 1rem; padding: 1rem;
} }
input, textarea, select {
background: #000;
color: #fff;
border: 1px solid var(--main);
}
ul li {
padding: 0.5rem;
margin-left: 2rem;
}
@media only screen and (min-width: 1200px) {
div.main-content {
width: 60%;
}
}
@media only screen
and (min-width: 576px)
and (max-width: 768px) {
header#menu {
flex-direction: column;
}
.form-row {
flex-direction: row;
}
pre.ascii {
font-size: 0.8rem;
}
}
@media only screen
and (min-width: 768px)
and (max-width: 992px) {
header#menu {
flex-direction: column;
}
.form-row {
flex-direction: row;
}
}
@media only screen
and (min-width: 992px)
and (max-width: 1200px) {
}
@media only screen
and (min-width: 1200px)
and (max-width: 1400px) {
header#menu {
flex-direction: column;
}
.form-row {
flex-direction: row;
}
}
@media only screen and (max-width: 576px) {
header#menu {
flex-direction: column;
margin-bottom: 2rem;
}
article#content {
font-size: 1em;
border: none;
border-color: none;
border-style: none;
border-radius: 0;
padding: 0rem;
}
pre.ascii {
font-size: 0.5rem;
}
}

20
users.php Normal file
View File

@ -0,0 +1,20 @@
<?php
include 'header.php';
?>
<h1>> Users </h1>
<article id="content">
Lista użytkowników i linki do ich blogów
<ul>
<?php
$host=htmlspecialchars($_SERVER['SERVER_NAME']);
//$host="";
foreach (scandir("/home/") as $file) {
if (in_array($file, array('.', '..'))) continue;
echo "<li><a href=\"/~$file\">~$file</a></li>";
}
?>
</ul>
</article>

47
wiki/index.php Normal file
View File

@ -0,0 +1,47 @@
<?php
include '../header.php';
?>
<pre class="ascii">
/$$$$$$$$ /$$ /$$ /$$ /$$ /$$ /$$ /$$
|__ $$__/ | $$ | $$ | $$ /$ | $$|__/| $$ |__/
| $$ /$$ /$$| $$ /$$$$$$$ /$$$$$$ | $$ /$$$| $$ /$$| $$ /$$ /$$
| $$| $$ | $$| $$ /$$__ $$ |____ $$ | $$/$$ $$ $$| $$| $$ /$$/| $$
| $$| $$ | $$| $$| $$ | $$ /$$$$$$$ | $$$$_ $$$$| $$| $$$$$$/ | $$
| $$| $$ | $$| $$| $$ | $$ /$$__ $$ | $$$/ \ $$$| $$| $$_ $$ | $$
| $$| $$$$$$$| $$| $$$$$$$| $$$$$$$ | $$/ \ $$| $$| $$ \ $$| $$
|__/ \____ $$|__/ \_______/ \_______/ |__/ \__/|__/|__/ \__/|__/
/$$ | $$
| $$$$$$/
\______/
</pre>
<i style="margin-bottom: 2rem;"><?php echo $slogan; ?></i>
<div id="top-bar">
<h1>> Wiki</h1>
</div>
<article id="content">
<i>Wiki jest aktualnie w trakcie tworzenia, poniżej znajdziesz najważniejsze informacje, które przydadzą Ci się na starcie ;)</i><br />
<h2>Poruszanie się po systemie</h2>
<p>Po zalogowaniu domyślnie będziesz mieć otwartą sesję TMUX z trzema zakładkami: <b>Mail (neomutt)</b>, <b>IRC (weechat)</b> oraz <b>shell</b> i kilkoma keybindami.</p>
<p>Keybindy, które mogą Ci się tu przydać to:</p>
<ul>
<li><b>F1</b> - przejście do karty pierwszej (mail)</li>
<li><b>F2</b> - przejście do karty drugiej (IRC)</li>
<li><b>F3</b> - przejście do karty trzeciej (shell)</li>
<li><b>F12</b> - zamknięcie sesji TMUX i wylogowanie (domyślnie)</li>
</ul>
<p>Możesz oczywiście dostosować całość do siebie, konfiguracja keybinów jest dostępna w twoim katalogu domowym w pliku <b>.tmux.conf</b></p>
<p>Jeśli chodzi o Weechat (IRC), najważniejsze, co musisz znać to <b>Alt + 1-9</b>, żeby poruszać się po kanałach :)</p><br /><br />
<h2>Usługi publiczne</h2>
<p>Domyślnie dla twojego konta uruchomiona jest strona internetowa na protokole HTTPS pod linkiem: <b>tylda.org/~username</b>. Pliki tejże strony możesz śmiało edytować, usuwać i robić z nimi co chcesz. Strona jest w twoim katalogu domowym pod <i>public_html</i>.</p>
<p>Dodatkowo dla każdego jest również uruchomiona kapsuła gemini dostępna pod linkiem: <b>gemini://tylda.org/~username</b>. Pliki kapsuły dla ciebie dostępne w katalogu domowym pod <i>public_gemini</i>.</p><br /><br />
<h2>Git</h2>
<p>Na ten moment publiczna rejestracja na gitea jest wyłączona, boty się rejestrowały. Natomiast każdemu, kto chce założyć swoje repo lub wspomóc nas przy tworzeniu projektu zachęcam do kontaktu na mail/IRC z <b>v0id1st</b> lub <b>smoorg</b>, założymy bez problemu.</p>
</article>
<?php
include '../footer.php';
?>