Star Wars modulfejlesztés 3
Ismételten fejlesztések történtek a modulegyüttesen az előző állapothoz képest. A leglényegesebb változás hogy bekerült egy újabb mező, méghozzá egy kép, a starship modulba. A kép berakását az image modul megfelelő függvényeinek felhasználásával értem el főképp. Azért ezt a változatot választottam, mert már elég sok függvény meg van benne írva, és ezek felhasználása kényelmesebb a Drupal beépített képfeldolgozása helyett.
A blog további elemei:
A legfontosabb ezek közül, hogy az image modulban benne van a feltöltéshez, frissítéshez és megjelenítéshez minden eszköz, míg az API-ban csak rengeteg függvényhívással illetve adatbázis manipulálásával lehetne a kívánt feladatokat végrehajtani, addig az image modul mindezt készen nyújtja. A modul képes az image modul detektálására (module_exist), és ennek megfelelően meg is jeleníti a képhez kapcsolódó elemeket.
Azért az image modul beépítése nem volt teljesen magától értetődő, és időnként kerülő utakat kellett járnom. Az egyik ilyen kerülőút a felviteli form-ba való berakás volt, ugyanis az image_form több elemet pakol be a formba, mint kellene. Ezt megoldandó az kép felvitelének formját saját megoldással oldottam meg a _starship_image_form
függvényben. Ezen kívül szükség volt ellenőrzést is beépíteni ( starship_validate
képében) ami a kép feltöltésének ellenőrzését is elvégzi. A felvitelhet kapcsolódóan az insert
, update
, delete
és load
függvényeket is módosítani kellett, de ezekben mind az image.module
megfelelő függvényét hívom meg.
A megjelenítő részt jórészt újra kellett írni, és új szolgáltatásokat kellett beépíteni. Ennek megfelelően az image_display függvényt átírva beépítettem a modulba pár extra paraméterrel kiegészítve. A képnek teljes oldalon való megjelenítéséhez egy újabb oldalmegjelenítőt építettem be( starship_image_view
), mind a menu, mind a page függvényeket kiegészítve.