Topic: The Header option from module itself
There is a small change in the core of pdf_report.inc will give us a good way to add template form from the module itself.
from the reporting/includes/pdf_report.inc:
function NewPage()
{
global $installed_extensions, $path_to_root;
if ($this->pageNumber==0)
{
// check if there is pdf header template for this report
// and set if it is found
$tmpl_pdf = find_custom_file("/reporting/forms/".$this->headerTmpl.".pdf");
if ($tmpl_pdf) {
$this->tmplSize = $this->setSourceFile($tmpl_pdf);
} else {
// include reports installed inside extension modules
if (count($installed_extensions) > 0)
{
$extensions = $installed_extensions;
foreach ($extensions as $ext)
if (($ext['active'] && $ext['type'] == 'extension')) {
$tmpl_pdf = find_custom_file($path_to_root.'/'.$ext['path']."/reporting/forms/".$this->headerTmpl.".pdf");
if ($tmpl_pdf) {
$this->tmplSize = $this->setSourceFile($tmpl_pdf);
}
}
}
}
}
$this->pageNumber++;
parent::newPage();
if ($this->tmplSize) {
$this->row = $this->pageHeight - $this->topMargin; // reset row
$id = $this->importPage(min($this->pageNumber, $this->tmplSize));
$this->useTemplate($id);
}
// include related php file if any
$tmpl_php = find_custom_file("/reporting/forms/".$this->headerTmpl.".php");
if ($tmpl_php) {
include($tmpl_php);
} else {
// include reports installed inside extension modules
if (count($installed_extensions) > 0)
{
$extensions = $installed_extensions;
foreach ($extensions as $ext)
if (($ext['active'] && $ext['type'] == 'extension')) {
$tmpl_php = find_custom_file($path_to_root.'/'.$ext['path']."/reporting/forms/".$this->headerTmpl.".php");
if ($tmpl_php) {
$this->tmplSize = $this->setSourceFile($tmpl_php);
}
}
}
}
if (method_exists($this, $this->headerTmpl)) // draw predefined page layout if any
$this->{$this->headerTmpl}();
}
This would help us to hook from the modules template to work on.
HRM CRM POS batch Themes