Нужна помощь с генерацией pdf

Была необходимость генерации pdf на основе ресурсов при клике «скачать» генерировался pdf
использовал tcpdf
вот сниппет:
<?php
//collect here your output in $output, use $modx->runsnippet or what else for generating your html-output.

$doc['content']='<p>no docid was given to generate pdf-content</p>';
if (isset($_GET['docid'])){
$id=$modx->db->escape($_GET['docid']);
$doc = $modx->getPageInfo($id,1,'content'); 
$tim = $modx->runSnippet('time');
$title = $modx->getPageInfo($id,1,'pagetitle');
}

$output = "<h1><center>".$title['pagetitle']."</center></h1>
" .$tim['time']. "<br />".$doc['content']; 
 
$basePath = $modx->config['base_path'];
$pluginpath = $basePath.'assets/lib/tcpdf/';
 
if ($_GET['contentType']=='pdf'){
include $pluginpath.'examples/myexample.php';
}
else{
    return $output;
}
?>
Код файла:
<?php
//============================================================+
// File name   : example_001.php
// Begin       : 2008-03-04
// Last Update : 2009-03-18
// 
// Description : Example 001 for TCPDF class
//               Default Header and Footer
// 
// Author: Nicola Asuni
// 
// © Copyright:
//               Nicola Asuni
//               Tecnick.com s.r.l.
//               Via Della Pace, 11
//               09044 Quartucciu (CA)
//               ITALY
//               www.tecnick.com
//               info@tecnick.com
//============================================================+
 
/**
 * Creates an example PDF TEST document using TCPDF
 * @package com.tecnick.tcpdf
 * @abstract TCPDF - Example: Default Header and Footer
 * @author Nicola Asuni
 * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com
 * Link http://tcpdf.org
 * @license http://www.gnu.org/copyleft/lesser.html LGPL
 * @since 2008-03-04
 */
//(dirname( __FILE__ )."/../../rennergebnis/includes/getdatas.php");
        require_once('/home/workfor/sq.statusquo.pro/docs/assets/lib/tcpdf/config/lang/eng.php');
require_once('/home/workfor/sq.statusquo.pro/docs/assets/lib/tcpdf/tcpdf.php');
 
// create new PDF document
//$pdf = new BLOCKPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 
 
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 
 
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Национальная юпидическая служба «Статус Кво»');
$pdf->SetTitle('TCPDF Example 001');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
 
// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
 
// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
 
// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
 
 
//set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
 
//set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
 
//set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); 
 
//set some language-dependent strings
$pdf->setLanguageArray($l); 
 
$pdf->SetFont('dejavusans', '', 14, '', true);
 
 
// add a page
$pdf->AddPage();
 
 
$pdf->writeHTML($output);
 
// ---------------------------------------------------------
 
//Close and output PDF document 
$pdf->Output('myexample.pdf', 'I');
if(isset($_GET['savepdf'])){
$pdf->Output($modx->config['base_path']."assets/files/pdfdownloads/".$_GET['savepdf'].".pdf", "F");   
}
 
 
//============================================================+
// END OF FILE                                                 
//============================================================+
?>

Но вот в чем беда у меня в контенте этих страниц договор и реквизиты и некоторые пункты генерируются на основе данных введенных при регистрации с помощью webloginpe. и если просто просматривать страницу то реквизиты появляются, а если сгенрировать pdf то на их месте появляются только код например: [+fullname.user+] и т.д.
Как сделать чтобы при генерации данные сохранялись или может есть какой нибудь плагин который при сохранении ресурса в базу сразу вписывал данные?
Дмитрий
18 ноября 2014, 07:47
modx.pro
1 906
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0