Zadanie na vývoj v ui42 bolo jednoduché: Vytvoriť PHP skript, ktorý vygeneruje OpenOffice dokument na základe vstupnej šablóny a vstupných dát.

OdtPHP verzia 1.0

Skúsil som na webe nájsť nejaké jednoduché riešenie. Skúsenosti s generovaním dokumentov, aj vo formáte ODT, som už mal, ale chcel som nájsť niečo špecifickejšie. Narazil som na knižnicu odtPHP. Bola vo verzii 1.0 a nemala teda za sebou veľkú históriu. Objektovo orientovaná knižnica pre PHP 5 a vyššie. Povedal som si, že konečne niečo nové, čo si so sebou netlačí kopec problémov pochádzajúcich z nižších verzií programovaných v PHP 4, prípadne nižšie, a má teda šancu na úspech. Knižnica mala v tej dobe úhľadne spracovaný web s malým tutoriálom v príkladoch. Niektoré knižnice nemajú ani to. Celá knižnica bola jednoduchá, ale celkovo to navodzovalo dojem, že nové verzie prinesú veľa zaujímavých funkcií. Autori na webe sľubovali: „OdtPHP je veľmi jednoduchá na použitie: s minimálnym množstvom kódu vytvoríte jednoduché dokumenty nahradením tagov v šablóne a vložením obrázkov.“ A neboli to iba sľuby. Použitie bolo naozaj jednoduché. Netrvalo dlho a úloha bola splnená.

Už nefungujúci web projektu odtPHP

Rozšírenie OdtPHP

Neskôr prišli od klienta ui42 ďalšie požiadavky. Potreboval doplniť do šablóny podmienené bloky, premenné rôzne formátovať, a iné drobnosti. OdtPHP je veľmi jednoduchá knižnica. A to nie len čo sa použitia týka, ale aj po ostatných stránkach. Na novo požadované funkcie už jednoducho nestačila. Splnenie nových požiadaviek sa teda neobišlo bez úprav knižnice. Nebol to ale veľký problém – knižnica vo verzii 1.0 už len z princípu nemôže mať prekomplikovaný kód, a rozšíriť ju o nové funkcie nie je pre dobrého PHP programátora problém. Samozrejme prípadný upgrade na novšiu oficiálnu verziu knižnice je potom sťažený.

OdtPHP už skončilo

Teraz, s odstupom jedného roku som sa rozhodol znovu pozrieť na zúbky OdtPHP knižnici. Len tak zo záujmu, čo zaujímavé priniesli nové verzie. Mojim nemilým prekvapením bolo, že web www.odtphp.com už nefungoval. Nepodarilo sa mi nájsť ani web, kam sa OdtPHP presťahovala. Nepodarilo sa mi nájsť ani žiadnu informáciu o ukončení vývoja. Ale všetko nasvedčuje tomu, že vývoj skončil, presnejšie ani nepokračoval. Knižnicu je stále možné stiahnúť na sourceforge.net (http://sourceforge.net/projects/odtphp/). To je všetko, čo po nej zostalo.

Poučenie

Ak sa rozhodnete pri vývoji webov alebo webových aplikácií použiť open source knižnicu, ktorá za sebou nemá dlhší vývoj, počítajte že časom sa môžu dostaviť problémy, niektoré časti si možno budete musieť upraviť alebo doprogramovať podstatné časti kódu. Po týchto úpravách bude upgrade na novú verziu sťažený, ak nie nemožný. Ak samozrejme nové verzie prídu. Neočakávajte podporu od autorov. Na druhej strane, knižnica môže byť dobrým základom pre vašu novú knižnicu ušitú na mieru. Kód nebude možno tak prekomplikovaný a úpravy pôjdu ľahšie. V každom prípade je potrebné použitie knižnice s krátkou históriou dobre zvážiť.

Na koniec už len dodám: OdtPHP je veľmi jednoduchá na použitie. A za tým si stojím – nepoznám žiadnu inú PHP knižnicu, s pomocou ktorej by som vedel rýchlejšie vygenerovať ODT dokument podľa šablóny. Teda pokiaľ sa bavíme o jednoduchých šablónach. Ale pre veľa webových aplikácii to môže byť postačujúce.