mirror of
https://github.com/silverstripe/silverstripe-comments
synced 2024-10-22 11:05:49 +02:00
FIX backport fix for lack of HTMLPurifier breakage
If HTMLPurifier is missing, a fatal error is giving for a missing class. This results in comments essentially not working. The fix is simple and has already been done in 2.0 - as the package is optional we can simply check if the classname exists before trying to use it, or do nothing.
This commit is contained in:
parent
8e79a1368e
commit
dc6ea3934d
@ -649,8 +649,10 @@ class Comment extends DataObject
|
|||||||
*/
|
*/
|
||||||
public function purifyHtml($dirtyHtml)
|
public function purifyHtml($dirtyHtml)
|
||||||
{
|
{
|
||||||
$purifier = $this->getHtmlPurifierService();
|
if ($service = $this->getHtmlPurifierService()) {
|
||||||
return $purifier->purify($dirtyHtml);
|
return $service->purify($dirtyHtml);
|
||||||
|
}
|
||||||
|
return $dirtyHtml;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -658,6 +660,10 @@ class Comment extends DataObject
|
|||||||
*/
|
*/
|
||||||
public function getHtmlPurifierService()
|
public function getHtmlPurifierService()
|
||||||
{
|
{
|
||||||
|
if (!class_exists('HTMLPurifier_Config')) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
$config = HTMLPurifier_Config::createDefault();
|
$config = HTMLPurifier_Config::createDefault();
|
||||||
$allowedElements = $this->getOption('html_allowed_elements');
|
$allowedElements = $this->getOption('html_allowed_elements');
|
||||||
$config->set('HTML.AllowedElements', $allowedElements);
|
$config->set('HTML.AllowedElements', $allowedElements);
|
||||||
|
Loading…
Reference in New Issue
Block a user