Harmadik Yii alapú rendszerem
2012.04.23.
Harmadik referencia munkám (
http://elite-bogen.com) első fázisa lezárult. Az átadott kódok az eddigi rendszereimhez hasonlóan PMS-ként (Page Management System) funkcionálnak. A rendszer többnyelvű, az oldalak teljes mértékben karbantarthatóak, fotók és videók rendelhetők bármelyik oldalra. A videókat és a fotókat is nyelvenként más-más címkével lehet ellátni.
A fejlesztés második fázisában a felhasználói regisztrációval és bejelentkezéssel kapcsolatos teendőket végzem. A felhasználókezelés és a webshop kulturált megvalósítása is különféle levelezési folyamatokat generál, ráadásul többnyelvű a rendszer, ezért egy külön sablon alapú levélkezelő komponenst készítettem. Az adminisztrációs felületen karbantarthatóak a levelezés sablonjai. A rendszerben felvett nyelveken lehet meghatározni a levél címét, egyszerű (plain) és formázott (html) törzsét. Az adminisztrátor részére egy súgó is megjelenik, amiben láthatja azokat a címkéket, ami az adott levélben ajánlott, hogy szerepeljen. A {{cimkéket}} dupla kapcsos zárójel között adhatóak meg, majd az aktuális kontroller átadja a komponens részére egy tömbben a helyettesítő adatokat (amiket akár több modellből is lekérhet).
A felhasználókezelésnél általános feladatokat oldottam meg: regisztrációt, regisztráció aktiválása e-mailben, bejelentkezés, új jelszó igénylése, és új jelszó aktívása funkciókat.. A PMS részhez integráltam a felhasználói funkciókat. A megoldás előnye, hogy a felhasználóval kapcsolatos folyamatokat a honlap stílusának megfelelően készítheti el az adminisztrátor, továbbá az, hogy a PMS kódok karbantarthatósága nem lett redundáns az új felületek miatt. Az űrlapok validálását a felhasználói élmény növelése érdekében AJAX módon is lekezeltem (amit Yii-ben rendkívül egyszerű). A bejelentkezésnél érdekesség, hogy a még nem aktivált felhasználó nem jelentkezhet be a rendszerbe, de erről a rendszer információt ad. A többnyelvű felhasználókezelés összetettségét sugallhatja, hogy nyelvi címkék száma meghaladta a 80 bejegyzést, a sablonlevelekből és PMS oldalakból több mint 10 darabot készítettem.
A felhasználókezelés alapos tesztelését követően fogom elkészíteni a webshop részét a fejlesztésnek. A feladat kivitelezéséről és a felmerülő problémák kivonatáról egy újabb bejegyzést fogok készíteni. Az eddigi tapasztalatom, hogy egy ekkor fejlesztésnél, már a Yii előnyei megmutatkoznak, azaz átlátható, jól szeparált, kevés redundanciával egy helyen karbantarthatóak forráskódok. A fejlesztés nagyságát egy közepes rendszerre lehetne pozicionálni, amiben több mint 30 darab adatbázistábla van. Összesen 7 kontrollerből és 18 modulból oldottam meg a rendszer alapjait. A webshop rendszer újabb kontrollerek és modulok készítését fogja maga után vonni.