knuspermagier.de
Ein L und zwei P. Philipp!

kirby-heic-convert v1.0.0

Wer kennt es nicht. Man exportiert ein Foto aus Photos.app, oder Airdroppt sich was vom iPhone und hat eine .heic-Datei, die man schnell in seinen Kirby-Blog werfen will. Leider unterstützt Kirby keine derartigen Dateien, was Sinn ergibt, da Browser sie gar nicht anzeigen können. Da ich zu faul bin, die Bilder immer im Finder vorher zu konvertieren, schrieb ich ein kleines Plugin, welches die Dateien beim Upload direkt in .jpg wandelt. Danke an heif-convert von libheif.

kirby-secret-links v1.0.0

carbon.png

Mal wieder ein neues Kirby-Plugin. Mal wieder etwas sehr spezielles. Stellt euch vor ihr habt eine Kirby-Seite, oder einen Blog oder so, der aber nur für eine begrenzte Anzahl von Menschen zugänglich ist, zum Beispiel, alle die eingeloggt sind. Nun möchtet ihr aber doch mal eine Seite teilen, ohne direkt einen User-Account anlegen zu müssen, oder die entsprechende Person soll sich nicht einloggen müssen, nur um einen kleinen Text zu lesen, oder was auch immer.

Dafür gibt es nun kirby-secret-links! Es ist etwas... anstrengender zu installieren, siehe die Anleitung im Github. Weil ich illuminate/encryption benutze, wird auch ziemlich viel Laravel-Zeug geladen per Composer, gefällt mir auch nicht so dolle, aber ich wollte etwas, wo ich mir sicher sein kann, dass es funktioniert.

Eine Besonderheit des Plugins ist, dass es nichts Speichern muss und der Link direkt alle Informationen (also um welche Seite es geht und wann der Link abläuft) enthält. Daher die Encryption-Geschichte. Nachteil: Die Links sind natürlich relativ lang, Base64 sei dank. Für meinen Anwendungsfall ist das aber ausreichend so.

So, wer weiß, welches Plugin, was fast keiner braucht, ich als nächstes entwickeln werde!

Marmelade 2022

Der Garten wirft jedes Jahr einige Früchte ab. In den letzten Jahren haben wir die auch schon häufiger zu Marmelade verarbeitet, das Problem ist nur, dass wir eigentlich fast keine Marmelade essen. Schade, wenn man dann zwei riesige 400ml Gläser im Schrank hat, die man gar nicht schafft. In diesem Jahr hatten wir daher die Idee ein paar kleine Gläser zu kaufen, am besten welche die man an einem oder zwei Frühstücken fertig hat. Gleichzeitig haben die den Vorteil, dass man sie auch ganz gut verschenken kann. Shops wie glaeserundflaschen.de haben sowas ziemlich günstig im Angebot. Für ein paar Euro kauften wir also zwanzig Gläser und Deckel und warteten ab, bis die Früchte fertig sind.

Mittlerweile haben wir Johannisbeeren und Stachelbeeren gepflückt und verarbeitet! Vor allem die letzteren waren mal wieder in großer Menge vorhanden, dass es insgesamt elf Gläschen wurden. Dazu kamen fünf oder sechs Gläser mit roter Johannisbeere und ein Glas, in dem rot, weiß und schwarz vermischt sind, weil, äh, die Büsche noch ganz neu sind und nicht so viel trugen. Oder, weil die Amseln alle Beeren aufgefressen haben, keine Ahnung.

20220718-124333-pwa-4659.jpg
20220718-124407-pwa-4660.jpg

Jetzt fehlen noch die Brombeeren. Also, falls ich sie nicht abschneide, bevor sie reif sind, ich hasse diese stachelige Pflanze.

Kirby Nervigkeiten

Ich habe mehrere Kirby-Blogs und viele Seiten gemacht und ich würde Kirby auch jeder Zeit wieder für alles mögliche verwenden, doch ab und zu gibt es wirklich so Kleinkram, der mich einfach nervt, weil ich denke, ach komm, das ist schnell gemacht, und dann geht es einfach nicht. Das betrifft vor allem Sachen im Panel.

Macht zum Beispiel mal ein type: blocks-Feld und darunter eine section vom Typ files. Angenommen, ihr wollt im dem blocks nun eine Galerie einfügen, wäre es super, wenn man direkt aus der files-Section eine Datei reindroppen könnte, statt zuerst in den Edit-Mode der Gallerie zu gehen und dort auf “Select Files” zu drücken? Geht leider nicht.

Man kann nichtmal aus dem Finder direkt Sachen auf das Gallerie-Preview droppen. Ahh.


Natürlich bin ich auch Programmierer und weiß, dass

  • a) Ich hier ein absolutes Nischenproblem habe, was vorher einfach keinem auffiel, weil die meisten so eine Seite halt einmal anlegen, die Bilder in die Galerie packen und fertig.
  • b) Das sich das nicht mal eben implementieren lässt, da da sicher ein riesiger Rattenschwanz dran hängt, so eine Drag-and-Drop Funktion über verschiedene Komponenten zu bauen, die intern sicher auch noch unterschiedlich aufgebaut sind, weil sie warhscheinlich mit vier Jahren Zeitabstand entwickelt wurden, oder so. Ich würde mich auch anbieten, das einzubauen, fürchte mich aber auch einfach vor zweihundert Jahren Pull-Request-Review, weil es eigentlich erstmal architekturell bedacht werden muss.

Immerhin kann ich mir anderweitig helfen. Alles was ich wollte, war Bilder in einem Grid anzeigen. Alles auf das blocks-Feld umzustellen, nur um zwei Bilder nebeneinander anzuzeigen, wäre eh irgendwie overengineert gewesen. Daher einfach kurz dieser schmutzige Hack:

'hooks' => [
        'kirbytags:before' => function ($text, array $data = [], array $options = []) {
            return preg_replace_callback('/\(grid\)(.*)\(\/grid\)/isU', function ($match) {
                return sprintf('<div class="blog-image-grid"><div class="blog-image-grid-inner">%s</div></div>', $match[1]);
            }, $text);
        }
    ],

Und schon kann ich im Post einfach folgendes verwenden:

(grid)
(imag3: blubb.jpg)
(imag3: blabb.jpg)
(/grid)

(CSS gibts natürlich auch noch.)

So leicht kann's dann doch sein sein! Danke, Kirby.