Modul M4 PDF rozšíření umožňuje nahradit vestavěné generování PDF dokumentů a přidává nové možnosti vytváření dokumentů v administraci prostřednictvím uživatelských šablon. Vše s plnou podporou UTF-8 kódování a s možností použít nelatinská písma.
Modul pracuje ve dvou módech. Oba módy se liší pouze způsobem vyvolání. Používají stejné zdroje dat a mohou používat stejné šablony. V prvním módu je možné PDF dokumenty vytvářet v administraci modulu.
Ve druhém módu se PDF dokument vytvoří jako náhrada v jednom z 8 případů vytváření PDF dokumentů v PrestaShopu™. Tyto možnosti je možné jednotlivě zapnout v konfiguraci modulu.
Způsob aktivace a vytváření PDF dokumentů ukazuje následující schéma. Prvním krokem je získání nebo výběr požadovaných dat. Data se načtou do zvolené Smarty šablony. Šablona data zpracuje a ve formě HTML stránky je předá knihovně mPDF, která vytvoří PDF dokument.
Další informace o použitých knihovnách:
Smarty - http://www.smarty.net/docs.php
mPDF - http://mpdf1.com/manual/
Zdrojů dat je k dispozici 5. Odpovídají přesně volbám v konfiguraci modulu. S těmito daty dokáže modul pracovat a vytvářet z nich výstupy:
Všechny zdroje dat poskytují seznam záznamů. Objednávky s položkami a dobropisy s položkami navíc poskytují související položky. Toho lze využít pro vytváření faktur, dodacích listů a dobropisů.
Šablony jsou Smarty šablony. Musí se jednat o plnohodnotný HTML dokument se značkami <head> a <body>. Šablony jsou umístěny v podadresáři /tpl modulu (/modules/m4pdf/tpl). Součástí modulu jsou Ladící šablona a Testovací šablona, vhodné pro první seznámení s možnostmi šablon.
Šablona může obsahovat 4 základní části. Jednotlivé části jsou zvýrazněny na ukázce jednoduché šablony.
Pro identifikaci šablony a určení, jestli lze šablonu použít pro určitý zdroj dat, musí každá šablona obsahovat komentář s prvky name a data. Prvek name představuje název šablony. Prvek data popisuje zdroj dat, pro který je šablona určena. Platné zdroje dat jsou:
a
Označení šablony s prvky name a data se musí vyskytovat na začátku šablony jako HTML komentář (uvozené <!-- a -->) a nesmí být na více než 5 řádcích.
V ukázce je ve druhé části uvedena funkce Smarty {assign}, která proměnné použité v šabloně přiřazuje hodnotu. Tato část je nepovinná. Ani v případě, že chcete v šabloně použít funkce Smarty, nemusíte je umisťovat v tomto místě. Tuto možnost zmiňujeme, protože umístění konstant nebo jiného kódu v tomto místě je přehledné.
Pro přehledné definování stylu zobrazení je vhodné použít CSS styl. Celý blok se stylem musí být uzavřen do dvojitých značek {literal}<style> a </style>{/literal}. Definice stylu není povinná.
Formát stránky, její orientace a okraje se definují pravidlem @page. Toto i další podporovaná pravidla jsou popsána v manuálu knihovny mPDF na stránce User's Guide >> CSS & Stylesheets >> Supported CSS.
Vlastní obsah šablony je umístěn mezi značkami <body> a </body>. Kromě textu můžete použít tabulky, obrázky, prvky formuláře a obsah formátovat pomocí HTML značek a CSS stylů. Jejich přehled najdete v manuálu knihovny mPDF na stránce User's Guide >> HTML support >> HTML Tags.
Knihovna mPDF umožňuje přidat do výsledného dokumentu prvky, které nelze vytvořit pomocí standardních HTML značek. Používá k tomu vlastní značky. Zde jsou některé z nich:
Všechny značky jsou popsané v manuálu mPDF na stránce Reference >> HTML control tags.
Překlad vícejazyčných textů lze provést pomocí administračních nástrojů PrestaShopu™. V administraci zvolte Nástroje >> Překlady, v bloku Upravit překlady vyberte Překlady modulů a zvolte jazyk pro překlad.
Na další stránce se objeví k překladu všechny moduly PrestaShopu™. Jsou mezi nimi také všechny šablony, stejně jako administrační rozhraní vlastního modulu. Pro snadnou identifikaci šablon je vhodné používat pro všechny šablony jednotný prefix, např. m4. Takto lze měnit všechny texty v šablonách, které používají Smarty syntaxi {l s='text k překladu'}.