JAFO - Photo Contest
JAFO - Photo Contest: WordPress plugin for running a photo club's annual photo contest (tasks, upload, voting, jury evaluation).
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/pantastic-de/jafo/archive/refs/heads/main.zipJAFO is a complete photo contest plugin for photo clubs and competition organizers, running the whole contest from start to finish. Participants upload their images through a simple, guided process; the jury reviews and scores entries centrally; and results are calculated and compiled automatically — reducing manual effort at every stage of the competition.
Beschreibung
Phase 1 deckt ab:
- Rollen "JAFO Teilnehmer" und "JAFO Admin" (zusätzlich zu den bestehenden WordPress-Rollen)
- Custom Post Type "JAFO-Aufgabe" mit automatisch berechneten Terminen (Ankündigung, Erinnerung, Einsendeschluss, Abstimmungszeitraum, Ergebnis) ausgehend vom Clubabend-Termin
- Geschützter Foto-Upload im persönlichen Mitglieder-Dashboard mit Validierung (nur JPG, überdimensionierte Bilder automatisch auf 4K/8,3 MP verkleinert), automatischer Umbenennung (Nachname_Vorname_Titel) und Upload-Historie
- Familien-Accounts: Bilder für andere Familienmitglieder hochladen/zuordnen
- Abstimmung (1-9 Punkte) mit eigenem Zeitfenster, "Bewertung eintragen"-Sperre und ausschließlich eigener Sichtbarkeit der abgegebenen Punkte
- Jury-Dashboard mit Jahres-Übersicht, Auswertungstabelle (Gesamt-/Durchschnittspunktzahl, Verteilung 1-9, anonymisierte Stimmen-Spalten mit Ausreißer-Markierung) und ZIP-Export der Bilder umbenannt nach Platzierung
- Transparente, protokollierte Löschung von Fehlbewertungen durch den Admin
Phase 2 ergänzt:
- E-Mail-Eingang per IMAP-Abruf (WP-Cron, alle 5 Minuten) von jafo@fotoclub-beispiel.de: Anhang- und Inline-Bild-Extraktion, automatische Beanstandung mit Info an den Absender (zu spät, kein Anhang, mehrere Bilder, falsches Format, Inline-Extraktion fehlgeschlagen). Eigener, schlanker IMAP-Client ohne Abhängigkeiten (weder PHP-Erweiterung "imap" noch Composer-Pakete nötig) - läuft unabhängig von PHP-Version und Hosting-Umgebung. Verarbeitete Mails werden in einen Ordner nach dem Titel der JAFO-Aufgabe verschoben (z.B. "JAFO 2025/01" → Ordner "JAFO 2025", darin Unterordner "01"); ohne zuordenbare Aufgabe landen sie im Sammelordner "JAFO-Verarbeitet".
- Zuordnung des Absenders zum Mitglied: automatisch über die primäre WordPress-E-Mail-Adresse, bei abweichender Adresse durch Selbstzuordnung im Dashboard oder durch den Admin (JAFO > Unbekannte Absender) - zurückgehaltene Bilder werden danach automatisch übernommen
- JAFO > E-Mail-Verarbeitung: Protokoll aller ein- und ausgehenden Vorgänge
- Automatisierter Versand der Termin-E-Mails (Ankündigung, optionale Erinnerung, optionale Teilnahmebestätigung, Einladung zur Abstimmung, Einladung zum Clubabend mit Punktetabelle, Ergebnis-Info) per WP-Cron (stündlich), inkl. manuellem "Jetzt ankündigen"-Trigger je Aufgabe
- iCal-Download (.ics) für JAFO-Aufgaben mit gemeinsamer Unternehmung - Link im Dashboard bei der Teilnahmebestätigung und in der Ankündigungs-/Teilnahmebestätigungs-Mail; Zugriff über einen unerratbaren Token je Aufgabe (kein Login nötig, damit Kalender-Apps ihn abonnieren können)
Phase 3 ergänzt:
- Neue, bildschirmfüllende Abstimmungsseite (eigenständiges Layout ohne Theme-Rahmen): Bild wird möglichst groß dargestellt, per Maus/Mausrad/Pinch-Geste zoom- und verschiebbar, Vorheriges-/Nächstes-Bild-Buttons, echter Vollbildmodus, grafisch gestaltete 1-9-Punkte-Leiste mit Hover-Beschreibung je Punktzahl, Status-Kopfzeile mit Aufgabentitel, Fortschritt ("5 von 31 bewertet") und Speicherstatus. Bereits vergebene Punkte sind vorbelegt und bis Ablauf der Abstimmungsfrist jederzeit änderbar.
- Passwortloser, personalisierter Abstimmungslink je Mitglied - kein WordPress-Login nötig, der Link ist ausschließlich für die Abstimmung dieses einen Mitglieds an dieser einen Aufgabe gültig. Eingeloggte Mitglieder gelangen über denselben Link vom Dashboard aus dorthin.
- JAFO > Einladungen: Die "Einladung zur Abstimmung" wird automatisch zum berechneten Termin (−7 Tage) an alle Mitglieder verschickt; zusätzlich lässt sie sich hier jederzeit sofort an alle oder gezielt per Checkbox an einzelne Mitglieder auslösen (z.B. für Nachzügler).
- JAFO > Bewertungsskala: Die Hover-Beschreibungstexte der Punkte 1-9 sind frei redigierbar.
Diese kostenlose Version ist auf maximal 10 JAFO-Aufgaben und 30 Teilnehmer-Konten begrenzt - alle Funktionen sind darüber hinaus uneingeschränkt nutzbar.
Voraussetzung: "Advanced Custom Fields" (mind. Free) muss aktiv sein. Für den E-Mail-Eingang werden nur PHP-Streams und (bei SSL/TLS-Postfächern) die Standard-PHP-OpenSSL-Erweiterung benötigt - beides ist praktisch überall vorhanden. Fehlt eines davon, läuft das Plugin normal weiter, der E-Mail-Eingang bleibt lediglich inaktiv (Hinweis im wp-admin).
Installation
- Plugin-ZIP über wp-admin > Plugins > Installieren > Plugin hochladen installieren (oder den
Ordner nach
wp-content/plugins/jafoentpacken) und aktivieren. - "Advanced Custom Fields" (mind. Free-Version) installieren und aktivieren - ohne dieses Plugin bleibt JAFO inaktiv und zeigt einen entsprechenden Admin-Hinweis.
- Die Rollen "JAFO Teilnehmer" und "JAFO Jury" werden bei der Aktivierung automatisch angelegt. Bestehenden Vereinsmitgliedern eine dieser Rollen zuweisen, oder die eingebaute Selbstregistrierung nutzen (siehe Login-Formular auf der Dashboard-Seite).
- Auf einer eigenen Seite den Shortcode
[jafo_dashboard](Mitglieder-Dashboard) sowie[jafo_admin_dashboard](JAFO-Admin-Bereich),[jafo_profile](Profilseite) und optional[jafo_galerie](öffentliche Fotogalerie) einfügen. - Optional: E-Mail-Eingang per IMAP unter JAFO > E-Mail-Einstellungen konfigurieren - siehe "Hinweise zur Konfiguration" unten für die empfohlene Alternative über wp-config.php.
Hinweise zur Konfiguration
-
Server-Uploadlimits (
upload_max_filesize,post_max_size) müssen für 4K-JPGs (mehrere MB) ausreichend groß sein - siehe Projektnotiz "PHP Einstellungen dokumentieren". -
Die Bilder werden außerhalb der Mediathek unter
wp-content/uploads/jafo-private/gespeichert und ausschließlich über einen rechteprüfenden PHP-Handler ausgeliefert. -
Rollen "jafo_member" und "jafo_jury" werden bei Aktivierung angelegt; bestehende Vereinsmitglieder müssen einer dieser Rollen (oder Administrator) zugewiesen werden, damit sie hochladen/abstimmen können.
-
E-Mail-Eingang: Es wird bewusst keine PHP-Erweiterung "imap" und kein Composer-Paket benötigt (das ersparte PHP-Erweiterungsprobleme, siehe Projekt-Notiz "PHP Einstellungen dokumentieren", und vermeidet die ~10 MB Laravel/Symfony-Abhängigkeiten gängiger IMAP- Bibliotheken). IMAP-Zugangsdaten entweder über JAFO > E-Mail-Einstellungen im wp-admin eintragen, oder - empfohlen, damit das Postfach- Passwort nicht in der Datenbank liegt - als Konstanten in wp-config.php definieren:
define( 'JAFO_IMAP_ENABLED', true ); define( 'JAFO_IMAP_HOST', 'imap.example.com' ); define( 'JAFO_IMAP_PORT', 993 ); define( 'JAFO_IMAP_ENCRYPTION', 'ssl' ); define( 'JAFO_IMAP_USERNAME', 'jafo@fotoclub-beispiel.de' ); define( 'JAFO_IMAP_PASSWORD', '...' ); -
Die berechneten Termine (Ankündigung -21T, Erinnerung/Teilnahmebestätigung -14T, Einsendeschluss -14T/Sonntag 12 Uhr, Abstimmung -7T bis -1T 12 Uhr, Clubabend-Einladung -1T, Ergebnis +1T) sind pro Aufgabe editierbar (Checkbox "Termine automatisch berechnen" deaktivieren). Die Projektdokumentation widersprach sich beim Einsendeschluss (eine Stelle nennt 1 Woche, die Terminplanung 2 Wochen vorher) - hier wurde 2 Wochen gewählt, damit der Abstimmungszeitraum (1 Woche vor dem Clubabend) frei bleibt.
-
Für korrekte Uhrzeiten im iCal-Download muss unter Einstellungen > Allgemein die richtige Zeitzone (z.B. Europe/Berlin) eingestellt sein.
-
Externer Dienst: Ist die Konstante
JAFO_TEST_MODEin wp-config.php auftruegesetzt (Standard: nicht gesetzt/aus), erscheint für Administrator:innen ein zusätzlicher "Testdaten"-Werkzeug-Tab, der lizenzfreie Platzhalterbilder von https://picsum.photos abruft, um eine komplette Test-Aufgabe mit zufälligen Beispielfotos durchzuspielen. Ohne gesetzte Konstante wird picsum.photos nie kontaktiert.
Changelog
1.2.1
- Fix:
uninstall.phpfehlte im gebauten Plugin-Zip - Aufräumen beim Löschen des Plugins lief dadurch nie. Zip-Build korrigiert. - Geändert: Letzte verbliebene Stellen mit der echten Vereins-Mailadresse (E-Mail-Einstellungen in wp-admin) durch einen Platzhalter ersetzt.
1.2.0
- Neu: Diese kostenlose Version ist auf maximal 10 JAFO-Aufgaben und 30 Teilnehmer-Konten begrenzt. Wird eines der Limits erreicht, weist das Plugin darauf hin (Aufgabe anlegen / Registrierung / Teilnehmer hinzufügen), statt kommentarlos zu blockieren.
1.1.4
- Geändert: readme.txt für eine mögliche WordPress.org-Einreichung vorbereitet - Installation- Sektion ergänzt, "Tested up to" aktualisiert, Contributors-Feld korrigiert, echte Vereins-Mailadresse durch Platzhalter ersetzt, externer picsum.photos-Aufruf des Testdaten-Werkzeugs offengelegt.
1.1.3
- Geändert: Plugin-Name auf "JAFO - Photo Contest" gekürzt (kurzer, verzeichnistauglicher Name statt der langen Vorversion).
1.1.2
- Geändert: readme.txt Tags und Kurzbeschreibung auf englische Suchbegriffe (u.a. "photo contest") umgestellt, im Hinblick auf eine mögliche Listung im WordPress.org-Plugin-Verzeichnis.
1.1.1
- Geändert: Plugin-Header umbenannt/überarbeitet (Name, Beschreibung, Autor, Plugin-/Autor-URI, Lizenz-URI, Requires Plugins) - sichtbar in der wp-admin-Plugins-Liste.
1.1.0
- Geändert: Das Grün/Blau/Rot-Farbkonzept (Einsenden/Bewerten/Ergebnis) gilt jetzt auch im JAFO-Admin "Übersicht"-Kalender und in der Termin-Vorschau des Aufgaben-Formulars - vorher bekam dort jede Aufgabe eine eigene Zufallsfarbe. Im Übersicht-Kalender zeigt eine eigene Legende zusätzlich die Aufgaben als klickbare Liste, um weiterhin gezielt eine Zeile in der Tabelle darunter zu markieren.
1.0.2
- Geändert: Farbkonzept von Kalender und den drei Übersichts-Karten (Bilder einreichen / Bewertung abgeben / Meine Ergebnisse) angeglichen - Grün für Einsenden, Blau für Bewerten, Rot für Clubabend/Ergebnis. Die Kopfzeile jeder Übersichts-Karte ist jetzt zusätzlich in einem kräftigeren Farbton hinterlegt als der bisherige Hover-/Linien-Ton.
1.0.1
- Geändert: Kalender-Balken einer JAFO-Aufgabe füllen die Tagesfeld-Höhe komplett aus, wenn an dem Tag nur eine Aufgabe läuft; überlappen sich mehrere Aufgaben an einem Tag, teilen sie sich die Höhe gleichmäßig auf. Die Balken sind jetzt außerdem 50% transparent.
1.0.0
- Neu: Erste stabile Version 1.0 des JAFO-Plugins.
0.95.1
- Fix: Auf den eigenständigen Seiten "Bild hochladen"/"Abstimmung"/"Verlauf" war der Hochladen-Button unsichtbar (weißer Text auf transparentem Hintergrund), da eine CSS-Variable dort fehlte, die erst mit dem neuen Dashboard-Farbkonzept eingeführt wurde.
0.95.0
- Sicherheit: Ein JAFO-Admin (ohne volle Administrator-Rechte) konnte über die Teilnehmer-Massenaktionen einen echten Administrator-Account herabstufen oder sperren - behoben.
- Sicherheit: Eine per E-Mail eingereichte Bilddatei mit manipulierten Abmessungen im Dateikopf konnte den Server beim automatischen Verkleinern zum Absturz bringen, wobei die betroffene Mail bei jedem weiteren Abruf erneut abstürzte und so den kompletten E-Mail-Einsendeweg dauerhaft blockierte - Bildabmessungen werden jetzt vor der Verarbeitung geprüft.
- Sicherheit: Der E-Mail-Anhang-Parser konnte durch stark verschachtelte Mails in eine unbegrenzte Rekursion getrieben werden - jetzt mit Tiefenbegrenzung.
- Geändert: Öffentliche Fotogalerie zwischenspeichert ihre Daten jetzt für eine Stunde statt bei jedem Aufruf alle abgeschlossenen Aufgaben neu zu berechnen - spürbar schneller, besonders bei vielen Jahrgängen und Bot-/Scraper-Zugriffen.
- Fix: Bei per E-Mail abgelehnten Einsendungen (zu spät, falsches Format, mehrere Bilder) blieben verwaiste temporäre Dateien auf dem Server zurück - werden jetzt aufgeräumt.
- Fix: Zwei sich überlappende Postfach-Abrufe (automatischer 5-Minuten-Takt und manuelles "Postfach jetzt abrufen") konnten dieselbe E-Mail doppelt verarbeiten - jetzt gegenseitig gesperrt.
- Geändert: Kleinere Datenbankabfrage-Optimierungen (Aufgabenübersicht, E-Mail-Warteschlange).
0.94.1
- Geändert: Die Platzhalter der E-Mail-Textbausteine heißen jetzt englisch statt deutsch ({{vorname}} → {{first_name}}, {{titel}} → {{title}}, {{thema}} → {{topic}} usw.) - bereits individuell angepasste Textbausteine wurden automatisch auf die neuen Platzhalternamen migriert, es ist keine manuelle Anpassung nötig.
0.94.0
- Neu: Eigene Seiten für "Bild hochladen" ([jafo_upload]), "Abstimmung" ([jafo_voting]), "Verlauf" ([jafo_history]) und "Teilnahmebestätigung" ([jafo_rsvp]) werden jetzt automatisch angelegt und im Menü unter "JAFO" verlinkt - bisher gab es dafür keine eigene Seite.
0.93.1
- Fix: In beiden Kalendern (JAFO-Teilnehmer-Dashboard und JAFO-Admin-Übersicht) blieb die Beschriftung beim Überfahren einer mehrtägigen Termin-Linie mit der Maus stehen, statt beim Wechsel von einem Tag zum nächsten kurz zu verschwinden und neu zu verzögern - die ganze Linie reagiert jetzt auch optisch als ein zusammenhängendes Element auf den Mauszeiger.
- Fix: Im Teilnehmer-Dashboard konnten zwei Phasen derselben JAFO-Aufgabe (z. B. "Ende der Bewertung" und "DEINE BEWERTUNG", die bei den Standard-Terminvorgaben auf denselben Tag fallen) sich gegenseitig einen Kalendertag streitig machen - die betroffene Linie verlor dabei ihr rundes Ende. Beide Linien bekommen jetzt zuverlässig ihr eigenes rundes Ende/Anfang.
0.93.0
- Geändert: Das Teilnehmer-Dashboard ist neu strukturiert - "Termine" (3-Monats-Kalender), darunter "Aufgaben" (alle anstehenden JAFO-Aufgaben mit Hinweisen wie "3 Tage bis zur Bildbesprechung", "Einsendung noch 5 Tage möglich", "Bildbewertung noch 2 Tage möglich") und darunter die drei Aktions-Karten (Bilder einreichen/Bewertung abgeben/Meine Ergebnisse). Kalender-Balken und Termin-Punkte sind jetzt einheitlich nach Status eingefärbt (Farbe 1 Einsenden, Farbe 2 Bewerten, Farbe 3 Ergebnis) statt pro Aufgabe zufällig - dieselben drei Farben wie bei den drei Aktions-Karten. Klick auf einen Kalender-Balken oder -Punkt springt zur passenden Zeile im Aufgaben-Abschnitt.
- Neu: Beim Anlegen von Testdaten (JAFO-Admin > Testdaten) lässt sich die Anzahl der Fake-Teilnehmer:innen (Schritt 1) und die Anzahl generierter Bilder pro Teilnehmer:in (Schritt 4) jetzt einstellen, statt fest auf 28-36 Teilnehmer:innen bzw. 1 Bild vorgegeben zu sein. Bereits vorhandene Fake-Konten werden dabei weiterverwendet statt doppelt angelegt.
0.92.0
- Neu: Bei JAFO-Aufgaben, die mehr als ein Bild pro Teilnehmer:in erlauben, zeigt die Upload-Seite jetzt eine laufende Nummer auf jedem bereits hochgeladenen Bild sowie den Stand "(2 von 6)" neben "Mein Bild". Während des Hochladens steht dort "Lade Bild 2 von 6 hoch …" statt nur "Speichere …".
0.91.0
- Neu: Der Bildtitel wird jetzt in beiden Bewertungs-PDFs mit angezeigt - im "Ergebnisse.pdf" im ZIP-Export (Platz, Bild-Nr., Name, Titel, Gesamt, Ø) und in "Meine Bewertung" (Bild-Nr., Titel, Meine Punkte).
0.90.0
- Fix: Die Termin-Punkte in beiden Kalendern (JAFO-Teilnehmer-Dashboard und JAFO-Admin- Übersicht) saßen immer in der Mitte des Tagesfelds, unabhängig davon, ob der Termin-Balken wegen überlappender Aufgaben in der oberen oder unteren Hälfte lag. Die Punkte sitzen jetzt auf derselben Höhe wie der Balken der jeweiligen Aufgabe.
0.89.0
- Fix: Die farbigen Termin-Balken in beiden Kalendern (JAFO-Teilnehmer-Dashboard und JAFO-Admin-Übersicht) wirkten pro Tag wie einzelne abgerundete, durch Lücken getrennte Kacheln statt eines durchgezogenen Balkens. Die JAFO-Admin-Übersicht hatte zusätzlich noch gar keine Unterscheidung zwischen Anfang/Mitte/Ende eines Zeitraums.
- Geändert: Die drei Übersichts-Karten im JAFO-Teilnehmer-Dashboard haben keinen linken Farbrand mehr. Das aufgeklappte Detail-Feld darunter ist jetzt genauso farbig hinterlegt wie die zugehörige Karte selbst.
0.88.0
- Geändert: Der Termine-Kalender im JAFO-Teilnehmer-Dashboard zeigt wieder drei Monate gleichzeitig statt nur einen.
- Geändert: Die Übersichts-Karten (Bilder einreichen/Bewertung abgeben/Meine Ergebnisse) haben keinen zusätzlichen Schatten/Rahmen mehr, wenn sie geöffnet sind - stattdessen nur eine dezente farbige Hinterlegung. Diese farbige Hinterlegung gibt es jetzt auch für die einzelnen Einträge in der Aufgabenliste jeder Karte.
0.87.0
- Geändert: Das JAFO-Teilnehmer-Dashboard ist überarbeitet, damit Funktionen sofort als solche erkennbar sind. Die drei Übersichts-Karten ("Bilder einreichen", "Bewertung abgeben", "Meine Ergebnisse") haben jetzt ein Icon, einen Farbakzent und eine Zähler-Markierung, sobald etwas offen ist (sonst ein ruhiger "Aktuell nichts offen"-Hinweis mit Häkchen), sowie eine durchgängig sichtbare "Details ansehen"-Zeile mit Pfeil, die die Klickbarkeit klarmacht. Der Termine-Kalender zeigt jetzt nur noch einen Monat statt drei gleichzeitig (weiterhin über Pfeile navigierbar), dafür deutlich größer und übersichtlicher.
0.86.0
- Geändert: Die Jahresauswertung ermittelt den Jahressieger jetzt über Jahrespunkte statt über die Summe der rohen Bewertungspunkte: Platz 1 einer JAFO-Aufgabe bringt 15 Jahrespunkte, Platz 2 bringt 14, … bis Platz 15 noch 1 Punkt bringt, ab Platz 16 gibt es 0 Punkte. Bei Punktegleichstand teilen sich mehrere Teilnehmer:innen denselben Platz (der nächste Platz wird entsprechend übersprungen). Die Jahrespunkte werden jetzt auch in der Einzelauswertung je Bild angezeigt ("N JW").
0.85.0
- Geändert: In der Einzelbewertung (JAFO-Admin > Auswertung) zeigt die aufgeklappte Punkteliste jetzt den echten Namen der abstimmenden Person ("Punkte: 8 (Vorname Nachname)") statt der anonymisierten Bezeichnung "Teilnehmer N". Das Vorschaubild in der Rangliste ist doppelt so groß und steht mit Bildnummer und Namen der Fotograf:in ("Bild: 6 (Vorname Nachname)") in einer eigenen linken Spalte, die Platzierung sitzt jetzt als kleines Abzeichen auf dem Bild.
- Fix: Die aufklappbaren Einzelbewertungen in der Auswertung waren durch einen CSS-Fehler bei jedem Bild dauerhaft sichtbar statt erst nach Anklicken.
0.84.0
- Neu: JAFO-Admin > Teilnehmer kann die Freischaltung neu registrierter Konten jetzt wahlweise automatisch oder manuell erfolgen lassen (Checkbox "Neu registrierte Konten automatisch freischalten"). Ist sie ausgeschaltet, wartet ein neues Konto in einer eigenen Liste "Neue Registrierungen" auf Freischaltung oder Ablehnung, und jede Administrator:in/JAFO-Admin bekommt sofort eine E-Mail mit einem direkten Freischalt-Link.
- Neu: Die Teilnehmerliste ist jetzt nach jeder Spalte sortierbar und zeigt zusätzlich Rolle, Uploadgruppe, Anmeldedatum, letzten Login sowie die Gesamtzahl eingereichter Bilder und abgegebener Bewertungen je Person. Eine Mehrfachauswahl erlaubt Sammelaktionen (Löschen, Einladungs-/Bewertungs-Mails abschalten, Account deaktivieren/aktivieren, Rolle ändern) - die "Löschen"-Schaltfläche ist jetzt ein Papierkorb-Symbol, ein neues Stift-Symbol öffnet die Profilbearbeitung direkt in der Liste. Rollenänderungen zeigen vorab einen Warnhinweis; die Rolle "Administrator" kann nur eine echte Administrator:in vergeben. Test-Accounts (aus JAFO > Testdaten) sind in der Liste eigens gekennzeichnet.
0.83.0
- Neu: Anmeldeformular (bei /jafo und /jafo-jury) um eine Selbstregistrierung erweitert - "Jetzt registrieren" fragt Vorname, Nachname, E-Mail, Benutzername und Passwort ab und legt sofort ein neues JAFO-Teilnehmer-Konto an, ohne separate Freischaltung durch eine JAFO-Admin.
0.82.0
- Geändert: Die JAFO-Anleitung beschreibt jetzt auch die neue Fotogalerie-Navigation (Alben, Entdecken mit "Am häufigsten angesehen", Neueste Fotos, Neueste Alben, Zufällige Fotos und Kalender, sowie die Suche).
0.81.0
- Neu: Der "Nur Sieger"-Filter der öffentlichen Fotogalerie ist einem Menü mit "Alben" (Jahresübersicht), "Entdecken" (Am häufigsten angesehen, Neueste Fotos, Neueste Alben, Zufällige Fotos, Kalender) und einer Suche nach Bildtitel/Fotograf:in/Aufgabe/Thema gewichen. "Am häufigsten angesehen" zählt jeden Bildaufruf im Vollbild-Betrachter.
0.80.0
- Neu: Der Mini-Kalender im JAFO-Admin-Dashboard (Übersicht) hat jetzt für jede JAFO-Aufgabe eine klar unterscheidbare eigene Farbe. Überlappen sich mehrere Aufgaben an einem Termin, behält jede ihre einmal zugewiesene Zeile bei, auch wenn eine andere, weiter oben stehende Aufgabe zwischenzeitlich endet - der frei werdende Platz wird dann für spätere Aufgaben wiederverwendet, ohne bestehende Balken zu verschieben. Die Kalenderfelder sind außerdem größer, damit auch mehrere Termin-Punkte an einem Tag nicht mehr abgeschnitten werden. Die Termin-Punkte sitzen jetzt zentriert in der Mitte des Tagesfelds (bei mehreren Terminen nebeneinander), etwas größer, halbtransparent und über dem farbigen Zeitraumbalken. Das Info-Popup beim Hover über einen Termin-Punkt oder Zeitraumbalken erscheint jetzt mit 0,5 Sekunden Verzögerung statt sofort. Der Termin "Bildbesprechung" hebt sich jetzt deutlich von den anderen Terminen ab (voll deckend, dunkler Ring, heller Rand) statt nur geringfügig größer zu sein - dabei außerdem ein Darstellungsfehler behoben, durch den dieser Ring bisher unsichtbar war.
- Geändert: Der 3-Monats-Kalender im Teilnehmer-Dashboard ("JAFO Dashboard") nutzt jetzt dieselbe Darstellung wie im JAFO-Admin-Dashboard - eigene Farbe je JAFO-Aufgabe statt fester Farben je Phase, stabile Zeilen bei überlappenden Terminen, zentrierte Termin-Punkte und das verzögerte Info-Popup beim Hover.
- Geändert: Die Spalte "Versand" in der JAFO-Aufgaben-Übersicht heißt jetzt "Status" und zeigt den aktuellen Stand der Aufgabe (Vorbereitet, Upload läuft, Bewertung vorbereitet, Bewertung läuft, Beendet) statt nur, ob die Eröffnungs-Mail schon verschickt wurde.
- Geändert: Die Spalte "Bewertet" zeigt jetzt zusätzlich, wie viele der eingereichten Bilder bereits mindestens eine Bewertung erhalten haben - nicht mehr nur, wie viele Teilnehmer:innen komplett fertig bewertet haben.
- Geändert: Die Auswertung einer einzelnen JAFO-Aufgabe zeigt die Top-3-Platzierungen nicht mehr als separates Podium mit Medaillen-Symbolen, sondern einheitlich in derselben Platzierungsliste wie alle anderen Bilder.
- Geändert: Der Tab "Aufgabe erstellen/bearbeiten" heißt jetzt "Aufgabe", der Tab "E-Mail-Vorlagen" heißt jetzt "E-Mail Textbausteine".
0.79.3
- Neu: Auf der Bewertungsseite ist bei einem noch nicht bewerteten Bild der Button "5" vorab optisch hervorgehoben (gestrichelter Rahmen) - ein hilfreicher Startpunkt für die Bewertung. Solange nicht tatsächlich geklickt wird, bleibt das Bild in der Datenbank weiterhin "nicht bewertet" und zählt nicht als 5 in der Auswertung.
0.79.2
- Fix: Das Popup der erweiterten Bewertung hatte eine feste Höhenobergrenze und zeigte dadurch auch auf großen Bildschirmen einen Scrollbalken. Die Höhe richtet sich jetzt nach dem verfügbaren Platz im Browserfenster, sodass alle Kriterien ohne Scrollen sichtbar sind (Scrollen bleibt nur auf sehr kleinen/kurzen Fenstern als Rückfallebene erhalten).
0.79.1
- Geändert: Der Button "Erweiterte Bewertung" auf der Bewertungsseite sieht jetzt wie die 1-9-Punkte-Buttons aus und steht direkt in derselben Reihe statt als kleiner Link darüber.
- Neu: Das Popup-Fenster der erweiterten Bewertung lässt sich an seiner Kopfzeile verschieben, sodass es neben das Bild platziert werden kann statt es zu verdecken.
0.79.0
- Neu: Das Teilnehmer-Dashboard ist neu gegliedert - oben ein 3-Monats-Kalender mit Terminliste, darunter drei Übersichts-Karten ("Bilder einreichen", "Bewertung abgeben", "Meine Ergebnisse") mit großer Zahl offener Vorgänge; Klick auf eine Karte blendet die zugehörigen Details ein (Upload-Links, Abstimmungs-Links, eigene Platzierungen/PDF-Downloads). Die E-Mail-Zuordnung nicht zugeordneter Einsendungen und die Teilnahmebestätigung sind jetzt Teil der "Bilder einreichen"-Karte statt eigener, immer sichtbarer Panels.
- Neu: Die Bewertungsseite hat jetzt einen Button "Erweiterte Bewertung" - ein Popup, in dem statt einer einzelnen 1-9-Zahl nach vier Einzelkriterien bewertet wird (Thema getroffen, Bildaufbau, Idee, Technik, Kreativität als Modifikator), die zu einer Gesamtpunktzahl verrechnet werden. Die Kriterien werden direkt im Popup erklärt.
- Geändert: Der Hinweis zur Bildauflösung beim Hochladen bezieht sich jetzt auf die lange Bildseite (empfohlen mindestens 2000 Pixel, angenommen weiterhin ab 1000 Pixel) statt beide Seiten gegen denselben Wert zu prüfen.
0.78.0
- Fix: Die "JAFO-Aufgabe"/"Jahr"-Auswahllisten im JAFO-Admin-Dashboard (Übersicht, Auswertung,
Werkzeuge) sprangen bei Installationen mit einfachen Permalinks auf die Startseite statt zur
gewählten Aufgabe/zum gewählten Jahr - die Auswahl-Formulare hatten kein
action-Attribut, wodurch der Browser beim Absenden die für das Routing nötigepage_idaus der URL verlor.
0.77.9
- Neu: Die Ergebnisse.pdf im Jury-ZIP-Export zeigt jetzt auch den Namen des/der Teilnehmenden pro Bild, nicht mehr nur Platzierung, Bild-Nr. und Punkte.
0.77.8
- Neu: "Fotos generieren" im Testdaten-Tab zeigt jetzt einen Ladebalken mit Fortschritt und dem Namen des Fake-Teilnehmers, für den gerade ein Bild generiert wird, statt dass der Button während des ganzen Vorgangs unverändert dasteht.
0.77.7
- Fix: Der Textbaustein "Dashboard-Hinweis" (in den E-Mails Eröffnungstermin, Teilnahme Erinnerung und Teilnahmebestätigung) verlinkte fälschlich auf die Abstimmungsseite statt auf den persönlichen Einreichen-Link - zu einem Zeitpunkt, an dem die Bewertung noch gar nicht offen ist. Die Mail lud damit faktisch zum Abstimmen statt zum Teilnehmen ein. Verweist jetzt korrekt auf den Upload-Link.
0.77.6
- Geändert: Bilder der öffentlichen Fotogalerie (abgeschlossene JAFO-Aufgaben) werden jetzt vom Browser langfristig zwischengespeichert (30 Tage), statt bei jedem Aufruf komplett neu über WordPress ausgeliefert zu werden - spart bei wiederholtem Besuch/Scrollen spürbar Ladezeit, besonders auf langsamerem Hosting. Private/nicht-öffentliche Bilder (laufende Aufgaben, Dashboard, Abstimmung) sind davon nicht betroffen und bleiben wie bisher ungecached.
0.77.5
- Fix: Die Übersicht der Fotogalerie hatte keinen Weg zurück zur Website, da die Seite (wie die Bewertungsseite) bewusst kein Theme mit Menü/Header lädt. Ein fest positionierter "Zurück zur Startseite"-Link oben links bleibt jetzt auch beim Scrollen sichtbar.
0.77.4
- Fix: In der Einzelbildansicht der Fotogalerie gab es keinen sichtbaren Weg zurück zur Übersicht (nur ein kleines X-Icon) und keinen zuverlässigen Ausstieg aus dem echten Browser-Vollbildmodus (Schließen beendete den Vollbildmodus nicht, was auf manchen Browsern zu einem leeren Vollbildschirm ohne Bedienelemente führen konnte). Es gibt jetzt oben links einen deutlich beschrifteten "Zurück zur Galerie"-Button, der auch den Vollbildmodus zuverlässig beendet.
- Fix: Die Bilder in der Übersicht hatten keine width/height-Angaben, wodurch sich die Seite beim Laden nicht sauber aufbaute (Bilder sprangen nach oben, sobald sie geladen waren). Die Vorschaubilder haben jetzt feste Größenangaben, berechnet aus der gespeicherten Bildgröße, sodass das Masonry-Layout sofort korrekt steht statt sich Bild für Bild nachträglich aufzubauen.
0.77.3
- Geändert: Der Test-Daten-Generator lädt für jedes Testbild jetzt ein zufälliges Format (Hochkant, Quer oder quadratisch) mit einer zufälligen vertikalen Auflösung zwischen 2100 und 4000 Pixel, statt immer dieselbe feste Größe (1600x1200) zu verwenden.
0.77.2
- Neu: Die JAFO Fotogalerie zeigt jetzt bei jedem Bild (nicht mehr nur bei den ersten drei) die Platzierung als Badge sowie Platzierung und Gesamtpunkte im Bildtext - sowohl beim Hover in der Übersicht als auch in der Einzelbildansicht.
0.77.1
- Fix: In der Fotogalerie stimmte die Lese-Reihenfolge der Masonry-Übersicht nicht mit der Platzierung nach Gesamtpunkten überein (CSS-Spalten füllten erst eine Spalte komplett von oben nach unten, bevor die nächste begann). Die Übersicht nutzt jetzt ein zeilenweise füllendes Masonry-Layout, sodass die Reihenfolge links-nach-rechts/oben-nach-unten wieder der Platzierung entspricht.
0.77.0
- Neu: Die Übersicht in der JAFO Fotogalerie ist jetzt eine Masonry-Galerie (Bilder behalten ihr Seitenverhältnis statt quadratisch zugeschnitten zu werden).
- Neu: Die Einzelbildansicht nutzt den ganzen Bildschirm und ist zoom-/schwenkbar (Mausrad, Doppelklick, Pinch-Geste) - beim Öffnen ist das Bild nie größer als der Bildschirm. Name und Titel bleiben immer unten sichtbar. Neuer Vollbild-Button daneben schaltet den echten Browser-Vollbildmodus um.
- Neu: Die Fotogalerie hat jetzt eine eigene Seite "JAFO Fotogalerie" (
/jafo-galerie), die in der WordPress-Seitenliste auftaucht und im Menü verlinkt werden kann - sie leitet direkt auf die eigenständige Galerie-Ansicht weiter.
0.76.1
- Neu: Die JAFO Fotogalerie (
/?jafo_galerie=1) unterstützt jetzt URL-Filter:&jahr=2026(nur ein Jahr),&aufgabe=123(nur eine JAFO-Aufgabe, verlinkt über den Aufgaben-Titel),&fotograf=5(nur Bilder einer Person, verlinkt über den Namen im Lightbox-Bildtext) und&platz=1(nur Platzierung N oder besser, mit "Nur Sieger"-Schnellzugriff).
0.76.0
- Neu: Öffentliche JAFO Fotogalerie (
/?jafo_galerie=1, ohne Login) mit allen Bildern abgeschlossener JAFO-Aufgaben, nach Jahr und Aufgabe sortiert, mit Platzierung, Fotograf:in-Name und Lightbox-Ansicht.
0.75.6
- Geändert: Alle Erwähnungen des konkreten Vereinsnamens im Plugin (Autor-Angabe, E-Mail- Signaturen, Kalender-Export, Anleitung) wurden durch den allgemeinen Begriff "Fotoclub" ersetzt.
0.75.5
- Geändert: Auf der Bewertungsseite im Vollbildmodus blenden Kopf- und Fußleiste jetzt bei jeder Maus-/Tastatur-/Touch-Aktivität ein und nach kurzer Untätigkeit wieder aus (wie bei einem Videoplayer) - das "Menü"-Symbol erscheint passend dazu genau dann, wenn die Leisten ausgeblendet sind.
0.75.4
- Fix: Das "Menü"-Symbol auf der Bewertungsseite im Vollbildmodus war durch eine Puls-Animation zeitweise nur schwach sichtbar - es wird jetzt durchgehend deckend angezeigt.
0.75.3
- Geändert: Auf der Bewertungsseite sind die Bedienelemente (Kopf- und Fußleiste) im Vollbildmodus jetzt vollständig ausgeblendet statt nur stark abgedunkelt. Ein "Menü"-Symbol unten in der Mitte zeigt an, dass dort getippt werden kann - es verschwindet wieder, sobald die Bedienelemente sichtbar sind.
0.75.2
- Fix: In der JAFO-Aufgaben-Übersicht wurde der "Löschen"-Button vom WordPress-Theme überschrieben und dadurch überdimensioniert dargestellt statt wie "Bearbeiten" und "Auswertung" auszusehen.
- Geändert: Die Spalten "Titel" und "Thema" in der Übersicht wurden zu einer Spalte zusammengefasst (Thema erscheint nur noch als Zeile darunter, wenn es sich vom Titel unterscheidet), um Platz für die anderen Spalten zu schaffen.
0.75.1
- Geändert: Die JAFO Anleitung wurde überarbeitet und berücksichtigt jetzt die farbige Punkteskala, den Hinweistext auf der Bewertungsseite, die neue Seite "Wie bewerte ich ein Bild?", den Vollbildmodus, den PDF-Download "Meine Bewertung", die Teilnehmerzahl-Spalte in der Übersicht sowie das Lösch-Popup für Bewertungen.
0.75.0
- Neu: Im Vollbildmodus der Bewertungsseite wird ein eventuell verbleibender Rand oben/unten bzw. links/rechts (abhängig vom Seitenverhältnis von Bild und Bildschirm - das Bild selbst wird dafür nie beschnitten) jetzt mit einer unscharfen, abgedunkelten Version desselben Bilds gefüllt, statt als leere Fläche zu bleiben.
0.74.2
- Fix: Im Vollbildmodus der Bewertungsseite blieb die Kopfzeile nach dem Klick auf den Vollbild-Knopf dauerhaft sichtbar (statt auszublenden), wodurch das Bild optisch nicht die gesamte Bildschirmhöhe ausfüllte.
0.74.1
- Geändert: Die 1-9-Punkte-Buttons auf der Bewertungsseite sind jetzt in denselben Farben (rot bis grün) eingefärbt wie die Punkteskala auf der Seite "Wie bewerte ich ein Bild?".
0.74.0
- Neu: Im Vollbildmodus der Bewertungsseite füllt das Bild jetzt den gesamten Bildschirm. Kopfzeile und die Leiste mit Bildindex-Punkten/Bewertungsskala sind dabei nur noch zu 10% sichtbar und werden erst beim Darüberfahren mit der Maus (mit dunklem Verlaufshintergrund für bessere Lesbarkeit) voll eingeblendet.
0.73.0
- Neu: Neue Seite "Wie bewerte ich ein Bild?" (/jafo-bewertung) mit einem anschaulichen Leitfaden zur Bewertung (Dreischritt zur Punktzahl, farbige 1-9-Punkteskala, BIT-Kriterien, Kreativitäts-Bonus, Kompositionsregeln, Selbstcheck-Fragen). Von der Bewertungsseite aus über "Wie bewerte ich?" verlinkt.
- Geändert: Die Kurzbeschreibungen der Bewertungsskala (1-9 Punkte) wurden auf die neuen, kürzeren Formulierungen der neuen Bewertungshilfe-Seite umgestellt.
0.72.1
- Fix: Das Popup zum Löschen einer Bewertung hatte einen transparenten Hintergrund, wodurch der Text darin nicht lesbar war.
0.72.0
- Geändert: Das Wort "Mitglied"/"Mitglieder" wurde in den Seiten durchgängig durch "Teilnehmer" ersetzt.
- Geändert: Das Wort "Abstimmung" wurde in den Texten und Formularen durchgängig durch "Bewertung" ersetzt.
0.71.0
- Geändert: Auf der Abstimmungsseite (auch in der Ansicht der abgegebenen Bewertungen nach Abstimmungsende) stehen Bild-Nummer/Name/Platz und "Deine Bewertung" jetzt links neben der Punkteskala statt darüber; auf schmalen Bildschirmen bleibt es zur besseren Lesbarkeit gestapelt.
0.70.2
- Geändert: Das Bildbesprechung-Feld zeigt jetzt "BILDBESPRECHUNG" mit Info-Symbol daneben und darunter "Referenz Termin Clubabend".
0.70.1
- Geändert: Das Bildbesprechung-Feld zeigt jetzt "Bildbesprechung" und darunter "Referenz-Termin" mit dem Info-Symbol direkt daneben, statt "Referenz für alle Termine unten".
0.70.0
- Neu: Titel, Thema, Beschreibung und "max. Bilder pro Teilnehmer" (vorher "Max. Bilder pro Mitglied") haben jetzt Info-Symbole mit ausführlicher Erklärung, wie die Terminfelder.
- Geändert: Das Eingabefeld für "max. Bilder pro Teilnehmer" ist jetzt nur so breit wie nötig.
0.69.0
- Neu: Auf der Abstimmungsseite steht jetzt ein Erklärtext über der Punkteskala ("Vergib 1 bis 9 Punkte ..."). Wurde ein Bild schon bewertet, zeigt der Text stattdessen die eigene Punktzahl und die zugehörige Bewertung im Klartext an (z. B. "Deine Bewertung: 5 – Durchschnittlich").
0.68.0
- Geändert: Die Checkboxen "Kommentarfunktion bei der Abstimmung erlauben", "Automatischer Mail-Versand aktiv", "Teilnahme Erinnerung versenden", "Diese Aufgabe ist eine gemeinsame Unternehmung" und "Teilnahmebestätigung anfragen" sind jetzt gemeinsam im neuen Tab "Mitteilungen" statt verteilt auf Aufgabe/Termine.
- Neu: Jede dieser Checkboxen hat jetzt einen kurzen Erklärtext und ein Info-Symbol, das per Klick oder Hover ausführlich beschreibt, was beim Aktivieren passiert.
0.67.0
- Geändert: Die Checkbox "Diese Aufgabe ist eine gemeinsame Unternehmung" ist jetzt im Tab Termine, direkt vor "Teilnahmebestätigung anfragen", statt im Tab Aufgabe.
0.66.0
- Geändert: Die 3 Kalendermonate in der JAFO-Admin-Übersicht sehen jetzt genauso aus wie die Terminübersicht im Bearbeiten-Formular - kleine quadratische Tage, eigener Rahmen pro Monat.
0.65.1
- Zurückgenommen: Der Terminkalender zeigt wieder nur 1 Monat (oder 2, wenn die Termine der Aufgabe eine Monatsgrenze überschreiten) statt immer fest 3 - das sah beim Verkleinern des Fensters nicht gut aus.
0.65.0
- Geändert: Der Terminkalender im Bearbeiten-Formular einer JAFO-Aufgabe zeigt jetzt immer 3 Monate statt nur so viele, wie die eigenen Termine der Aufgabe gerade brauchen.
- Fix: Die Teilnahmezusage-Frist erschien im Kalender auch, wenn "Teilnahmebestätigung anfragen" gar nicht angehakt war.
0.64.0
- Geändert: Die beiden Kalendermonate im Termin-Formular sind jetzt fest klein (240px) statt sich an die verfügbare Breite anzupassen - dadurch stehen sie zuverlässig nebeneinander. Nur auf schmalen Bildschirmen (Mobile) wird umbrochen.
0.63.4
- Geändert: Der Kalenderrahmen im Termin-Formular hat keine Hintergrundfüllung mehr (Rahmen bleibt); bei zu wenig Platz wird der zweite Kalendermonat jetzt auf eine neue Zeile umbrochen statt zusammengequetscht.
0.63.3
- Fix: Bei zwei Kalendermonaten nebeneinander war zu wenig Platz, sodass der zweite Monat kaum noch sichtbar war - das Formular ist jetzt breiter und jeder Monat hat eine großzügigere Mindestbreite.
0.63.2
- Geändert: Die beiden Kalenderblätter im Termin-Formular teilen sich jetzt einen gemeinsamen Rahmen statt je einen eigenen zu haben, und ihr oberer Rand liegt jetzt auf gleicher Höhe mit dem Bildbesprechung-Eingabefeld daneben.
0.63.1
- Geändert: Samstage und Sonntage sind in den Kalendern nicht mehr farblich hinterlegt - nur noch die "Sa"/"So"-Überschrift und die Tageszahl selbst sind dunkelrot.
0.63.0
- Geändert: Bild-Upload/Abstimmung sind im Mitglieder-Dashboard-Kalender jetzt genauso blau (nur unterschiedlich transparent) wie im Termin-Formular der JAFO-Verwaltung - vorher blau/ grün. Die JAFO-Admin-Übersicht behält bewusst ihre eigene Farbe pro Aufgabe.
- Geändert: Die beiden Kalenderblätter im Termin-Formular haben jetzt Rahmen und Hintergrund wie das Bildbesprechung-Eingabefeld daneben.
0.62.0
- Neu: Die JAFO-Admin-Übersicht zeigt jetzt immer 3 Monate gleichzeitig statt nur einen - ‹/› blättert monatsweise weiter.
- Fix: Geht ein Termin über eine Monatsgrenze, war die Linie fälschlich auch am Monatsende/ -anfang abgerundet, obwohl der Termin dort weiterläuft - jetzt nur noch am tatsächlichen Anfang/Ende abgerundet.
- Fix: In der JAFO-Admin-Übersicht war die Zeitlinien-Dicke/der Abstand zwischen mehreren Zeitlinien am selben Tag noch nicht auf die kürzlich für die anderen Kalender eingeführten Werte (max. 14px, min. 1px Abstand) angeglichen.
0.61.1
- Geändert: Bildbesprechung-Terminfeld und beide Kalenderblätter (falls die Aufgabe einen Monatswechsel überspannt) stehen jetzt garantiert in einer Reihe statt bei Platzmangel umzubrechen.
0.61.0
- Geändert: Das Bildbesprechung-Terminfeld steht im Bearbeiten-Formular jetzt neben dem Terminkalender statt darüber; der Kalender passt seine Breite entsprechend an.
0.60.0
- Geändert: Der Terminkalender im Bearbeiten-Formular einer JAFO-Aufgabe ist jetzt größer.
0.59.1
- Fix: Mehrere Zeitlinien im selben Kalendertag (z. B. Bild-Upload und Abstimmung am selben Tag) berührten sich und den oberen/unteren Zellenrand - jetzt mit mindestens 1px Abstand.
0.59.0
- Geändert: Samstage und Sonntage sind in allen JAFO-Kalendern jetzt leicht rötlich hinterlegt.
0.58.0
- Geändert: Die Terminliste unter dem Kalender im JAFO-Dashboard zeigt jetzt nur noch Beginn der Einsendung, Beginn der Abstimmung und Bildbesprechung, jeweils mit Thema und "in X Tagen" zusätzlich zum Datum.
0.57.0
- Geändert: Die Aktion-Buttons (Bearbeiten, Auswertung, Löschen) in der JAFO-Aufgaben-Übersicht sind jetzt kompakte Icon-Buttons mit kleiner Beschriftung statt großer Bu
This README is longer than the copy stored here. Read the rest on GitHub →