forked from 4ducky/4ducky
Port 4ducky to Rust (Axum + SQLite)
Same design, layout, URLs and features as the PHP version: browse grid, image view with AJAX comments, BBCode, likes, uploads (file, URL and bookmarklet), quicktagger, profile, block list, inbox, invites, Hall of Ducks, Truhe, abuse reports and the admin tools. - Parameterized SQL, escaped templates (askama), argon2 passwords, server-side sessions, CSRF tokens on every write, strict script CSP - SSRF-safe remote image fetching, magic-byte upload checks - Self-hosted captcha replaces reCAPTCHA v1; analytics/social widgets removed - Vanilla JS replaces jQuery and its plugins with the same DOM behaviour - Reverse proxy support (frontend_path, trust_proxy, secure_cookies) - Admin CLI: admin, settings, invites See README.md for running it and the full list of changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,247 @@
|
||||
{% include "header.html" %}
|
||||
<div align="center" style="margin-top: 25px; margin-bottom: 25px;">
|
||||
|
||||
<table class="duckytable" width="600px" cellspacing="0" cellpadding="0">
|
||||
<caption>4ducky.com Finances:</caption>
|
||||
<tr>
|
||||
<td>Current 4ducky balance:</td>
|
||||
<td><strong>20,00 Euro</strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"><div class="meter"><span style="width: 50%">50 % achieved</span></div></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="2" style="text-align:left;">
|
||||
|
||||
Jeder User hat die Möglichkeit 4ducky.com mit Spenden zu unterstützen. Der 4ducky.com Server kostet derzeit 30 Euro im Monat.
|
||||
Wer etwas beisteuern möchte, der schickt einfach einen <a href="https://www.amazon.de/gp/product/BT00DHI7XI">Amazon-Gutschein</a> (bitte auf eure E-Mail Adresse und nur den Code per PN) an den User "<a href="http://www.4ducky.com/inbox/Pandora">Pandora</a>" oder spendet via Bitcoin an 13wcgskYqQ2L4cPtV6TJHyfzrQ8NT5Zt9e. Spender werden hier geehrt:
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="2"><strong>Last activities & donations:</strong></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table class="duckytable" width="600px" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td style="width: 40%;"><strong>Date</strong></td>
|
||||
<td style="width: 40%;"><strong>Activity / Feeler</strong></td>
|
||||
<td style="width: 40%;"><strong>Amount</strong></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div id="spendenducks">
|
||||
<table class="duckytable" width="600px" cellspacing="0" cellpadding="0">
|
||||
<tr class="spender">
|
||||
<td>Oktober 2015</td>
|
||||
<td><a href="/user/Pulvertoastmann">Pulvertoastmann</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Oktober 2015</td>
|
||||
<td><a href="/user/nadjer">nadjer</a></td>
|
||||
<td>+ 20,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>Oktober 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>September 2015</td>
|
||||
<td><a href="/user/Moses">Moses</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>September 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>August 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>August 2015</td>
|
||||
<td>Anonym</td>
|
||||
<td>+ 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>Juli 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juni 2015</td>
|
||||
<td><a href="/user/DerFickNigger">DerFickNigger</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juni 2015</td>
|
||||
<td><a href="/user/waluri">waluri</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juni 2015</td>
|
||||
<td><a href="/user/Kastritis">Kastritis</a></td>
|
||||
<td>+ 17,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juni 2015</td>
|
||||
<td><a href="/user/BASEDGOD">BASEDGOD</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>Juni 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>Mai 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>April 2015</td>
|
||||
<td><a href="/user/DerFickNigger">DerFickNigger</a></td>
|
||||
<td>+ 25,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>April 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>März 2015</td>
|
||||
<td><a href="/user/AntraX">AntraX</a></td>
|
||||
<td>+ 88,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>März 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Februar 2015</td>
|
||||
<td><a href="/user/Ahmed">Ahmed</a></td>
|
||||
<td>+ 50,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>März 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Januar 2015</td>
|
||||
<td><a href="/user/FG">FG</a></td>
|
||||
<td>+ 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Januar 2015</td>
|
||||
<td><a href="/user/Nadjer">Nadjer</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>Januar 2015</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 30,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Dezember 2014</td>
|
||||
<td><a href="/user/Kastritis">Kastritis</a></td>
|
||||
<td>+ 11,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Dezember 2014</td>
|
||||
<td>vergessen wer</td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juli 2014</td>
|
||||
<td><a href="/user/RoterIndianer">RoterIndianer</a></td>
|
||||
<td>+ 40,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juli 2014</td>
|
||||
<td><a href="/user/Seine_Durchlaucht">Seine_Durchlaucht</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juli 2014</td>
|
||||
<td><a href="/user/Napalm">Napalm</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Juni 2014</td>
|
||||
<td><a href="/user/Sozialfall">Sozialfall</a></td>
|
||||
<td>+ 20,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Dezember 2013</td>
|
||||
<td><a href="/user/IchHab4Euro">IchHab4Euro</a></td>
|
||||
<td>+ 4,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Dezember 2013</td>
|
||||
<td><a href="/user/FG">FG</a></td>
|
||||
<td>+ 25,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Dezember 2013</td>
|
||||
<td><a href="/user/Kastritis">Kastritis</a></td>
|
||||
<td>+ 10,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>Oktober 2013</td>
|
||||
<td><a href="/user/Hitler">Hitler</a></td>
|
||||
<td>+ 20,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="spender">
|
||||
<td>September 2013</td>
|
||||
<td><a href="/user/Pandora">Pandora</a></td>
|
||||
<td>+ 20,00 Euro</td>
|
||||
</tr>
|
||||
<tr class="kosten">
|
||||
<td>September 2013</td>
|
||||
<td>Server-Miete</td>
|
||||
<td>- 20 Euro</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<br/><br/>
|
||||
|
||||
<table class="duckytable" width="600px" cellspacing="0" cellpadding="0">
|
||||
<caption>4ducky.com Statistics:</caption>
|
||||
|
||||
<tr>
|
||||
<td>Images:</td>
|
||||
<td>{{ img }} Images</td>
|
||||
<td>~ {{ self.per_user(img) }} Images/User</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>User:</td>
|
||||
<td>{{ duckys }} Duckies</td>
|
||||
<td>{{ banned }} Banned Duckies</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Comments:</td>
|
||||
<td>{{ comm }} Comments</td>
|
||||
<td>~ {{ self.per_user(comm) }} Comments/User</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Likes:</td>
|
||||
<td>{{ fav }} Likes</td>
|
||||
<td>~ {{ self.per_user(fav) }} Likes/User</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
{% include "footer.html" %}
|
||||
Reference in New Issue
Block a user