ttrss/plugins/af_fsckportal/init.php

45 lines
932 B
PHP
Raw Normal View History

2013-10-23 07:53:35 +00:00
<?php
class Af_Fsckportal extends Plugin {
private $host;
function about() {
return array(null,
2013-10-23 07:53:35 +00:00
"Remove feedsportal spamlinks from article content",
"fox");
}
function init($host) {
$this->host = $host;
$host->add_hook($host::HOOK_ARTICLE_FILTER, $this);
}
function hook_article_filter($article) {
$doc = new DOMDocument();
2021-02-22 11:41:09 +00:00
if (@$doc->loadHTML('<?xml encoding="UTF-8">' . $article["content"])) {
2013-10-23 07:53:35 +00:00
$xpath = new DOMXPath($doc);
$entries = $xpath->query('(//img[@src]|//a[@href])');
foreach ($entries as $entry) {
if (preg_match("/feedsportal.com/", $entry->getAttribute("src"))) {
$entry->parentNode->removeChild($entry);
} else if (preg_match("/feedsportal.com/", $entry->getAttribute("href"))) {
$entry->parentNode->removeChild($entry);
}
}
$article["content"] = $doc->saveHTML();
2013-10-23 07:53:35 +00:00
}
return $article;
}
function api_version() {
return 2;
}
}