diff --git a/docker-compose.yml b/docker-compose.yml index 4d9ddc4..4951c21 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,9 +15,14 @@ services: main: build: ./docker/main command: bash -c "echo 'setting django up' + && python manage.py makemessages --all + && python manage.py compilemessages && python manage.py collectstatic --noinput - && sleep 3 + && python manage.py check + && echo 'waiting a few seconds for database to start' + && sleep 1 && python manage.py migrate + && python manage.py createcachetable && DJANGO_SUPERUSER_PASSWORD='root' python manage.py createsuperuser\ --username root --noinput --email software@cscherr.de || true && python manage.py runserver 0.0.0.0:80 diff --git a/docker/main/requirements.txt b/docker/main/requirements.txt index bad9a1b..7365c91 100644 --- a/docker/main/requirements.txt +++ b/docker/main/requirements.txt @@ -10,3 +10,4 @@ markdown>=3.4.4 Pygments>=2.16.1 toml>=0.10 beautifulsoup4>=4.12.2 +django-rosetta>=0.9.9 diff --git a/gawa/blog/templates/blog/index.html b/gawa/blog/templates/blog/index.html index d65a321..534e25f 100644 --- a/gawa/blog/templates/blog/index.html +++ b/gawa/blog/templates/blog/index.html @@ -11,7 +11,7 @@
-

{% translate "Was gibt es hier?" %}

+

{% translate "What can be found here?" %}

{% translate "Blog" %}

@@ -48,7 +48,7 @@

- {% translate "Browse articles" %} + {% translate "Browse posts" %}

diff --git a/gawa/gawa/settings.py b/gawa/gawa/settings.py index 3a39936..1acd961 100644 --- a/gawa/gawa/settings.py +++ b/gawa/gawa/settings.py @@ -23,7 +23,6 @@ from django.utils.log import ServerFormatter # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent - # Quick-start development settings - unsuitable for production # See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/ @@ -31,7 +30,7 @@ BASE_DIR = Path(__file__).resolve().parent.parent SECRET_KEY = 'django-insecure-z_t5-iawtas&1np9)01*4_z_&hy*7wgy1!o$3bnnniux3f1ds-' # SECURITY WARNING: don't run with debug turned on in production! -DEBUG = False +DEBUG = True ALLOWED_HOSTS = ["*"] @@ -52,6 +51,7 @@ INSTALLED_APPS = [ 'django.contrib.messages', 'django.contrib.staticfiles', 'compressor', # compiles bs5 + 'rosetta', # translation from admin interface ] MIDDLEWARE = [ @@ -129,9 +129,10 @@ LANGUAGES = [ ("en", _("English")), ] -LANGUAGE_CODE = 'de' +LANGUAGE_CODE = 'en' # treat this ^^^ as the default prefix_default_language = False +LOCALE_PATHS = ["/app/locale"] TIME_ZONE = 'CET' @@ -288,11 +289,5 @@ LOGGING = { }, } - -# Media stuff -# this is where user uploaded files will go. -# TODO change this for prod -# MEDIA_ROOT = "/home/plex/Documents/code/python/gawa/media" MEDIA_ROOT = "/app/media" MEDIA_URL = "/media/" -# FILE_UPLOAD_TEMP_DIR = "/tmp/gawa/upload" diff --git a/gawa/gawa/urls.py b/gawa/gawa/urls.py index a6566cf..6ff229d 100644 --- a/gawa/gawa/urls.py +++ b/gawa/gawa/urls.py @@ -15,11 +15,13 @@ Including another URLconf """ from django.conf.urls.i18n import i18n_patterns from django.contrib import admin +from django.http import HttpResponsePermanentRedirect from django.urls import include, re_path from django.urls import include, path from django.conf import settings from django.conf.urls.static import static + urlpatterns = [ re_path('i18n/', include('django.conf.urls.i18n')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) @@ -28,4 +30,10 @@ urlpatterns += i18n_patterns( path("", include("start.urls")), path("blog/", include("blog.urls")), path('admin/', admin.site.urls, name="admin"), + path("accounts/", include("django.contrib.auth.urls")), ) + +if 'rosetta' in settings.INSTALLED_APPS: + urlpatterns += i18n_patterns( + re_path(r'^translation/', include('rosetta.urls')) + ) diff --git a/gawa/locale/de/LC_MESSAGES/django.mo b/gawa/locale/de/LC_MESSAGES/django.mo new file mode 100644 index 0000000..c9bfa4e Binary files /dev/null and b/gawa/locale/de/LC_MESSAGES/django.mo differ diff --git a/gawa/locale/de/LC_MESSAGES/django.po b/gawa/locale/de/LC_MESSAGES/django.po new file mode 100644 index 0000000..0b92300 --- /dev/null +++ b/gawa/locale/de/LC_MESSAGES/django.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-08 19:07+0200\n" +"PO-Revision-Date: 2023-10-08 18:38+0200\n" +"Last-Translator: \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Translated-Using: django-rosetta 0.9.9\n" + +#: blog/admin.py:15 start/admin.py:8 +msgid "Regenerate traits" +msgstr "Eigenschaften regenerieren" + +#: blog/models.py:44 +msgid "Category" +msgstr "Kategorie" + +#: blog/models.py:45 +msgid "Categories" +msgstr "Kategorien" + +#: blog/models.py:282 +msgid "blog post" +msgstr "Blog Post" + +#: blog/models.py:283 +msgid "blog posts" +msgstr "Blog Posts" + +#: blog/templates/blog/blogpost.html:9 blog/templates/blog/browse.html:9 +#: blog/templates/blog/index.html:8 start/templates/400.html:5 +#: start/templates/403.html:5 start/templates/404.html:5 +#: start/templates/500.html:5 start/templates/nav.html:9 +#: start/templates/start/index.html:8 start/templates/start/index.html:13 +#: start/templates/start/legalinfo.html:8 start/templates/start/links.html:5 +#: start/templates/start/search.html:5 +msgid "cscherr.de" +msgstr "cscherr.de" + +#: blog/templates/blog/blogpost.html:9 blog/templates/blog/browse.html:9 +#: blog/templates/blog/index.html:8 blog/templates/blog/index.html:15 +#: start/templates/nav.html:51 start/templates/start/index.html:77 +msgid "Blog" +msgstr "Blog" + +#: blog/templates/blog/blogpost.html:86 blog/templates/blog/browse.html:170 +#: blog/templates/blog/featured.html:52 +msgid "published" +msgstr "veröffentlicht" + +#: blog/templates/blog/blogpost.html:90 +msgid "updated" +msgstr "aktualisiert" + +#: blog/templates/blog/browse.html:47 start/forms.py:15 +#: start/templates/main_search_form.html:3 +msgid "Search" +msgstr "Suche" + +#: blog/templates/blog/browse.html:57 +msgid "select category" +msgstr "ausgewählte Kategorie" + +#: blog/templates/blog/browse.html:68 +msgid "Keywords" +msgstr "Schlüsselwörter" + +#: blog/templates/blog/browse.html:87 +msgid "Filter" +msgstr "Filter" + +#: blog/templates/blog/browse.html:119 +msgid "No posts found for your filters." +msgstr "Keine Posts für diese Filter gefunden." + +#: blog/templates/blog/browse.html:154 blog/templates/blog/featured.html:36 +msgid "category" +msgstr "Kategorie" + +#: blog/templates/blog/featured.html:5 +msgid "Featured" +msgstr "vorgestellt" + +#: blog/templates/blog/index.html:14 +msgid "What can be found here?" +msgstr "Was gibt es hier?" + +#: blog/templates/blog/index.html:19 +msgid "Writeups" +msgstr "Writeups" + +#: blog/templates/blog/index.html:21 +msgid "" +"\n" +" Whenever I discover some interesting security thing, I will post " +"a writeup here.\n" +" " +msgstr "" +"\n" +"Falls ich etwas Interessantes zum Thema Sicherheit entdecke, wird es hier " +"einen Writeup dazu geben." + +#: blog/templates/blog/index.html:27 +msgid "Open Source" +msgstr "OpenSource" + +#: blog/templates/blog/index.html:28 +msgid "" +"\n" +" If something comes up, I may post Linux guides or my thoughts on " +"current processes here.\n" +" " +msgstr "" +"\n" +"Falls etwas aufkommt, poste ich hier womöglich Linux Guides oder meine " +"Gedanken über allesmögliche." + +#: blog/templates/blog/index.html:33 start/templates/start/index.html:69 +msgid "Selfhosting" +msgstr "Selfhosting" + +#: blog/templates/blog/index.html:34 +msgid "" +"\n" +" Selfhosting is something that I'm really fond of. There will be " +"guides and thoughts about that too\n" +" " +msgstr "" +"\n" +"Selfhosting liegt mir sehr am Herzen, auch dazu wird es Anleitungen und " +"Gedanken geben." + +#: blog/templates/blog/index.html:39 +msgid "Anything Really" +msgstr "Irgendwas" + +#: blog/templates/blog/index.html:40 +msgid "" +"\n" +" This is my personal Blog after all, I will put here whatever I " +"want and you can't stop me.\n" +" " +msgstr "" +"\n" +"Das ist mein persönlicher Blog. Ich lade hier hoch was auch immer ich möchte." + +#: blog/templates/blog/index.html:46 +msgid "Looking for anything specific?" +msgstr "Suchst du nach etwas speziellem?" + +#: blog/templates/blog/index.html:51 +#, fuzzy +#| msgid "blog posts" +msgid "Browse posts" +msgstr "Blog Posts" + +#: gawa/settings.py:128 +msgid "German" +msgstr "Deutsch" + +#: gawa/settings.py:129 +msgid "English" +msgstr "Englisch" + +#: start/models.py:27 +msgid "Keyword" +msgstr "Schlüsselwort" + +#: start/models.py:28 +msgid "keywords" +msgstr "Schlüsselwörter" + +#: start/models.py:72 +msgid "Searchable" +msgstr "suchbares Objekt" + +#: start/models.py:73 +msgid "Searchables" +msgstr "suchbare Objekte" + +#: start/models.py:95 +msgid "static site" +msgstr "statische Seite" + +#: start/models.py:96 +msgid "static sites" +msgstr "statische Seiten" + +#: start/models.py:165 +msgid "Link" +msgstr "Link" + +#: start/models.py:166 start/templates/nav.html:36 +#: start/templates/start/legalinfo.html:8 start/templates/start/links.html:5 +msgid "Links" +msgstr "Links" + +#: start/templates/400.html:5 start/templates/403.html:5 +#: start/templates/404.html:5 start/templates/500.html:5 +#: start/templates/start/index.html:8 start/templates/start/search.html:5 +msgid "startpage" +msgstr "Startseite" + +#: start/templates/400.html:8 +msgid "Bad request" +msgstr "Fehlerhafte Anfrage" + +#: start/templates/400.html:9 +msgid "You sent bad data to the server." +msgstr "Du hast eine fehlerhafte Anfrage an den Server gesendet." + +#: start/templates/403.html:8 +msgid "Permission denied" +msgstr "Zugriff verweigert" + +#: start/templates/403.html:9 +msgid "You are not allowed to access this page." +msgstr "Du hast nicht die Berechtigung auf diese Seite zuzugreifen." + +#: start/templates/404.html:8 +msgid "Not found" +msgstr "Nicht gefunden" + +#: start/templates/404.html:9 +msgid "The resource you are looking for does not exist." +msgstr "Die Ressource die du suchst existiert nicht." + +#: start/templates/500.html:8 +msgid "Internal Server Error" +msgstr "Interner Server Fehler" + +#: start/templates/500.html:9 +msgid "Something went wrong." +msgstr "Etwas ist schief gelaufen." + +#: start/templates/base.html:73 +msgid "" +"\n" +" This website is developed by myself and is\n" +" OpenSource.\n" +"

\n" +" I encourage you to search for and report " +"usuability and security issues\n" +" on this site, aswell as server. For more " +"information, see Reporting.\n" +" " +msgstr "" +"\n" +"Diese Website wird von mir selbst entwickelt und ist\n" +"OpenSource.\n" +"

\n" +"Ich ermutige meine Besucher nach Sicherheits- und Nutzbarkeitsproblemen auf " +"dieser Seite und diesem Server zu suchen und melden. Für weitere " +"Informationen, siehe Reporting. " + +#: start/templates/base.html:87 start/templates/nav.html:42 +#: start/templates/start/legalinfo.html:12 +msgid "Legal Info" +msgstr "rechtliche Informationen" + +#: start/templates/base.html:96 +msgid "Quellcode dieser Website" +msgstr "Quellcode dieser Website" + +#: start/templates/base.html:100 +msgid "Contact" +msgstr "Kontakt" + +#: start/templates/base.html:108 +msgid "Deutschland" +msgstr "Deutschland" + +#: start/templates/main_search_form.html:4 +msgid "Go" +msgstr "Los" + +#: start/templates/nav.html:27 start/templates/nav.html:30 +#: start/templates/nav.html:54 +msgid "Start" +msgstr "Start" + +#: start/templates/nav.html:33 start/templates/start/index.html:20 +#, fuzzy +#| msgid "Personal" +msgid "Professional" +msgstr "Persönlich" + +#: start/templates/nav.html:57 +msgid "Browse" +msgstr "Durchsuchen" + +#: start/templates/nav.html:99 +msgid "Anonym" +msgstr "Anonymous" + +#: start/templates/nav.html:113 +msgid "Logout" +msgstr "Abmelden" + +#: start/templates/nav.html:117 +msgid "Login" +msgstr "Anmelden" + +#: start/templates/start/index.html:14 +#, fuzzy +#| msgid "Personal" +msgid "Personal Website" +msgstr "Persönlich" + +#: start/templates/start/index.html:19 start/templates/start/index.html:53 +msgid "Who am I?" +msgstr "Wer bin Ich?" + +#: start/templates/start/index.html:23 +msgid "" +"\n" +" I am Christoph J. Scherr, studying " +"Cybersecurity at \n" +" DHBW.\n" +"

\n" +"
Work
\n" +" My form of study means that I often change between " +"studying and working with my partner\n" +" company NewTec, which " +"is a medium sized company with headquaters\n" +" in Pfaffenhofen, Bavaria, Germany. I work mainly on " +"programming on a \n" +" SOC in Rust " +"for industrial contexts.\n" +"

\n" +"
Selfhosting
\n" +" I have a fascination for Computers. As a hobby, I run my " +"own computer networks (like the one this website\n" +" is served from!)\n" +"
\n" +" " +msgstr "" + +#: start/templates/start/index.html:42 +msgid "further information" +msgstr "zusätzliche Informationen" + +#: start/templates/start/index.html:54 +msgid "Private" +msgstr "Privat" + +#: start/templates/start/index.html:58 +msgid "" +"\n" +" I don't know what to put in this general paragraph.\n" +" " +msgstr "" + +#: start/templates/start/index.html:63 +msgid "Lanugages" +msgstr "" + +#: start/templates/start/index.html:64 +msgid "" +"\n" +" Somehow, I find myself fascinated by the japanese " +"lanugage. 日本語が好きだ。\n" +" " +msgstr "" + +#: start/templates/start/index.html:70 +msgid "" +"\n" +" I have a fascination for Computers. As a hobby, I " +"run my own computer networks (like the one this website\n" +" is served from!)\n" +" " +msgstr "" + +#: start/templates/start/legalinfo.html:16 +msgid "Information according to §5 TMG" +msgstr "Angaben gemäß §5 TMG" + +#: start/templates/start/legalinfo.html:23 +msgid "Germany" +msgstr "Deutschland" + +#: start/templates/start/legalinfo.html:25 +msgid "Email " +msgstr "E-Mail" + +#: start/templates/start/links.html:8 +msgid "Personal" +msgstr "Persönlich" + +#: start/templates/start/links.html:42 start/templates/start/links.html:86 +msgid "visit" +msgstr "öffnen" + +#: start/templates/start/links.html:52 +msgid "Others" +msgstr "Andere" + +#: start/templates/start/search.html:9 +#, fuzzy +#| msgid "Search" +msgid "Search for" +msgstr "Suche" + +#, fuzzy +#~ msgid "" +#~ "\n" +#~ " Ich habe diese Website selbst programmiert " +#~ "und gehostet.\n" +#~ " Falls Sie einen Fehler belibiger Art finden, " +#~ "würde ich mich freuen,\n" +#~ " wenn Sie mich darüber benachrichtigen.\n" +#~ "

\n" +#~ " Die Suche nach Schwachstellen und Fehlern auf " +#~ "dieser Website ist für\n" +#~ " diesen Zweck ausdrücklich erlaubt.\n" +#~ " " +#~ msgstr "" +#~ "\n" +#~ "Ich habe diese Website selbst programmiert und gehostet.\n" +#~ "Falls Sie einen Fehler belibiger Art finden\n" +#~ "würde ich mich freuen, wenn Sie mich darüber benachrichtigen.\n" +#~ "

\n" +#~ "Die Suche nach Schwachstellen und Fehlern auf\n" +#~ "dieser Website ist für diesen Zweck ausdrücklich erlaubt.\n" +#~ " " diff --git a/gawa/locale/en/LC_MESSAGES/django.mo b/gawa/locale/en/LC_MESSAGES/django.mo new file mode 100644 index 0000000..b21bd09 Binary files /dev/null and b/gawa/locale/en/LC_MESSAGES/django.mo differ diff --git a/gawa/locale/en/LC_MESSAGES/django.po b/gawa/locale/en/LC_MESSAGES/django.po new file mode 100644 index 0000000..f089040 --- /dev/null +++ b/gawa/locale/en/LC_MESSAGES/django.po @@ -0,0 +1,425 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-08 19:07+0200\n" +"PO-Revision-Date: 2023-10-08 15:18+0200\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.3.2\n" + +#: blog/admin.py:15 start/admin.py:8 +msgid "Regenerate traits" +msgstr "" + +#: blog/models.py:44 +msgid "Category" +msgstr "" + +#: blog/models.py:45 +msgid "Categories" +msgstr "" + +#: blog/models.py:282 +msgid "blog post" +msgstr "" + +#: blog/models.py:283 +msgid "blog posts" +msgstr "" + +#: blog/templates/blog/blogpost.html:9 blog/templates/blog/browse.html:9 +#: blog/templates/blog/index.html:8 start/templates/400.html:5 +#: start/templates/403.html:5 start/templates/404.html:5 +#: start/templates/500.html:5 start/templates/nav.html:9 +#: start/templates/start/index.html:8 start/templates/start/index.html:13 +#: start/templates/start/legalinfo.html:8 start/templates/start/links.html:5 +#: start/templates/start/search.html:5 +msgid "cscherr.de" +msgstr "cscherr.de" + +#: blog/templates/blog/blogpost.html:9 blog/templates/blog/browse.html:9 +#: blog/templates/blog/index.html:8 blog/templates/blog/index.html:15 +#: start/templates/nav.html:51 start/templates/start/index.html:77 +msgid "Blog" +msgstr "Blog" + +#: blog/templates/blog/blogpost.html:86 blog/templates/blog/browse.html:170 +#: blog/templates/blog/featured.html:52 +msgid "published" +msgstr "" + +#: blog/templates/blog/blogpost.html:90 +msgid "updated" +msgstr "" + +#: blog/templates/blog/browse.html:47 start/forms.py:15 +#: start/templates/main_search_form.html:3 +msgid "Search" +msgstr "" + +#: blog/templates/blog/browse.html:57 +msgid "select category" +msgstr "" + +#: blog/templates/blog/browse.html:68 +msgid "Keywords" +msgstr "" + +#: blog/templates/blog/browse.html:87 +msgid "Filter" +msgstr "" + +#: blog/templates/blog/browse.html:119 +msgid "No posts found for your filters." +msgstr "" + +#: blog/templates/blog/browse.html:154 blog/templates/blog/featured.html:36 +msgid "category" +msgstr "" + +#: blog/templates/blog/featured.html:5 +msgid "Featured" +msgstr "" + +#: blog/templates/blog/index.html:14 +msgid "What can be found here?" +msgstr "" + +#: blog/templates/blog/index.html:19 +msgid "Writeups" +msgstr "" + +#: blog/templates/blog/index.html:21 +msgid "" +"\n" +" Whenever I discover some interesting security thing, I will post " +"a writeup here.\n" +" " +msgstr "" + +#: blog/templates/blog/index.html:27 +msgid "Open Source" +msgstr "" + +#: blog/templates/blog/index.html:28 +msgid "" +"\n" +" If something comes up, I may post Linux guides or my thoughts on " +"current processes here.\n" +" " +msgstr "" + +#: blog/templates/blog/index.html:33 start/templates/start/index.html:69 +msgid "Selfhosting" +msgstr "" + +#: blog/templates/blog/index.html:34 +msgid "" +"\n" +" Selfhosting is something that I'm really fond of. There will be " +"guides and thoughts about that too\n" +" " +msgstr "" + +#: blog/templates/blog/index.html:39 +msgid "Anything Really" +msgstr "" + +#: blog/templates/blog/index.html:40 +msgid "" +"\n" +" This is my personal Blog after all, I will put here whatever I " +"want and you can't stop me.\n" +" " +msgstr "" + +#: blog/templates/blog/index.html:46 +msgid "Looking for anything specific?" +msgstr "" + +#: blog/templates/blog/index.html:51 +msgid "Browse posts" +msgstr "" + +#: gawa/settings.py:128 +msgid "German" +msgstr "" + +#: gawa/settings.py:129 +msgid "English" +msgstr "" + +#: start/models.py:27 +msgid "Keyword" +msgstr "" + +#: start/models.py:28 +msgid "keywords" +msgstr "" + +#: start/models.py:72 +msgid "Searchable" +msgstr "" + +#: start/models.py:73 +msgid "Searchables" +msgstr "" + +#: start/models.py:95 +msgid "static site" +msgstr "" + +#: start/models.py:96 +msgid "static sites" +msgstr "" + +#: start/models.py:165 +msgid "Link" +msgstr "" + +#: start/models.py:166 start/templates/nav.html:36 +#: start/templates/start/legalinfo.html:8 start/templates/start/links.html:5 +msgid "Links" +msgstr "" + +#: start/templates/400.html:5 start/templates/403.html:5 +#: start/templates/404.html:5 start/templates/500.html:5 +#: start/templates/start/index.html:8 start/templates/start/search.html:5 +msgid "startpage" +msgstr "startpage" + +#: start/templates/400.html:8 +msgid "Bad request" +msgstr "" + +#: start/templates/400.html:9 +msgid "You sent bad data to the server." +msgstr "" + +#: start/templates/403.html:8 +msgid "Permission denied" +msgstr "" + +#: start/templates/403.html:9 +msgid "You are not allowed to access this page." +msgstr "" + +#: start/templates/404.html:8 +msgid "Not found" +msgstr "" + +#: start/templates/404.html:9 +msgid "The resource you are looking for does not exist." +msgstr "" + +#: start/templates/500.html:8 +msgid "Internal Server Error" +msgstr "" + +#: start/templates/500.html:9 +msgid "Something went wrong." +msgstr "" + +#: start/templates/base.html:73 +msgid "" +"\n" +" This website is developed by myself and is\n" +" OpenSource.\n" +"

\n" +" I encourage you to search for and report " +"usuability and security issues\n" +" on this site, aswell as server. For more " +"information, see Reporting.\n" +" " +msgstr "" + +#: start/templates/base.html:87 start/templates/nav.html:42 +#: start/templates/start/legalinfo.html:12 +msgid "Legal Info" +msgstr "" + +#: start/templates/base.html:96 +msgid "Quellcode dieser Website" +msgstr "Source code of this website" + +#: start/templates/base.html:100 +msgid "Contact" +msgstr "Contact" + +#: start/templates/base.html:108 +msgid "Deutschland" +msgstr "Germany" + +#: start/templates/main_search_form.html:4 +msgid "Go" +msgstr "" + +#: start/templates/nav.html:27 start/templates/nav.html:30 +#: start/templates/nav.html:54 +msgid "Start" +msgstr "Start" + +#: start/templates/nav.html:33 start/templates/start/index.html:20 +msgid "Professional" +msgstr "" + +#: start/templates/nav.html:57 +msgid "Browse" +msgstr "" + +#: start/templates/nav.html:99 +msgid "Anonym" +msgstr "" + +#: start/templates/nav.html:113 +msgid "Logout" +msgstr "" + +#: start/templates/nav.html:117 +msgid "Login" +msgstr "" + +#: start/templates/start/index.html:14 +msgid "Personal Website" +msgstr "" + +#: start/templates/start/index.html:19 start/templates/start/index.html:53 +msgid "Who am I?" +msgstr "" + +#: start/templates/start/index.html:23 +msgid "" +"\n" +" I am Christoph J. Scherr, studying " +"Cybersecurity at \n" +" DHBW.\n" +"

\n" +"
Work
\n" +" My form of study means that I often change between " +"studying and working with my partner\n" +" company NewTec, which " +"is a medium sized company with headquaters\n" +" in Pfaffenhofen, Bavaria, Germany. I work mainly on " +"programming on a \n" +" SOC in Rust " +"for industrial contexts.\n" +"

\n" +"
Selfhosting
\n" +" I have a fascination for Computers. As a hobby, I run my " +"own computer networks (like the one this website\n" +" is served from!)\n" +"
\n" +" " +msgstr "" + +#: start/templates/start/index.html:42 +msgid "further information" +msgstr "" + +#: start/templates/start/index.html:54 +msgid "Private" +msgstr "" + +#: start/templates/start/index.html:58 +msgid "" +"\n" +" I don't know what to put in this general paragraph.\n" +" " +msgstr "" + +#: start/templates/start/index.html:63 +msgid "Lanugages" +msgstr "" + +#: start/templates/start/index.html:64 +msgid "" +"\n" +" Somehow, I find myself fascinated by the japanese " +"lanugage. 日本語が好きだ。\n" +" " +msgstr "" + +#: start/templates/start/index.html:70 +msgid "" +"\n" +" I have a fascination for Computers. As a hobby, I " +"run my own computer networks (like the one this website\n" +" is served from!)\n" +" " +msgstr "" + +#: start/templates/start/legalinfo.html:16 +msgid "Information according to §5 TMG" +msgstr "" + +#: start/templates/start/legalinfo.html:23 +msgid "Germany" +msgstr "" + +#: start/templates/start/legalinfo.html:25 +msgid "Email " +msgstr "" + +#: start/templates/start/links.html:8 +msgid "Personal" +msgstr "" + +#: start/templates/start/links.html:42 start/templates/start/links.html:86 +msgid "visit" +msgstr "" + +#: start/templates/start/links.html:52 +msgid "Others" +msgstr "" + +#: start/templates/start/search.html:9 +msgid "Search for" +msgstr "" + +#, fuzzy +#~| msgid "" +#~| "\n" +#~| " Ich habe diese Website selbst programmiert " +#~| "und gehostet. \n" +#~| " Falls Sie einen Fehler belibiger Art finden, " +#~| "würde ich mich freuen, \n" +#~| " wenn Sie mich darüber benachrichtigen.\n" +#~| "

\n" +#~| " Die Suche nach Schwachstellen und Fehlern " +#~| "auf dieser Website ist für \n" +#~| " diesen Zweck ausdrücklich erlaubt.\n" +#~| " " +#~ msgid "" +#~ "\n" +#~ " Ich habe diese Website selbst programmiert " +#~ "und gehostet.\n" +#~ " Falls Sie einen Fehler belibiger Art finden, " +#~ "würde ich mich freuen,\n" +#~ " wenn Sie mich darüber benachrichtigen.\n" +#~ "

\n" +#~ " Die Suche nach Schwachstellen und Fehlern auf " +#~ "dieser Website ist für\n" +#~ " diesen Zweck ausdrücklich erlaubt.\n" +#~ " " +#~ msgstr "" +#~ "\n" +#~ "I have programmed and hosted this Website by myself. If you find any " +#~ "issues or bugs,\n" +#~ "please contact me about it.\n" +#~ "\n" +#~ "\n" +#~ "\n" +#~ "I specifically allow the search for any issues this website might have. " diff --git a/gawa/start/locale/de/LC_MESSAGES/django.mo b/gawa/start/locale/de/LC_MESSAGES/django.mo deleted file mode 100644 index b640b31..0000000 Binary files a/gawa/start/locale/de/LC_MESSAGES/django.mo and /dev/null differ diff --git a/gawa/start/locale/de/LC_MESSAGES/django.po b/gawa/start/locale/de/LC_MESSAGES/django.po deleted file mode 100644 index 383c38f..0000000 --- a/gawa/start/locale/de/LC_MESSAGES/django.po +++ /dev/null @@ -1,70 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-29 23:20+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: start/templates/start/base.html:16 start/templates/start/index.html:5 -msgid "cscherr.de" -msgstr "cscherr.de" - -#: start/templates/start/base.html:24 -msgid "Start" -msgstr "Start" - -#: start/templates/start/base.html:27 -msgid "Blog" -msgstr "Blog" - -#: start/templates/start/base.html:80 -msgid "" -"\n" -" Ich habe diese Website selbst programmiert und " -"gehostet. \n" -" Falls Sie einen Fehler belibiger Art finden, " -"würde ich mich freuen, \n" -" wenn Sie mich darüber benachrichtigen.\n" -"

\n" -" Die Suche nach Schwachstellen und Fehlern auf " -"dieser Website ist für \n" -" diesen Zweck ausdrücklich erlaubt.\n" -" " -msgstr "" -"\n" -"Ich habe diese Website selbst programmiert und gehostet.\n" -"Falls Sie einen Fehler belibiger Art finden\n" -"würde ich mich freuen, wenn Sie mich darüber benachrichtigen.\n" -"

\n" -"Die Suche nach Schwachstellen und Fehlern auf\n" -"dieser Website ist für diesen Zweck ausdrücklich erlaubt.\n" -" " - -#: start/templates/start/base.html:101 -msgid "Quellcode dieser Website" -msgstr "Quellcode dieser Website" - -#: start/templates/start/base.html:110 -msgid "Contact" -msgstr "Kontakt" - -#: start/templates/start/base.html:115 -msgid "Deutschland" -msgstr "Deutschland" - -#: start/templates/start/index.html:5 -msgid "startpage" -msgstr "Startseite" diff --git a/gawa/start/locale/en/LC_MESSAGES/django.mo b/gawa/start/locale/en/LC_MESSAGES/django.mo deleted file mode 100644 index a364405..0000000 Binary files a/gawa/start/locale/en/LC_MESSAGES/django.mo and /dev/null differ diff --git a/gawa/start/locale/en/LC_MESSAGES/django.po b/gawa/start/locale/en/LC_MESSAGES/django.po deleted file mode 100644 index 9c9d273..0000000 --- a/gawa/start/locale/en/LC_MESSAGES/django.po +++ /dev/null @@ -1,66 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-05-29 23:20+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: start/templates/start/base.html:16 start/templates/start/index.html:5 -msgid "cscherr.de" -msgstr "cscherr.de" - -#: start/templates/start/base.html:24 -msgid "Start" -msgstr "Start" - -#: start/templates/start/base.html:27 -msgid "Blog" -msgstr "Blog" - -#: start/templates/start/base.html:80 -msgid "" -"\n" -" Ich habe diese Website selbst programmiert und " -"gehostet. \n" -" Falls Sie einen Fehler belibiger Art finden, " -"würde ich mich freuen, \n" -" wenn Sie mich darüber benachrichtigen.\n" -"

\n" -" Die Suche nach Schwachstellen und Fehlern auf " -"dieser Website ist für \n" -" diesen Zweck ausdrücklich erlaubt.\n" -" " -msgstr "" -"I have programmed and hosted this Website by myself. If you find any issues or bugs,\n" -"please contact me about it.\n" -"

\n" -"I specifically allow the search for any issues this website might have.\n" - -#: start/templates/start/base.html:101 -msgid "Quellcode dieser Website" -msgstr "Source code of this website" - -#: start/templates/start/base.html:110 -msgid "Contact" -msgstr "Contakt" - -#: start/templates/start/base.html:115 -msgid "Deutschland" -msgstr "Germany" - -#: start/templates/start/index.html:5 -msgid "startpage" -msgstr "startpage" diff --git a/gawa/start/templates/base.html b/gawa/start/templates/base.html index 85abd3e..71129b5 100644 --- a/gawa/start/templates/base.html +++ b/gawa/start/templates/base.html @@ -69,14 +69,14 @@
Information

+ {# NOTE: If you are not me, then you should probably adjust this. #} {% blocktranslate %} - Ich habe diese Website selbst programmiert und gehostet. - Falls Sie einen Fehler belibiger Art finden, würde ich mich freuen, - wenn Sie mich darüber benachrichtigen. -

- Die Suche nach Schwachstellen und Fehlern auf dieser Website ist für - diesen Zweck ausdrücklich erlaubt. - {% endblocktranslate %} + This website is developed by myself and is + OpenSource. +

+ I encourage you to search for and report usuability and security issues + on this site, aswell as server. For more information, see Reporting. + {% endblocktranslate %}
admin@cscherr.de

diff --git a/gawa/start/templates/main_search_form.html b/gawa/start/templates/main_search_form.html index 329df40..e24787b 100644 --- a/gawa/start/templates/main_search_form.html +++ b/gawa/start/templates/main_search_form.html @@ -1,6 +1,5 @@ {% load i18n %} diff --git a/gawa/start/templates/nav.html b/gawa/start/templates/nav.html index 60535e4..3724299 100644 --- a/gawa/start/templates/nav.html +++ b/gawa/start/templates/nav.html @@ -30,7 +30,7 @@ {% translate "Start" %}
  • - {% translate "Professionell" %} + {% translate "Professional" %}
  • {% translate "Links" %} @@ -58,32 +58,11 @@
  • -
    diff --git a/gawa/start/templates/start/index.html b/gawa/start/templates/start/index.html index 357a840..c75b0db 100644 --- a/gawa/start/templates/start/index.html +++ b/gawa/start/templates/start/index.html @@ -1,49 +1,91 @@ {% extends 'base.html' %} {% load i18n %} {% get_current_language as LANGUAGE_CODE %} -{% block languagecode %}{{ LANGUAGE_CODE }}{% endblock languagecode %} -{% block title %}{% translate "cscherr.de" %} - {% translate "startpage" %}{% endblock title %} +{% block languagecode %} + {{ LANGUAGE_CODE }} +{% endblock languagecode %} +{% block title %} + {% translate "cscherr.de" %} - {% translate "startpage" %} +{% endblock title %} {% block main %} -
    -
    -

    {% translate "cscherr.de" %}

    -

    Untertitel

    -
    -
    -
    -

    - {% translate "Wer bin ich?" %} - {% translate "Professionell" %} -

    -

    - {% blocktranslate %} - Ich bin Christoph J. Scherr und studiere dual Informatik mit der Spezialisierung - Cybersecurity an der DHBW Mannheim. -
    -
    - Mein dualer Partner ist die NewTec GmbH, ein - mittelständisches Unternehmen aus Pfaffenhofen in Bayern. Dort arbeite Ich vorallem an - Safety nahen embedded Systemen. -
    -
    - Auch in meiner Freizeit arbeite Ich gerne mit Computern, hobbymäßig bin Ich mein eigener - System Administrator (Diese Seite habe ich z.B. selbst gehostet.). -
    -
    - {% endblocktranslate %} - - {% translate "further information" %} - - -

    +
    +
    +

    {% translate "cscherr.de" %}

    +

    {% trans "Personal Website" %}

    -
    -

    - {% translate "Wer bin ich?" %} - {% translate "Privat" %} -

    - {% lorem 1 b %} +
    +
    +
    +

    + {% translate "Who am I?" %} + {% translate "Professional" %} +

    +
    +
    +

    + {% translate "Who am I?" %} + {% translate "Private" %} +

    +
    +
    +
    +
    + {% blocktranslate %} + I am Christoph J. Scherr, studying Cybersecurity at + DHBW and passionate about computers. + {% endblocktranslate %} +
    +
    + {% blocktranslate %} + There is nothing to say that does not require a headline. + {% endblocktranslate %} +
    +
    +
    +
    + {% blocktranslate %} +
    Work
    + My form of study means that I often change between studying and working with my partner + company NewTec, which is a medium sized company with headquaters + in Pfaffenhofen, Bavaria, Germany. I work mainly on programming on a + SOC in Rust for industrial contexts. + {% endblocktranslate %} +
    +
    +
    {% trans "Lanugages" %}
    + {% blocktranslate %} + Somehow, I find myself fascinated by the japanese lanugage.
    日本語が好き。However, + I'm still at the beginning of the journey. + {% endblocktranslate %} +
    +
    +
    +
    +
    {% trans "Selfhosting" %}
    + {% blocktranslate %} + I have a fascination for Computers. As a hobby, I run my own computer networks (like the one this website + is served from!) + {% endblocktranslate %} +
    +
    +
    +
    +
    -
    {% endblock main %} diff --git a/gawa/start/templates/start/legalinfo.html b/gawa/start/templates/start/legalinfo.html index 13776eb..8b97fcc 100644 --- a/gawa/start/templates/start/legalinfo.html +++ b/gawa/start/templates/start/legalinfo.html @@ -13,7 +13,7 @@

    - {% trans "Angaben gemäß § 5 TMG" %} + {% trans "Information according to §5 TMG" %}

    diff --git a/gawa/start/templates/start/reporting.html b/gawa/start/templates/start/reporting.html new file mode 100644 index 0000000..e69de29 diff --git a/gawa/start/templates/start/search.html b/gawa/start/templates/start/search.html index a937dde..9b1e76c 100644 --- a/gawa/start/templates/start/search.html +++ b/gawa/start/templates/start/search.html @@ -6,7 +6,7 @@ {% block main %}
    -

    {% translate "Search for:" %} {{ request.GET.search }}

    +

    {% translate "Search for" %}: {{ request.GET.search }}

    {% for result in object_list %} diff --git a/gawa/start/urls.py b/gawa/start/urls.py index 3b65838..e0d23a9 100644 --- a/gawa/start/urls.py +++ b/gawa/start/urls.py @@ -6,6 +6,7 @@ app_name: str = "start" urlpatterns = [ path("", views.Index.as_view(), name="index"), path("search/", views.MainSearch.as_view(), name="search"), + path("reporting/", views.Reporting.as_view(), name="reporting"), path("legal/", views.LegalInfo.as_view(), name="legal"), path("links/", views.Links.as_view(), name="links"), path("professional/", views.LegalInfo.as_view(), name="professional"), diff --git a/gawa/start/views.py b/gawa/start/views.py index 63a7595..78420f4 100644 --- a/gawa/start/views.py +++ b/gawa/start/views.py @@ -51,6 +51,14 @@ class Professional(TemplateView, SearchableView): template_name: str = "start/legalinfo.html" +class Reporting(TemplateView, SearchableView): + """ + Reporting Interface and information about the allowed scope of searching for + security issues. + """ + # TODO + template_name: str = "start/reporting.html" + class LegalInfo(TemplateView, SearchableView): """ Legal info that the german authorities want. diff --git a/gawa/static/admin/img/icon_searchbox_rosetta.png b/gawa/static/admin/img/icon_searchbox_rosetta.png new file mode 100644 index 0000000..8ab579e Binary files /dev/null and b/gawa/static/admin/img/icon_searchbox_rosetta.png differ