Gallery2 modul beüzemelése

Tegnap nagy feladatot sikerült végrehajtanom. Megpróbáltam egy általam fejlesztett és karbantartott weboldalon - www.c2power.com - a Gallery2-t és a hozzá kapcsolódó gallery Drupal modult beüzemelni.

Gallery2 telepítése

A feladat nem is olyan egyszerű, mint elsőre látszik. Ugyanis a leírás szerint a Gallery2-t (továbbiakban g2) a drupal rendszer főkönyvtárának (azaz, ahol az oldal található) gallery2 könyvtárába kell telepíteni, csakhogy ez nem lehetséges, ismeretlen okokból. Én mind a .htaccess fájlra, ami a beérkezett kérések elsődleges feldolgozását figyeli, mind pedig a drupal session kezelésére gyanakszom. Nem tudom pontosan melyik lehet a hibás, mindenesetre a g2 install moduljában pont a [url]session_start[/url] sorában jön elő a gubanc, miszerint a StorageModul -t nem tudja betölteni/inicializálni. Erre egyetlen megoldást tűnt helyesnek, és működőképesnek, miszerint a g2-t egy drupaltól független könyvtárba telepítem.
A telepítés elég simán ment, mindenesetre hozzáfűznék pár megjegyzést. A g2 adatbázisbeállításainál érdemes a drupal beállításait használni, és én, mindenfajta összeütközés ürügyén még az admin jelszavának is a drupal admin jelszavát adtam meg (lehet ebből adódik, hogy ezen a szinten nem voltak összeütközések a két rendszerer között). A g2 modulok közül csak azokat érdemes telepíteni, illetve aktiválni (a két fogalom ugyanis nem egyezik meg), amelyeket ténylegesen ki is fogunk használni. Ez egyrészt az egyébként is lassúcska betöltést hivatott felgyorsítani, másrészt csökken a más rendszerekkel való összeütközés esélye. Amit viszont mindenképpen érdemes kikapcsolni, vagy nem telepíteni, az a Registration modul, legalábbis a dokumentáció szerint. Nem tudom ez okozhat-e összeütközést, mindenesetre nem érdemes az ördöggel packázni.

Gallery2 konfigurálása

Ha már úgyis itt vagyunk még pár konfigurációt megejthetünk a g2 rendszeren. Beállíthatjuk a megjelenést sminkek és elrendezés formájában, esetleg hogy akarunk e vízjelet használni, illetve a képméretezést a NetPBM, FFmpeg, Gd, és az ImageMagick közül melyiket részesítse előnyben, melyiket használja, illetve mik ezeknek az elérhetősége az aktuális környezetben.
Miután sikeresen feltelepítettem a g2-t, jöttek a problémák. A g2 dokumentációja szerint ugyanis egyeztetni kell a felhasználókat és a felhasználói csoportokat a két rendszer között. Ennek többször nekiálltam, generáltam SQL parancsokat, amik “elvileg” megoldják a problémát, de minden próbálkozásomat sikertelenség kísérte. Egyszerűen nem tudtam rájönni mit kell még tennem, hogy a rengeteg regisztrált drupal felhasználót átemeljem a g2 rendszerbe, pedig a megoldás pofonegyszerű, és mindjárt rá is térek. Egy a fontos, saját magunk NE próbáljunk meg felhasználót létrehzoni a g2 rendszerben!

A gallery modul telepítése nagyon egyszerű. Egyszerűen a modul fájlját bemásoljuk a modules/gallery könyvtárba, majd szokásos módon telepítjük a adminisztráció/modulok ( admin/modules ) menüpont alatt. Ezek után már csak be kellene állítani ennek tulajdonságait. Miután a g2 rendszert a drupalon kívül helyeztük el, ezért az egész már feltelepített g2 rendszerünket át kell másolni a drupal gallery2 könyvtárába, ugyanis a gallery modul csak a drupal rendszerhez képesti relatív elérési utat képes kezelni. Mivel itt több mint 15 megabájtnyi fájlról beszélünk (a g2data könyvtárat a webeléréstől távoli helyen érdemes elhelyezni, hogy avatatlanok ne férjenek hozzá, ezért ezt nem is kell másolni), ezért érdemes a rendszergazdával kommunikálni hogy a fájlok átkerüljenek ezen helyre. Ha ezzel megvagyunk, lépjünk ki a g2 rendszerből (logout). (Ez azért fontos, hogy ne legyen összeütközés a két session között.)

Ha mindezzel megvagyunk kezdődhet a modulunk beállítása az adminisztráció/beállítások/gallery ( admin/settings/gallery ) menüpont alatt. Itt meg kell adni a g2 elérési útját, ami ha eddig jól jártunk el, akkor a gallery2/ elérési út alatt található, azaz ezt kell a szövegmezőbe beírni. Ha azt akarjuk, hogy egy blokk is megjelenjen a g2-ből, akkor az ebben megjelenő elemeket is itt állíthatjuk be. Ezután el kell látogatnunk az adminisztráció/blokkok ( admin/block ) menüpontra, ahol be kell kapcsolni a Gallery Navigation -t. Ez az egész modul a rendszerben való megjelenését jelenti, de vizuálisan nem jelenik meg belőle semmi, kivéve ha az aktuális oldalunk maga a gallery. Ekkor ugyanis megjelennek rajta az éppen elvégezhető műveletek. Azért fontos ezt bekapcsolni hogy képes legyen a session-t a g2 rendszerbe átvezetni, illetve az ottani függvények elérhetőek legyenek a drupal számára. Ha valamit meg is akarunk a blokkok között jeleníteni a gallery-ből, amit az imént a beállításoknál beállítottunk, akkor a Gallery Image Block blokkot is be kell kapcsolni itt.
A felhasználók kezelését a gallery modul elég trükkösen kezeli. Ugyanis minden olyan esetben, amikor egy drupalos felhasználó tartalmat szeretne létrehozni a g2 rendszerbe, akkor ha még nem létezik a g2-ben a felhasználó, akkor létrehozza azt. A drupal adminja (melynek 1-es az id-je) kivételes helyzetben van, ugyanis a gallery modul a g2 adminjanént azonosítja őt, akár mi is a felhasználó neve, ezáltal teljes körő jogosultsággal látja el a drupalba integrált g2-t illetően is. Ha már létező g2 felhasználóval van a rendszernek dolga azt a g2 rendszerbe teljesen szabványosan be is lépteti, és ezáltal az ő jogosultságának megfelelő funkciók számára elérhetővé válnak.
Ha eddig mégse jártunk sikerrel és drupal rendszer a modul beüzemelése után összeomlik egyedül a Gallery Navigation (és ha bekapcsoltuk, akkor a Gallery Image Block ) kikapcsolásával újra élni fog a drupal és folytathatjuk, vagy rosszabb esetben újrakezdhetjük a konfigurálást.
Ezt a következő SQL parancs futtatásával tehetjük meg, mivel a drupal rendszerünk elérhetelen:

UPDATE blocks SET status = 0 WHERE modul = 'gallery';

Finomhangolás

Remélhetőleg mostmár minden flottul működik és a gallery rendszer elérhető a drupal számára, és rendszerből a gallery modult a www.sajátoldal.hu/gallery címen érhetjük el. Érdemes a g2 rendszerben levő témát egy kicsit finomítani, ugyanis a téma CSS kódjában a #gallery bejegyzés fontmérete kicsi lehet az oldalunk számára. Ezt a gallery2/themes/választott_téma/themes.css fájlban a font-size sor kikommentezése (/* */) segítségével érhetjük el, így a megjelenés jobban illeszkedni fog az oldalunkhoz. Esetleg más finomításokat is érdemes megtenni ezen a fájlon, akár az egész CSS kiürítése segítségével, és/vagy a drupal-os smink CSS fájljában meghatározni az egyes elemek tulajdonságati, hogy ezáltal is jobban illeszkedjenek az arculatba.

Remélem tudtam segítséget nyújtani a telepítéssel kapcsolatban, és másnak nem kell majd ugyanezen a tortúrán végigmenni, mint nekem. Mindenesetre érdekes tanulsággal szolgált a dolog, és felvillantotta a lehetőséget a külső eszközök használatára. Ha mégis valami kimaradt, esetleg további kérdések maradtak, hozzászólások formájában várom az észrevételeket.

comments powered by Disqus