mynethome.de

15. August 2015 um 18:29 Uhr

Digitales Fotoalbum reloaded: Von Gallery zu Piwigo

Das großartige Gallery Projekt, mit dem ich bisher meine Fotos im Netz gezeigt habe, wird wurde leider schlafen gelegt – und mit einem Aufwachen ist wohl eher nicht zu rechnen, wenn nicht gerade jemand darauf aus ist eine sehr große PHP Codebasis zu übernehmen. (Wobei ich sagen muss, das das, was ich über die Jahre den denen ich alle 3 Majorreleases der Gallery in verschiedensten Kontexten benutzt und angepasst habe, an Code innerhalb der Gallery gesehen habe, definitiv zum besseren PHP Code gehört, der mir so untergekommen ist! ;-) )

Wirklich schade, das das Kernteam sich entschlossen hat, nicht mehr weiter zu machen. Vielen Dank für die viele Arbeit und jahrelange Pflege dieser guten Software!

Also war es an der Zeit, nach einer Alternative zu schauen. Kurz nach der Ankündigung im letzten Sommer haben sich das auch andere gedacht und interessante Übersichtsartikel verfasst.

Piwigo geht dort als ein sehr vielversprechender Kandidat hervor, insbesondere da ein Migrationsskript für vorhandene Gallery-Installationen angeboten wird. (Wobei schon schade ist, dass Piwigo wiederrum auf PHP basiert und kein alternativer Softwarestack zum Einsatz kommt… ;-) ) Ein weiterer sehr detaillierter Beitrag über die Installation von Piwigo findet sich bei BenHup.

Was auf der Homepage noch nicht so deutlich zu sehen ist: in der Zwischenzeit ist Piwigo auch auf GitHub migriert und das Project unter https://github.com/Piwigo/Piwigo zu finden.

Nach soviel gutem Input habe ich meine Gallery zu Piwigo migriert, was im Großen und Ganzen wie erwartet von statten ging, einige Erfahrungen:

  • Leerzeichen in Verzeichnis oder Dateinamen sind in der Gallery erlaubt, in Piwigo in der Standardeinstellung nicht. Daher eine Konfigurationsänderung, die man in der Datei local/config/config.inc.php ablegt, nicht in include/config_default.inc.php :
    $conf['sync_chars_regex'] = '/^[a-zA-Z0-9-_.~\s\(\)\[\]]+$/';
    
  • EXIF auto rotate wird nicht übernommen, mit der imageRotate Erweiterung kann man das wieder anwenden – aber wie für alle Bilder? -> Das geht über die sehr ausgereifte Stapelverarbeitung in Piwigo, mit der man zunächst sehr Flexibel per Suche und Filter den Satz der zu bearbeitenden Bilder zusammenstellen kann und dann eine Änderung auf alle Bidler in diesem Satz anwenden kann. Diese Änderung kan auch die auto-rotate (basierend auf den EXIF Informationen des Bildes) der Erweiterung sein.
  • Berechtigungen werden nicht übernommen – ich habe zwar die Benutzerkonten übertragen können, jedoch müsst ihr einmal die „Passwort vergessen“ Funktion benutzen um ein neues Passwort zu erstellen. Wenn ihr bestimmt Alben sehen wollt, die jetzt verborgen sind, lasst es mich wissen ;-)

    Falls es jemanden interessiert, die Benutzerkonten konnte ich in zwei Schritten einfach mit SQL übertragen:

    --Transfer users
    INSERT INTO piwigo.piwigo_users(username, password, mail_address)
    SELECT g_userName, g_hashedPassword, g_email
    FROM gallery.g2_User g2u
    WHERE g2u.g_userName NOT IN ('admin', 'guest', 'test')
    
    --create default settings
    INSERT INTO piwigo_user_infos (user_id, nb_image_page, status, language, expand, show_nb_comments, 	show_nb_hits, 	recent_period, 	theme,registration_date ,	enabled_high, 	level, 	activation_key ,	activation_key_expire ,	lastmodified)
    SELECT u.id, 30,  'normal', 'de_DE',false,false,false,	7, 'simpleng', now(),	true, 0, NULL, NULL,now()
    FROM piwigo_users u
    WHERE id NOT IN (1,2)
    
  • Bewertungen wurden nicht übernommen. Von daher musste ich ein wenig Hand anlegen (zum Glück sind die Benutzerkonten schon übertragen):
    INSERT INTO piwigo.piwigo_rate (user_id, element_id, anonymous_id, rate, date)
    SELECT pusers.id, pimages.id, CONCAT(LEFT(rm.g_remoteIdentifier, INSTR(rm.g_remoteIdentifier,':')),RAND()) ,rm.g_rating, now()
    FROM gallery.g2_RatingMap rm 
    , gallery.g2_User u
    , gallery.g2_Item i
    , gallery.g2_FileSystemEntity fse
    , piwigo.piwigo_users pusers
    , piwigo.piwigo_images pimages
    WHERE rm.g_itemId = i.g_id
    AND fse.g_id = i.g_id
    AND rm.g_userId = u.g_id
    AND pusers.username = u.g_UserName
    AND fse.g_pathComponent = pimages.file
    
  • Setzt man ein Album auf „private“, ohne Berechtigungen zu vergeben, wird es auch dem Admin nicht mehr angezeigt – sehr interessanter Effekt wenn man später durch seine Alben wandern muss um zumindest wieder Minimalberechtigungen zu vergeben…
  • Es scheint im Gegensatz zur Gallery keine Funktion zu geben, mit der man Alben verstecken und per direkt Link auch ohne Passwort aufrufen kann. In diesem Fall werde ich also in Zukunft mit einem einfachen Passwortschutz arbeiten oder man muss sich anmelden, um die/alle Bilder zu sehen.

Als finalen Akt des Umzug konnte ich dann noch die hier im Blog links eingebetteten Bilder direkt mit Hilfe des Piwigo WordPress Plugin durch die Piwigo Galerie speisen lassen.

Fazit
Ich bin sehr froh, auf Piwigo gestossen zu sein – auch wenn ich das ein oder andere Finetuning noch von Hand machen musste, der Umzug der Bilder war völlig unproblematisch und auch die Bewertungen konnte ich verhätnismäßig einfach übernehmen. Nur das die zum Teil sehr feingranular vergebenen Berechtigungen nicht mehr gesetzt sind, ist schade – auf der anderenSeite aber wahrscheinlich verkraftbar, da sie nicht sooo intensiv genutzt worden. Wie gesagt, wenn jemand etwas vermisst, bite melden :)

Und schliesslich habe ich damit endlich eine etwas modernere Fotogalerie, die über ein besonderes Feature verfügt, das mich sehr begeistert: Man kann Elemente frei miteinander Verknüpfen. D.h. das ich ein Bild aus einem Event-Album z.B. auch in den shots platzieren kann ohne es doppelt Hochladen zu müssen. Das macht das Erstellen von Themenalben deutlich einfacher.

Außerdem ist das Layout mit dem neuen Theme zusammen mit demals standard bereitgestellten Theme für mobile Endgeräte deutlich ansprechender, was die Betrachter der Bilder hoffentlich auch freut. :-)

Einen Kommentar schreiben


Gravatar unterstützt

mynethome.de wird erstellt mit WordPress
Beiträge (RSS) und Kommentare (RSS)

(c) 2005 - 2015 Markus Schlichting