Frissítés 0.2.x-s verzióról
A következő információk azok számára lehet hasznos, akik mélyebben belenyúltak a saját muPortáljukba, például saját modulokat fejlesztettek hozzá, vagy nagyon átszabták a kinézetét.
Nos, be kell vallani, hogy a 0.2.x-s verzióról való átállás bonyolult lehet, ugyanis - bár a felszínen nem látszik annyira - maga a rendszer jelentősen változott.
Adatbázis
Egyrészt jelentősen változott az adatbázis szerkezete. Ez azoknak lesz rossz, akik sokat belenyúltak egy-egy táblába. A rendszerhez több új tábla is hozzáadásra került, valamint sok új mező is hozzáadásra került a jelenlegi táblákhoz. Ezen kívül megszűnt a stats_month tábla, és a stats_days és átalakult (új neve: stat).
A táblákhoz hozzáadtuk az indexeléseket, amik eddig sajnos nem voltak.
Ezen kívül sok mezőméretet megváltoztatunk (főleg az INT()
-k lettek
átírva INT(10)
-re, valamint az az összetartozó mezők lettek kijavítva
ahol nem egyezett meg a mezőméret (pl kategória id mező INT(7)
, tartalom
táblában meg a kategória-azonosító INT(8)
)
Ezen kívül megszűnt a DATETIME
típus használata. Mostantól mindenhol
INT(10)
-t használunk helyette. Ez azt jelenti, hogy mostantól a
NOW()
függvény helyett az UNIX_TIMESTAMP()
-t kell
használni az SQL kérésekben, valamint a time()
függvényt PHP-ben.
Az adatbázis frissítése - a szokásos módon - az update.php
-vel
elvégezhető.
Mintafájlok
Az adatbázist érintő változásoknál talán még nagyobb változást hoz az új verzió a mintafájloknál. Az előző verzióhoz képest újra lett írva az egész, viszont - remélhetőleg - jobban és logikusabban vannak csoportosítva, valamint a CSS-nek köszönhetően egyszerűbben szerkeszthető.
Továbbá a rendszer mostantól támogatja a több téma kezelését (de csak egy lehet aktív, hűen "az oldalnak legyen egy jellegzetes kinézete, amelyről megismerik a felhasználók" elvhez). Ajánlott saját témát kezdeni és azt módosítani és lehetőség szerint ne az alap tpl-base mintát szerkesszük.
Néhány alap-mintafájl is más nevet kapott, vagy bele lettek rakva egy-egy nagyobb csomagba. A hibakereső mód bekapcsolásával mindig követhető, hogy melyik mintacsomagok kerültek betöltésre és milyen minták érhetőek el egy-egy oldalon.
Megjegyzés: Előreláthatólag a 0.4.0-s verzióban külön lesznek választva a rendszertémák a modulok témáitól, viszont nem tervezzük az alaptéma mintafájlainak jelentős módosítását, így egy egyszerű lesz szétválasztani a mintákat.
Saját fejlesztésű modulok
A saját fejlesztésű modulokkal lesz talán a legkevesebb gond, leszámítva az alapminták használatát. Fontos megjegyezni azonban, hogy a későbbi verziókban meg fog szünni pár jelenleg használt funkció.
Egyik, ami biztos,
az a #ECHO
virtuális minta, helyette a $template->AddToStack()
függvényt javasoljuk.
Továbbá javasoljuk a muPortal API által nyújtott új függvények és objektumok
kihasználását. Ilyen a megújult $user
objektum.
Például megszűnt az USER_LOGINED
konstans, helyette a $user->logined
használandó.
Továbbá a felhasználó adatainak módosítására, be,- és kijelentkeztetésére
mostantól lehetőséget nyújt a $user
objektum, ha tehetjük, használjuk
annak lehetőségeit.
Változott továbbá a sütik és a munkamenet-adatok kezelése is. A sütik kezelésére
a muSetCookie()
, muGetCookie()
, muIssetCookie()
és a muRmCookie()
függvényeket javasoljuk (paraméterezést lásd
az includes/sessions.php
fájlban. A $_SESSION
szuperglobális
tömb helyett mostantól a $sess
globális tömb használatát javasoljuk.
Oldalválasztók létrehozására a CreatePgSwitcher()
(adminisztrációs
felületen CreatePageSwitcher()
) függvényt javasoljuk.
Adminisztrációs felületre saját modulok írásához a bevezetett bővítményeket
javasoljuk, továbbá ajánlott a QuickForms
osztály használata.
Nyelvi fájl
A nyelvi fájl is jelentősen bővült. Amennyiben saját szövegeket vittél fel, javasoljuk, hogy valamilyen összehasonlítóprogrammal (például Windowson WinMerge) hasonlítsd és fűzd össze.