Latte šablona do PDF a souboru

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
t0x1c
Člen | 151
+
0
-

Chci se zeptat chtěl bych prvni do šablony poslat svoje data(fakturačni udaje, položky) atd.. A potom vygenerovat PDF a uložit ji do složky aby ji šlo potom čist kdykoliv a kdekoliv. Našel jsem doplňek Eciovni ale v tom jsem nenašel možnost vložit vlastní data a nasledně uložit pdf do souboru. Jak to teda udělám?

Draffix
Člen | 146
+
0
-

Stejně jako plníte šablonu v presenteru, tak naplníte i pdf:

// dodavatel
$supplierBuilder = new ParticipantBuilder('František Vosáhlo', 'Uličná', '11', 'Praha 3 - Žižkov', '13000');
        $supplier = $supplierBuilder->setIn('12345678')->setTin('CZ12345678')->setAccountNumber('123456789 / 1111')->build();

// zákazník
        $customerBuilder = new ParticipantBuilder('Antonie Vosáhlová', 'Cizácká', '3', 'Praha 9 - Prosek', '19000');
        $customer = $customerBuilder->setAccountNumber('123456789 / 1111')->build();

S tím ukládání souboru netuším.

Tomáš Votruba
Moderator | 1114
+
0
-

Pro generování a ukládání PDF je určen doplněk PdfResponse (testováno na Nette 2.0); případně původní verze v addonech

enumag
Člen | 2118
+
0
-

@Schmutzka: Šlo by přidat composer.json kvůli autoloadingu? :-)

t0x1c
Člen | 151
+
0
-

@Schmutzka: Díky to je ono! :)

Tomáš Votruba
Moderator | 1114
+
0
-

@enumag: Pošli pull, jestli můžeš. Ještě jsem to ale netestoval na 2.0.8/2.1-dev, to by chtělo.

castamir
Člen | 629
+
0
-

Možná by to chtělo se zbavit požadovaného contextu a nahodit tam rovnou presenter

Tomáš Votruba
Moderator | 1114
+
0
-

@castamir: Pravda, je to tam.
Na Nette 2.0.8 funkční.

castamir
Člen | 629
+
0
-

Myslel jsem to ještě trošku jinak… (sry za fork místo pull requestu, ale s gitem to zatím moc neumím)

Tomáš Votruba
Moderator | 1114
+
0
-

@castamir: Fork je správný postup. Teď když přejdeš na můj repo, bude tam někde send pull-request.
Tyto metody tam chci nechat pro snadné manipulování a testování. Sic presenter by mohl být volitelný… Pošli ten pull, proberem to tam.

Ondřej Brejla
Člen | 746
+
0
-

Eciovni generuje PDF do souboru v akci actionGenerate(), viz ukázkový presenter. Jestli k tomu použiješ čistě mPDF přístup, nebo nějaký další doplněk je na tobě.

enumag
Člen | 2118
+
0
-

@Schmutzka: Úprava od @castamir je opodstatněná, ty testovací metody co potřebují presenter bys měl mít ve své poděděné PdfResponse. Implementačně by to neměl mít problém, kontroloval jsem zda tomu nevadí nějaký private / final etc. ale jsem přesvědčen že ne.

@castamir: To tlačítko send pull request je myslím spíše u tvého forknutého repozitáře. Více zde.

castamir
Člen | 629
+
0
-

@enumag ten odkaz jsem našel, ale to tlačítko pull request tam nebylo, tak jsem si poradil jinak (editace primo na githubu udělala vše potřebné – vytvořila se nová větev a tu už jsem mohl předhodit jako pull request)

Ještě bych dodal, že ten pull request sjednocuje chování se všemi ostatními xyResponse

Editoval castamir (4. 2. 2013 12:07)

castamir
Člen | 629
+
0
-

UPDATE: pull request neschválen, takže jsem si ponechal forknutou větev viz github.