Compare commits
1 Commits
7ebf7078ff
...
requiremen
Author | SHA1 | Date | |
---|---|---|---|
a31d9c8a75
|
2
.gitignore
vendored
2
.gitignore
vendored
@@ -12,5 +12,3 @@ http.access.log
|
||||
http.error.log
|
||||
events.ical
|
||||
.vscode/
|
||||
events.html
|
||||
events_archive.html
|
||||
|
21
Makefile
Normal file
21
Makefile
Normal file
@@ -0,0 +1,21 @@
|
||||
VENV = venv
|
||||
PYTHON = $(VENV)/bin/python3
|
||||
PIP = $(VENV)/bin/pip
|
||||
POSTERS = poster_light.png poster_dark.png
|
||||
|
||||
output: $(POSTERS)
|
||||
|
||||
poster_%.png: image_poster.py $(VENV)/bin/activate
|
||||
$(PYTHON) $< 2>/dev/null
|
||||
|
||||
|
||||
$(VENV)/bin/activate: requirements.txt
|
||||
python3 -m venv $(VENV)
|
||||
echo '*' > $(VENV)/.gitignore
|
||||
$(PIP) install -r requirements.txt
|
||||
|
||||
|
||||
clean:
|
||||
$(RM) -r __pycache__
|
||||
$(RM) -r $(VENV)
|
||||
$(RM) *.png
|
@@ -198,25 +198,15 @@ datum, vreme, lokacija, tema, tip, link
|
||||
29-10-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Radionica lemljenja, workshop, https://forum.dmz.rs/t/lemljenje/777/1
|
||||
30-10-2024, 18:00, Matematički fakultet (Učionica 251) https://www.openstreetmap.org/node/12291697569, Linux install day, workshop, https://forum.dmz.rs/t/linux-install-day/803
|
||||
4-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Sysadmin vežbe, workshop, https://wiki.dmz.rs/en/sysadmin
|
||||
5-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, SYSTEMD - da/ne/zašto ne i alternative, lecture, https://forum.dmz.rs/t/plan-za-novembar-2024/785/4
|
||||
5-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, SYSTEMD - da/ne/zašto ne i alternative, lecture, https://forum.dmz.rs/t/plan-za-novembar-2024/785/4?u=wingaxe
|
||||
11-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Lightning talks, lighting, https://wiki.dmz.rs/decentrala/dogadjaji/lightningtalks
|
||||
12-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Dont be afraid of pointers, lecture, https://forum.dmz.rs/t/ne-boj-se-pointera-dont-be-afraid-of-pointers-predavanje/807
|
||||
12-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Don’t be afraid of pointers, lecture, https://forum.dmz.rs/t/ne-boj-se-pointera-dont-be-afraid-of-pointers-predavanje/807
|
||||
13-11-2024, 18:00, Matematički fakultet (Učionica 153) https://www.openstreetmap.org/node/12291697569, Makefiles (en), lecture,
|
||||
18-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Intro to Security Auditing, lecture,
|
||||
19-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, LAN party, party, https://forum.dmz.rs/t/lan-party/126
|
||||
20-11-2024, 18:00, Matematički fakultet (Učionica 153) https://www.openstreetmap.org/node/12291697569, 30 reasons to use Zig, lecture, https://forum.dmz.rs/t/intro-to-zig-or-30-reasons-you-should-start-using-zig/696
|
||||
25-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Hardverski Hackaton, hack, https://wiki.dmz.rs/en/decentrala/dogadjaji/hakaton
|
||||
26-11-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Tiny Keyboards Explained - 28 keys are enough, lecture,
|
||||
27-11-2024, 18:00, Matematički fakultet (Učionica 153) https://www.openstreetmap.org/node/12291697569, OpenGL šejderi #1: Osnove, lecture,
|
||||
02-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Lightning talks, lighting, https://wiki.dmz.rs/decentrala/dogadjaji/lightningtalks
|
||||
03-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Sysadmin vežbe, workshop, https://wiki.dmz.rs/en/sysadmin
|
||||
04-12-2024, 18:00, Matematički fakultet (Učionica 153) https://www.openstreetmap.org/node/12291697569, OpenGL šejderi #2: SDF renderovanje, lecture,
|
||||
09-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Ne treba nam (toliko) Javascript, lecture,
|
||||
10-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Creating Interactive Fiction with TADS (en), lecture,
|
||||
11-12-2024, 18:00, DC Krov https://www.openstreetmap.org/node/10594728522, OpenGL šejderi #3: Kompleksna analiza, lecture,
|
||||
16-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Softverski hakaton, hack, https://wiki.dmz.rs/decentrala/dogadjaji/hakaton
|
||||
17-12-2024, 18:00, DC Krov https://www.openstreetmap.org/node/10594728522, Verifiable Computing Project - Truly Open Source Hardware (en), lecture, https://forum.dmz.rs/t/plan-za-decembar-2024/815/29
|
||||
17-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Hardverski hakaton, hack, https://forum.dmz.rs/t/hardware-hackathon-novembar/832
|
||||
18-12-2024, 18:00, Matematički fakultet (Učionica 153) https://www.openstreetmap.org/node/12291697569, Git basics (en), lecture,
|
||||
23-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Osnove Elektrotehnike (OET), lecture,
|
||||
24-12-2024, 19:00, DC Krov https://www.openstreetmap.org/node/10594728522, Praznicno-novogodisnji izazov u kodiranju 2024, hack,
|
||||
27-11-2024, 18:00, Matematički fakultet (N251) https://www.openstreetmap.org/node/12291697569, OpenGL šejderi #1: Osnove, lecture,
|
||||
04-12-2024, 18:00, Matematički fakultet (N251) https://www.openstreetmap.org/node/12291697569, OpenGL šejderi #2: SDF renderovanje, lecture,
|
||||
11-12-2024, 18:00, Matematički fakultet (N251) https://www.openstreetmap.org/node/12291697569, OpenGL šejderi #3: Kompleksna analiza, lecture,
|
||||
|
|
3
pages/en/events.html
Normal file
3
pages/en/events.html
Normal file
@@ -0,0 +1,3 @@
|
||||
<h1>Events</h1>
|
||||
<p>Following list contains all forthcoming events. Held events are listed in <a href="/en/events_archive">archive</a>.</p><br>
|
||||
<p>We also provide <a href="https://dmz.rs/events.ical">ical file</a></p><br>
|
4
pages/sr/events.html
Normal file
4
pages/sr/events.html
Normal file
@@ -0,0 +1,4 @@
|
||||
<h1>Događaji</h1>
|
||||
<p>Naredna lista sadrži sve predstojeće događaje. Za listu održanih događaja pogledaj <a href="/events_archive">arhivu</a>.</p><br>
|
||||
<p>Događaje možeš učitati i sa <a href="https://dmz.rs/events.ical">ical</a> datotekom.</p><br>
|
||||
|
15
prep.py
15
prep.py
@@ -107,13 +107,6 @@ def build_ical(events: list[dict]) -> str:
|
||||
event_template = event_template.replace("<!--DATE-->", date)
|
||||
event_template = event_template.replace("<!--TITLE-->", title)
|
||||
event_template = event_template.replace("<!--URL-->", url)
|
||||
if location.startswith("DC Krov"):
|
||||
event_template = event_template.replace("<!--LOCATION-->", "DC Krov\\, Kraljice Marije 47\\, 6\\, Beograd\\, Serbia")
|
||||
elif location.startswith("Matematički fakultet (Učionica 153)"):
|
||||
event_template = event_template.replace("<!--LOCATION-->", "Matematički fakultet\\, Svetog Nikole 39\\, Beograd\\, Serbia")
|
||||
else:
|
||||
event_template = event_template.replace("<!--LOCATION-->", "")
|
||||
|
||||
|
||||
events_ical += event_template
|
||||
# Footer
|
||||
@@ -141,7 +134,7 @@ for key, value_pair in TYPES_DICT.items():
|
||||
|
||||
# Build Serbian Events page
|
||||
new_events_html = build_html(new_events, DAYS_SR, sr_types)
|
||||
with open("template/events-sr.html", "r") as file:
|
||||
with open("pages/sr/events.html", "r") as file:
|
||||
page_template = ([line for line in file])
|
||||
|
||||
with open("pages/sr/events.html", "w") as file:
|
||||
@@ -149,7 +142,7 @@ with open("pages/sr/events.html", "w") as file:
|
||||
|
||||
# Build English Events page
|
||||
new_events_html = build_html(new_events, DAYS_EN, en_types)
|
||||
with open("template/events-en.html", "r") as file:
|
||||
with open("pages/en/events.html", "r") as file:
|
||||
page_template = ([line for line in file])
|
||||
|
||||
with open("pages/en/events.html", "w") as file:
|
||||
@@ -157,7 +150,7 @@ with open("pages/en/events.html", "w") as file:
|
||||
|
||||
# Build Serbian Archive page
|
||||
past_events_html = build_html(past_events, DAYS_SR, sr_types)
|
||||
with open("template/events_archive-sr.html", "r") as file:
|
||||
with open("pages/sr/events_archive.html", "r") as file:
|
||||
page_template = ([line for line in file])
|
||||
|
||||
with open("pages/sr/events_archive.html", "w") as file:
|
||||
@@ -165,7 +158,7 @@ with open("pages/sr/events_archive.html", "w") as file:
|
||||
|
||||
# Build English Archive page
|
||||
past_events_html = build_html(past_events, DAYS_EN, en_types)
|
||||
with open("template/events_archive-en.html", "r") as file:
|
||||
with open("pages/en/events_archive.html", "r") as file:
|
||||
page_template = ([line for line in file])
|
||||
|
||||
with open("pages/en/events_archive.html", "w") as file:
|
||||
|
4
requirements.txt
Normal file
4
requirements.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
cairosvg
|
||||
markdown
|
||||
freetype-py
|
||||
python-dateutil
|
@@ -1,99 +1,138 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="sr">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<!--
|
||||
<pre>
|
||||
|
||||
*@@*
|
||||
*@@@@*
|
||||
*@@*
|
||||
||
|
||||
||
|
||||
*@@* *@@* *@@*
|
||||
*@@@@*===*@@@@*===*@@@@*
|
||||
*@@* *@@* *@@*
|
||||
|| //
|
||||
|| //
|
||||
*@@*//
|
||||
*@@@@*
|
||||
*@@*
|
||||
|
||||
____ _____ ____ _____ _ _ _____ ____ _ _ _
|
||||
| _ \| ____/ ___| ____| \ | |_ _| _ \ / \ | | / \
|
||||
| | | | _|| | | _| | \| | | | | |_) | / _ \ | | / _ \
|
||||
| |_| | |__| |___| |___| |\ | | | | _ < / ___ \| |___ / ___ \
|
||||
|____/|_____\____|_____|_| \_| |_| |_| \_\/_/ \_\_____/_/ \_\
|
||||
|
||||
</pre>
|
||||
-->
|
||||
|
||||
<link rel="stylesheet" href="/styles/reset.css">
|
||||
<link rel="stylesheet" href="/styles/style.css">
|
||||
<link rel="stylesheet" href="/styles/deconference.css">
|
||||
<link rel="shortcut icon" href="/img/favicon.ico" type="image/x-icon">
|
||||
<script src="/scripts/main.js" defer></script>
|
||||
<title>Dekonferencija Decentrala</title>
|
||||
<link rel="alternate" hreflang="en" href="/en/deconference" />
|
||||
<title>Deconference</title>
|
||||
<style>
|
||||
:root {
|
||||
--hightlight: #72dec2;
|
||||
--text: #181715;
|
||||
--bg: #ffffff;
|
||||
}
|
||||
|
||||
@media screen and (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--text: #ffffff;
|
||||
--bg: #181715;
|
||||
}
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: "Iosevka";
|
||||
src: url('/font/iosevka-regular.woff') format('woff');
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: 'Iosevka';
|
||||
font-size: 110%;
|
||||
color: var(--text);
|
||||
background: var(--bg);
|
||||
}
|
||||
|
||||
main {
|
||||
max-width: 52rem;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline;
|
||||
color: var(--text);
|
||||
|
||||
&:hover {
|
||||
background-color: var(--hightlight);
|
||||
text-decoration: line-through var(--text);
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
header {
|
||||
user-select: none;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-variant: small-caps;
|
||||
letter-spacing: 0.3rem;
|
||||
font-size: 4em;
|
||||
margin: 3rem auto;
|
||||
|
||||
& > a {
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-variant: small-caps;
|
||||
letter-spacing: 0.3rem;
|
||||
|
||||
& > a {
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
margin-left: 1rem;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
|
||||
details {
|
||||
margin-left: 1rem;
|
||||
}
|
||||
|
||||
footer {
|
||||
border-top: 2px solid var(--text);
|
||||
padding-top: 1rem;
|
||||
max-width: 42rem;
|
||||
margin: 2rem auto;
|
||||
text-align: center;
|
||||
|
||||
& .links {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
gap: 2rem;
|
||||
justify-content: center;
|
||||
margin-top: 1rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<a id="logo" href="/"><img src="/img/logo-light.svg" alt="Logo"> Decentrala</a>
|
||||
<button id="theme-switcher"></button>
|
||||
<a class="lang" hreflang="en" href="/en/deconference">EN</a>
|
||||
<h1>Deconference</h1>
|
||||
</header>
|
||||
<main>
|
||||
<h1>Dekonferencija</h1>
|
||||
<h2 id="what"><a href="#what">What?</a></h2>
|
||||
<p>Deconference is the inaugural conference organized by <a href="https://dmz.rs">Decentrala</a>, a Belgrade hackerspace. It serves as a platform for individuals to present and discuss ideas related to decentralization in all its forms.</p>
|
||||
|
||||
<h2 id="wwhen-and-where"><a href="#when-and-where">When & Where?</a></h2>
|
||||
<p>Deconference will take place all day on Sunday, September 15, 2024, at Cultural Center Magacin, located at <a href="https://osm.org/go/xf3Fz31te?node=1226456745">Kraljevića Marka 4-8, Belgrade</a>. The evening prior, a social gathering will be hosted at <a href="https://dckrov.rs/">Community Center Krov</a>, located at <a href="https://osm.org/go/xf3HQQdIH">Kraljice Marije 47, Belgrade</a>.</p>
|
||||
|
||||
<h2 id="program"><a href="#program">Program</a></h2>
|
||||
<p>11:00 Otvaranje<p>
|
||||
<p>12:00 <a href="https://wiki.dmz.rs/en/decentrala/dogadjaji/cryptoparty">Cryptoparty</a><p>
|
||||
<p>14:00 <a href="https://wiki.dmz.rs/en/decentrala/dogadjaji/hakaton">Hakaton</a><p>
|
||||
<p>16:00 <a href="https://wiki.dmz.rs/en/decentrala/dogadjaji/lightningtalks">Lightning talks</a><p>
|
||||
<p>18:00 Diskusije<p>
|
||||
<p>20:00 <a href="https://wiki.dmz.rs/en/decentrala/dogadjaji/cryptoparty">Cryptoparty</a><p>
|
||||
<p>22:00 Kraj<p>
|
||||
<h2 id="why"><a href="#why">Why?</a></h2>
|
||||
|
||||
<h2 id="what"><a href="#what">Šta?</a></h2>
|
||||
<p>Dekonferencija je prva konferencija organizovana od strane <a href="https://dmz.rs">Decentrale</a>, Beogradskog hakerspejsa. Dekonferencija služi kao platforma za predstavljanje i diskusiju ideja decentralizacije u svim svojim oblicima.</p>
|
||||
<p>Decentrala was founded by a small group of enthusiasts united by the idea of technological decentralization. Over the past year and a half, we've organized over 160 events—lectures, workshops, discussions, hackathons—aimed at democratizing technological knowledge and educating people about privacy, open source principles, the right to repair (and how to repair), digital assets, and usage rights. Since day one, our approach has been to inform individuals about alternatives rather than impose opinions upon them.</p>
|
||||
|
||||
<h2 id="when-and-where"><a href="#when-and-where">Kad & Gde?</a></h2>
|
||||
<p>Dekonferencija će se održati u nedelju, 15.-og Septembra, 2024, u Kulturnom Centru Magacin, na adresi <a href="https://osm.org/go/xf3Fz31te?node=1226456745">Kraljevića Marka 4-8, Beograd</a>. Veče pre, održaće se druženje povodom organizovanja konferencije u prostorijama <a href="https://dckrov.rs/">Društvenog Centra Krov</a>, na adresi <a href="https://osm.org/go/xf3HQQdIH">Kraljice Marije 47, Beograd</a>.</p>
|
||||
<p>Through engaging with diverse visitors, many from non-technical backgrounds, we've come to realize that decentralization encompasses more than just "open technology." Many activists and organizations today advocate for various forms of decentralization. Therefore, we welcome stories about decentralization from diverse perspectives.</p>
|
||||
|
||||
<h2 id="why"><a href="#why">Zašto?</a></h2>
|
||||
<h2 id="who"><a href="#who">Who?</a></h2>
|
||||
|
||||
<p>Decentrala je osnovana od strane male grupe entuzijasta udružene oko ideje decentralizacije tehnologije. Poslednjih godinu i po, organizovali smo više od 160 događaja—predavanja, radionica, diskusija, hakatona—sa ciljem demokratizacije tehnološkog znanja i edukacije o privatnosti, open source principa, prava na popravku (i kako popraviti), digitalna svojina, i pravo korišćenja. Od prvog dana, naš pristup je bio da informišemo pojedince o alternativama umesto da im namećemo naše mišljenje.</p>
|
||||
<p>Deconference is an open platform for anyone interested in discussing, demonstrating, or exploring decentralization. You can register your event by emailing <a href="mailto:dekonferencija@dmz.rs">dekonferencija@dmz.rs</a> up until the day of the Deconference (September 15).</p>
|
||||
|
||||
<p>Vremenom, angažovanjem sa raznovrsnim posetiocima, od kojih su mnogi iz ne-tehničkih sfera, shvatili smo da decentralizacija obuhvata više od samo "otvorene tehnologije." Mnogi aktivisti i organizacije se danas zalažu za različite oblike decentralizacije. Zato, smatramo da su dobrodošle priče decentralizacije iz različitih perspektiva.</p>
|
||||
<p>We will update this section as topics are confirmed.</p>
|
||||
|
||||
<h2 id="who"><a href="#who">Ko?</a></h2>
|
||||
<h2 id="how"><a href="#how">How?</a></h2>
|
||||
|
||||
<p>Dekonferencija je otvorena platforma za sve zainteresovane za diskusiju, demonstraciju, ili istraživanje decentralizacije. Možete registrovati vaš događaj slanjem email-a na <a href="mailto:dekonferencija@dmz.rs">dekonferencija@dmz.rs</a> do dana Dekonferencije (15.-ti Septembar).</p>
|
||||
<p>The Deconference is funded by the organizers' private assets. Like all of Decentrala's activities, Deconference is free for all attendees. Unfortunately, we are unable to provide grants to lecturers or presenters.</p>
|
||||
|
||||
<p>Osvežićemo ovaj deo kako se teme događaja potvrde.</p>
|
||||
|
||||
<h2 id="how"><a href="#how">Kako?</a></h2>
|
||||
|
||||
<p>Dekonferencija je finansirana od strane ličnih sredstava organizatora. Kao i sve aktivnosti Decentrale, Dekonferencija je besplatna svima. Nažalost, nismo u stanju da pružimo subvencije predavačima.</p>
|
||||
|
||||
|
||||
<p>Decentrala prihvata donacije isključivo od fizičkih lica.</p>
|
||||
<p>Decentrala accepts donations exclusively from individuals.</p>
|
||||
|
||||
</main>
|
||||
<footer>
|
||||
<button id="sections-button" opened="false"><img src="/img/strelica-closed-light.svg" alt="OpenMenu"></button>
|
||||
<nav>
|
||||
<a href="/events">Događaji</a>
|
||||
<a href="/services">Servisi</a>
|
||||
<a href="/about">O nama</a>
|
||||
<a class="account" href="/account">Nalog</a>
|
||||
<a href="/donations">Donacije</a>
|
||||
</nav>
|
||||
<span class="links">
|
||||
<a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"><img src="/img/cc-light.svg" alt="CreativeCommons"></a>
|
||||
<a href="/webring"><img src="/img/w-light.svg" alt="Webring"></a>
|
||||
<a href="https://gitea.dmz.rs/Decentrala/website"><img src="/img/git-light.svg" alt="SourceCode"></a>
|
||||
<a href="https://balkan.fedive.rs/@decentrala"><img src="/img/mastodon-light.svg" alt="Mastodon"></a>
|
||||
</span>
|
||||
|
@@ -6,7 +6,7 @@ DTSTART;TZID=Europe/Belgrade:<!--DATE-->
|
||||
DTEND;TZID=Europe/Belgrade:<!--DATE-->
|
||||
GEO:+44.805613;+20.479234
|
||||
LAST-MODIFIED:<!--CREATED-->
|
||||
LOCATION:<!--LOCATION-->
|
||||
LOCATION:DC Krov\, Kraljice Marije 47\, 6\, Beograd\, Serbia
|
||||
STATUS:CONFIRMED
|
||||
SUMMARY:<!--TITLE-->
|
||||
URL;TYPE=URI:<!--URL-->
|
||||
|
@@ -1,8 +0,0 @@
|
||||
<h1>Events</h1>
|
||||
<p>
|
||||
Following list contains all forthcoming events. Held events are listed in
|
||||
<a href="/en/events_archive">archive</a>.
|
||||
</p>
|
||||
<br />
|
||||
<p>We also provide <a href="https://dmz.rs/events.ical">ical file</a></p>
|
||||
<br />
|
@@ -1,11 +0,0 @@
|
||||
<h1>Događaji</h1>
|
||||
<p>
|
||||
Naredna lista sadrži sve predstojeće događaje. Za listu održanih događaja
|
||||
pogledaj <a href="/events_archive">arhivu</a>.
|
||||
</p>
|
||||
<br />
|
||||
<p>
|
||||
Događaje možeš učitati i sa
|
||||
<a href="https://dmz.rs/events.ical">ical</a> datotekom.
|
||||
</p>
|
||||
<br />
|
Reference in New Issue
Block a user