From 40a4a44c52c64c377d04c02004046d5ec705a61d Mon Sep 17 00:00:00 2001 From: Samuel Philipp Date: Sun, 31 Mar 2024 14:18:45 +0200 Subject: [PATCH] major refactoring for og tags (closes #57) --- src/_data/eleventyComputed.js | 5 +++++ src/_includes/layouts/article.njk | 1 - src/_includes/layouts/service.njk | 5 ----- src/de/services/connectivitycheck.md | 3 +-- src/de/services/connectivitycheck/setup.md | 3 ++- src/de/services/etherpad.md | 3 +-- src/de/services/forgejo.md | 3 +-- src/de/services/jitsi.md | 3 +-- src/de/services/mastodon.md | 3 +-- src/de/services/matrix.md | 3 +-- src/de/services/matrix/setup/part-1.md | 3 ++- src/de/services/matrix/setup/part-2.md | 3 ++- src/de/services/ntfy.md | 3 +-- src/de/services/peertube.md | 3 +-- src/de/services/shields.md | 3 +-- src/en/services/connectivitycheck.md | 2 +- src/en/services/connectivitycheck/setup.md | 3 ++- src/en/services/etherpad.md | 2 +- src/en/services/forgejo.md | 2 +- src/en/services/jitsi.md | 2 +- src/en/services/mastodon.md | 2 +- src/en/services/matrix.md | 2 +- src/en/services/ntfy.md | 2 +- src/en/services/peertube.md | 2 +- src/en/services/shields.md | 2 +- 25 files changed, 31 insertions(+), 37 deletions(-) create mode 100644 src/_data/eleventyComputed.js diff --git a/src/_data/eleventyComputed.js b/src/_data/eleventyComputed.js new file mode 100644 index 0000000..00295a2 --- /dev/null +++ b/src/_data/eleventyComputed.js @@ -0,0 +1,5 @@ +module.exports = { + service: (data) => data.services.find(s => s.id === data.service), + title: (data) => data.title || data.service?.name || "", + summary: (data) => data.summary || data.service?.summary?.[data.locale] || "" +} diff --git a/src/_includes/layouts/article.njk b/src/_includes/layouts/article.njk index 8b4e771..ef52841 100644 --- a/src/_includes/layouts/article.njk +++ b/src/_includes/layouts/article.njk @@ -31,7 +31,6 @@ layout: base.njk {% endif %} - {% set service = services | getServiceById(service) %} {% if service %}
{{ strings.article.relatedService }}
diff --git a/src/_includes/layouts/service.njk b/src/_includes/layouts/service.njk index 9888520..8a36c1a 100644 --- a/src/_includes/layouts/service.njk +++ b/src/_includes/layouts/service.njk @@ -1,12 +1,7 @@ --- layout: base.njk -eleventyComputed: - service: "{{ getServiceById(key) }}" - title: "{{ service.name }}" - summary: "{{ service.summary[locale] }}" --- -{% set service = services | getServiceById(key) %} {% if service %}

{{ strings.service.overview }}

{{title}} {{strings.state.title}}

diff --git a/src/de/services/connectivitycheck.md b/src/de/services/connectivitycheck.md index 8eae47f..f06a319 100644 --- a/src/de/services/connectivitycheck.md +++ b/src/de/services/connectivitycheck.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: connectivitycheck -title: Captive Portal Check +service: connectivitycheck --- Ein Captive Portal ist eine Anmeldeseite in öffentlichen WLAN-Netzwerken, um den Internet-Zugriff an die Zustimmung bestimmter Nutzungsregeln zu binden. Wenn du in einem öffentlichen Netzwerk eine Anmeldeseite angezeigt bekommst, nutzt dein Gerät dafür einen Captive Portal Check. Dieser ermöglicht es dem Gerät, herauszufinden, ob du einen direkten Internetzugang hast oder nicht. Unter Android wird hierfür beispielsweise eine Anfrage an einen Google-Server gestellt. diff --git a/src/de/services/connectivitycheck/setup.md b/src/de/services/connectivitycheck/setup.md index 6bdcc38..2ff7740 100644 --- a/src/de/services/connectivitycheck/setup.md +++ b/src/de/services/connectivitycheck/setup.md @@ -1,7 +1,8 @@ --- layout: article.njk -title: Einrichtung Captive Portal Check service: connectivitycheck +title: Einrichtung Captive Portal Check +summary: In diesem Artikel erfährst du wie du einen eigenen Captive Portal Check in verschiedenen Umgebungen einrichten kannst. tags: - Tutorial - Captive Portal Check diff --git a/src/de/services/etherpad.md b/src/de/services/etherpad.md index 679a97f..fb0f94b 100644 --- a/src/de/services/etherpad.md +++ b/src/de/services/etherpad.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: etherpad -title: Etherpad +service: etherpad --- Etherpad ist eine webbasierte Kollaborationsplattform, die es Benutzern ermöglicht, Textdokumente in Echtzeit gemeinsam zu bearbeiten. Mehrere Benutzer können zeitgleich auf dasselbe Etherpad-Dokument zugreifen, Änderungen vornehmen und sehen, was Andere schreiben. Etherpad bietet eine einfache und effektive Möglichkeit für Teamarbeit, Brainstorming, gemeinsames Schreiben und vieles mehr, ohne dass dabei Versionskonflikte auftreten. diff --git a/src/de/services/forgejo.md b/src/de/services/forgejo.md index 3fe7bc9..bb119e8 100644 --- a/src/de/services/forgejo.md +++ b/src/de/services/forgejo.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: forgejo -title: Forgejo +service: forgejo --- Forgejo ist eine einfache Code-Hosting-Plattform wie GitHub oder GitLab. Sie ist opensource und wird kontinuierlich weiterentwickelt. Ich nutze Forgejo selber sehr gerne, um meine eigenen Projekte verwalte. So zum Beispiel auch diese Webseite. Schau dir gerne mal den Quelltext an und lass mir Feedback da: [git.sp-codes.de/samuel-p/sp-codes.de](https://git.sp-codes.de/samuel-p/sp-codes.de) diff --git a/src/de/services/jitsi.md b/src/de/services/jitsi.md index 80cda16..e9ed029 100644 --- a/src/de/services/jitsi.md +++ b/src/de/services/jitsi.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: jitsi -title: Jitsi Meet +service: jitsi --- Jitsi-Meet ist eine Plattform für Videokonferenzen. Ohne Anmeldung können vollständig verschlüsselte Video-Chats gestartet werden. Zusätzlich bietet Jitsi-Meet die Möglichkeit den Bildschirm für die andere Teilnehmende freizugeben, neue Personen einfach per Link einzuladen und Nachrichten im integrierten Chat zu verschicken. diff --git a/src/de/services/mastodon.md b/src/de/services/mastodon.md index 3480153..e319bf9 100644 --- a/src/de/services/mastodon.md +++ b/src/de/services/mastodon.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: mastodon -title: Mastodon +service: mastodon --- Mastodon ist ein verteilter Mikroblogging-Dienst, ähnlich wie Twitter. Allerdings basiert der Dienst nicht auf einer zentralen Plattform, sondern besteht aus vielen verschiedenen, dezentralen Instanzen, die von Privatpersonen, Vereinen oder sonstigen Stellen eigenverantwortlich betrieben werden. Dadurch machen sich die Nutzer:innen nicht von einem einzigen Anbieter abhängig, sondern können frei entscheiden, mit wem sie welche Informationen teilen. diff --git a/src/de/services/matrix.md b/src/de/services/matrix.md index f92cb3d..46bf892 100644 --- a/src/de/services/matrix.md +++ b/src/de/services/matrix.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: matrix -title: Matrix +service: matrix --- [Matrix](https://matrix.org) ist eine moderne, quelloffene Software für dezentrale Kommunikation (wie E-Mail). Matrix bietet von Haus aus Sprach- und Videoanrufe, inklusive Ende-zu-Ende-Verschlüsselung und vieles mehr. Das Entscheidende ist, dass es nicht den einen Matrix-Server gibt, den alle Nutzende verwenden müssen, wie das beispielsweise bei WhatsApp, Telegram und vielen anderen verbreiteten Messengern der Fall ist. diff --git a/src/de/services/matrix/setup/part-1.md b/src/de/services/matrix/setup/part-1.md index f337025..60bcc91 100644 --- a/src/de/services/matrix/setup/part-1.md +++ b/src/de/services/matrix/setup/part-1.md @@ -1,7 +1,8 @@ --- layout: article.njk -title: Werde Teil der Matrix - Matrix Teil 1 service: matrix +title: Werde Teil der Matrix - Matrix Teil 1 +summary: Erfahre Schritt für Schritt, wie du deinen eigenen Matrix Account einrichten kannst. series: matrix-setup tags: - Tutorial diff --git a/src/de/services/matrix/setup/part-2.md b/src/de/services/matrix/setup/part-2.md index 1195a39..2ff36a9 100644 --- a/src/de/services/matrix/setup/part-2.md +++ b/src/de/services/matrix/setup/part-2.md @@ -1,7 +1,8 @@ --- layout: article.njk -title: Sichere Chats mit Matrix – Matrix Teil 2 service: matrix +title: Sichere Chats mit Matrix – Matrix Teil 2 +summary: Erfahre, was es mit Ende-zu-Ende-Verschlüsselung und der Verifizierung von Kontakten auf sich hat. series: matrix-setup tags: - Tutorial diff --git a/src/de/services/ntfy.md b/src/de/services/ntfy.md index 51a61c6..8534696 100644 --- a/src/de/services/ntfy.md +++ b/src/de/services/ntfy.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: ntfy -title: ntfy +service: ntfy --- ntfy ist ein vielseitiges Tool zur Benachrichtigung über verschiedene Ereignisse. Es unterstützt auch UnifiedPush, ein offenes Protokoll für Echtzeitbenachrichtigungen. diff --git a/src/de/services/peertube.md b/src/de/services/peertube.md index d1f34d5..bd02a57 100644 --- a/src/de/services/peertube.md +++ b/src/de/services/peertube.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: peertube -title: PeerTube +service: peertube --- PeerTube ist ein Netzwerk aus mehreren föderierten, interoperablen Video-Hosting-Anbietern, vergleichbar mit YouTube. Allerdings basiert der Dienst nicht auf einer zentralen Plattform, sondern besteht aus vielen verschiedenen, dezentralen Instanzen, die von Privatpersonen, Vereinen oder sonstigen Stellen eigenverantwortlich betrieben werden. Dadurch machen sich die Nutzenden nicht von einem einzigen Anbieter abhängig, sondern können frei entscheiden, mit wem sie welche Informationen teilen. diff --git a/src/de/services/shields.md b/src/de/services/shields.md index 4d4c5df..7d0a4c4 100644 --- a/src/de/services/shields.md +++ b/src/de/services/shields.md @@ -1,7 +1,6 @@ --- layout: service.njk -key: shields -title: Shields +service: shields --- Shields ist ein Service für prägnante, konsistente und lesbare Badges im SVG- und Rasterformat. Über eine URL können sie sehr einfach in Readmes oder jede andere Webseite eingebunden werden. Außerdem werden Integrationen zu verschiedenen Diensten oder Netzwerken bereitgestellt. diff --git a/src/en/services/connectivitycheck.md b/src/en/services/connectivitycheck.md index ae1daf5..ce0b01d 100644 --- a/src/en/services/connectivitycheck.md +++ b/src/en/services/connectivitycheck.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: connectivitycheck +service: connectivitycheck title: Captive Portal Check --- A captive portal is a login page in public WLAN networks to restrict Internet access to the approval of certain terms of use. When you see a login page on a public network, your device uses a captive portal check. This allows the device to find out whether you have direct Internet access or not. In Android, for example, your device sends a request to a Google server. diff --git a/src/en/services/connectivitycheck/setup.md b/src/en/services/connectivitycheck/setup.md index a2ecec9..025d762 100644 --- a/src/en/services/connectivitycheck/setup.md +++ b/src/en/services/connectivitycheck/setup.md @@ -1,7 +1,8 @@ --- layout: article.njk -title: Setup Captive Portal Check service: connectivitycheck +title: Setup Captive Portal Check +summary: In this article, you will learn how to set up your own captive portal check on different devices. tags: - Tutorial - Captive Portal Check diff --git a/src/en/services/etherpad.md b/src/en/services/etherpad.md index c7feda5..6db10d0 100644 --- a/src/en/services/etherpad.md +++ b/src/en/services/etherpad.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: etherpad +service: etherpad title: Etherpad --- Etherpad is a web-based collaboration platform that allows users to edit text documents together in real time. Multiple users can simultaneously access the same Etherpad document, make changes, and see what others are writing. Etherpad provides a simple and effective way for teamwork, brainstorming, collaborative writing, and more, without version conflicts. diff --git a/src/en/services/forgejo.md b/src/en/services/forgejo.md index 32aa677..c5db822 100644 --- a/src/en/services/forgejo.md +++ b/src/en/services/forgejo.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: forgejo +service: forgejo title: Forgejo --- Forgejo is a simple code hosting platform like GitHub or GitLab. It is open source and under continuous development. I like to use Forgejo myself to manage my own projects. For example, this website. Take a look at the source code and leave me some feedback: [git.sp-codes.de/samuel-p/sp-codes.de](https://git.sp-codes.de/samuel-p/sp-codes.de) diff --git a/src/en/services/jitsi.md b/src/en/services/jitsi.md index e3f2510..04ead1f 100644 --- a/src/en/services/jitsi.md +++ b/src/en/services/jitsi.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: jitsi +service: jitsi title: Jitsi Meet --- Jitsi-Meet is a platform for video conferences. You can start fully encrypted video chats without registration. Additionally, Jitsi-Meet offers the possibility to share the screen with other participants, invite new users with a simple link and send messages in the integrated chat. diff --git a/src/en/services/mastodon.md b/src/en/services/mastodon.md index e56763f..3a4b850 100644 --- a/src/en/services/mastodon.md +++ b/src/en/services/mastodon.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: mastodon +service: mastodon title: Mastodon --- Mastodon is a federated microblogging service, similar to Twitter. However, the service is not based on a central platform, but consists of many, decentralized instances that are run independently by private individuals, associations or other organizations. This means that users are not locked into a single provider, but are free to decide with whom they share what information. diff --git a/src/en/services/matrix.md b/src/en/services/matrix.md index a409c69..c82e2f2 100644 --- a/src/en/services/matrix.md +++ b/src/en/services/matrix.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: matrix +service: matrix title: Matrix --- [Matrix](https://matrix.org) is a modern, open source software for decentralized communication (like e-mail). Matrix offers end-to-end encryption, voice and video calls and much more. However, the most important thing is that there is not one Matrix server that all users have to use, like WhatsApp, Telegram and many other popular messengers. diff --git a/src/en/services/ntfy.md b/src/en/services/ntfy.md index d0fc007..c5e41b9 100644 --- a/src/en/services/ntfy.md +++ b/src/en/services/ntfy.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: ntfy +service: ntfy title: ntfy --- ntfy is a versatile tool for notification about various events. It also supports UnifiedPush, an open protocol for real-time notifications. diff --git a/src/en/services/peertube.md b/src/en/services/peertube.md index f816e34..b75a179 100644 --- a/src/en/services/peertube.md +++ b/src/en/services/peertube.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: peertube +service: peertube title: PeerTube --- PeerTube is a network of several federated, interoperable video hosting providers, comparable to YouTube. However, the service is not based on a central platform, but consists of many, decentralized instances that are run independently by private individuals, associations or other organizations. This means that users are not locked into a single provider, but are free to decide with whom they share what information. diff --git a/src/en/services/shields.md b/src/en/services/shields.md index 35d36b3..c6b967e 100644 --- a/src/en/services/shields.md +++ b/src/en/services/shields.md @@ -1,6 +1,6 @@ --- layout: service.njk -key: shields +service: shields title: Shields --- Shields is a service for concise, consistent and legible badges in SVG and raster format. Via a URL they can be easily embedded in readmes or any other website. In addition, integrations to various services or networks are provided.