implement HOOK_FEED_PARSED, add example plugin (refs #424)
This commit is contained in:
parent
fa6fbd3659
commit
4412b877d0
|
@ -11,6 +11,7 @@ class PluginHost {
|
||||||
const HOOK_PREFS_TAB = 3;
|
const HOOK_PREFS_TAB = 3;
|
||||||
const HOOK_PREFS_SECTION = 4;
|
const HOOK_PREFS_SECTION = 4;
|
||||||
const HOOK_PREFS_TABS = 5;
|
const HOOK_PREFS_TABS = 5;
|
||||||
|
const HOOK_FEED_PARSED = 6;
|
||||||
|
|
||||||
function __construct($link) {
|
function __construct($link) {
|
||||||
$this->link = $link;
|
$this->link = $link;
|
||||||
|
|
|
@ -261,6 +261,9 @@
|
||||||
|
|
||||||
if (!$rss->error()) {
|
if (!$rss->error()) {
|
||||||
|
|
||||||
|
global $pluginhost;
|
||||||
|
$pluginhost->run_hooks($pluginhost::HOOK_FEED_PARSED, "hook_feed_parsed", $rss);
|
||||||
|
|
||||||
if ($debug_enabled) {
|
if ($debug_enabled) {
|
||||||
_debug("update_rss_feed: processing feed data...");
|
_debug("update_rss_feed: processing feed data...");
|
||||||
}
|
}
|
||||||
|
@ -521,7 +524,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: less memory-hungry implementation
|
// TODO: less memory-hungry implementation
|
||||||
global $pluginhost;
|
|
||||||
|
|
||||||
if ($debug_enabled) {
|
if ($debug_enabled) {
|
||||||
_debug("update_rss_feed: applying plugin filters..");
|
_debug("update_rss_feed: applying plugin filters..");
|
||||||
|
@ -534,6 +536,7 @@
|
||||||
"tags" => $entry_tags,
|
"tags" => $entry_tags,
|
||||||
"author" => $entry_author);
|
"author" => $entry_author);
|
||||||
|
|
||||||
|
global $pluginhost;
|
||||||
foreach ($pluginhost->get_hooks($pluginhost::HOOK_ARTICLE_FILTER) as $plugin) {
|
foreach ($pluginhost->get_hooks($pluginhost::HOOK_ARTICLE_FILTER) as $plugin) {
|
||||||
$article = $plugin->hook_article_filter($article);
|
$article = $plugin->hook_article_filter($article);
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?php
|
||||||
|
class Example_Feed extends Plugin {
|
||||||
|
|
||||||
|
// Demonstrates how to query data from the parsed feed object (SimplePie)
|
||||||
|
// don't enable unless debugging feed through f D hotkey or manually.
|
||||||
|
|
||||||
|
private $link;
|
||||||
|
private $host;
|
||||||
|
|
||||||
|
function __construct($host) {
|
||||||
|
$this->link = $host->get_link();
|
||||||
|
$this->host = $host;
|
||||||
|
|
||||||
|
$host->add_hook($host::HOOK_FEED_PARSED, $this);
|
||||||
|
}
|
||||||
|
|
||||||
|
function hook_feed_parsed($feed) {
|
||||||
|
_debug("I'm a little feed short and stout, here's my title: " . $feed->get_title());
|
||||||
|
_debug("... here's my link element: " . $feed->get_link());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
Loading…
Reference in New Issue