sanitizes siteTilte before saving pdf
This commit is contained in:
parent
7ce33f02ff
commit
8aed07719e
|
@ -76,5 +76,9 @@ class TechDocumentBlockForm extends Form
|
||||||
'rows' => '10',
|
'rows' => '10',
|
||||||
],
|
],
|
||||||
]);
|
]);
|
||||||
|
$this->add([
|
||||||
|
'name' => 'o:block[__blockIndex__][o:data][document_name]',
|
||||||
|
'type' => Element\Hidden::class,
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,6 +66,7 @@ class TechDocument extends AbstractBlockLayout
|
||||||
{
|
{
|
||||||
$data = $block->getData();
|
$data = $block->getData();
|
||||||
$site_title = $block->getPage()->getSite()->getTitle();
|
$site_title = $block->getPage()->getSite()->getTitle();
|
||||||
|
//$file_name = preg_replace( '/[^a-z0-9]+/', '-', strtolower( $site_title ) );
|
||||||
$site_url = null;
|
$site_url = null;
|
||||||
|
|
||||||
$parsedown = new Parsedown();
|
$parsedown = new Parsedown();
|
||||||
|
@ -86,6 +87,7 @@ class TechDocument extends AbstractBlockLayout
|
||||||
$text .= "\n\n### Long-term Care: (in storage and on display)\n";
|
$text .= "\n\n### Long-term Care: (in storage and on display)\n";
|
||||||
$text .= $data['longtermcare'];
|
$text .= $data['longtermcare'];
|
||||||
|
|
||||||
|
$document_name = $data['document_name'];
|
||||||
$html = $parsedown->setBreaksEnabled(true)->text($text);
|
$html = $parsedown->setBreaksEnabled(true)->text($text);
|
||||||
$mpdf = new \Mpdf\Mpdf();
|
$mpdf = new \Mpdf\Mpdf();
|
||||||
$mpdf->SetHTMLFooter('
|
$mpdf->SetHTMLFooter('
|
||||||
|
@ -100,7 +102,7 @@ class TechDocument extends AbstractBlockLayout
|
||||||
</tr>
|
</tr>
|
||||||
</table>');
|
</table>');
|
||||||
$mpdf->WriteHTML($html);
|
$mpdf->WriteHTML($html);
|
||||||
$mpdf->Output($this->storage_dir.'/docs/'.$site_title.'.pdf', \Mpdf\Output\Destination::FILE);
|
$mpdf->Output($this->storage_dir.'/docs/'.$document_name, \Mpdf\Output\Destination::FILE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function form(PhpRenderer $view,
|
public function form(PhpRenderer $view,
|
||||||
|
@ -109,6 +111,8 @@ class TechDocument extends AbstractBlockLayout
|
||||||
SitePageBlockRepresentation $block = null
|
SitePageBlockRepresentation $block = null
|
||||||
) {
|
) {
|
||||||
$form = $this->formElementManager->get(TechDocumentBlockForm::class);
|
$form = $this->formElementManager->get(TechDocumentBlockForm::class);
|
||||||
|
$site_title = $view->site->title();
|
||||||
|
$file_name = preg_replace( '/[^a-z0-9]+/', '-', strtolower($site_title) ).'.pdf';
|
||||||
$data = $block
|
$data = $block
|
||||||
? $block->data() + $this->defaultSettings
|
? $block->data() + $this->defaultSettings
|
||||||
: $this->defaultSettings;
|
: $this->defaultSettings;
|
||||||
|
@ -119,6 +123,7 @@ class TechDocument extends AbstractBlockLayout
|
||||||
'o:block[__blockIndex__][o:data][installation]' => $data['installation'],
|
'o:block[__blockIndex__][o:data][installation]' => $data['installation'],
|
||||||
'o:block[__blockIndex__][o:data][shipping]' => $data['shipping'],
|
'o:block[__blockIndex__][o:data][shipping]' => $data['shipping'],
|
||||||
'o:block[__blockIndex__][o:data][longtermcare]' => $data['longtermcare'],
|
'o:block[__blockIndex__][o:data][longtermcare]' => $data['longtermcare'],
|
||||||
|
'o:block[__blockIndex__][o:data][document_name]' => $file_name,
|
||||||
]);
|
]);
|
||||||
$form->prepare();
|
$form->prepare();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue