summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2012-08-17 14:20:55 +0400
committerAndrew Dolgov <[email protected]>2012-08-17 14:22:33 +0400
commit369dbc19d6ae35c97a2306ae4821c7812e2f24b2 (patch)
treefff54920611300f99e0898874e0de04c99ac5586 /include
parent3d2c9f5adfdc51642143d9fecf31ee353735bb8e (diff)
rework class system to use subdirectories
add placeholder plugin/hook system
Diffstat (limited to 'include')
-rw-r--r--include/functions.php12
-rw-r--r--include/rssfuncs.php5
2 files changed, 15 insertions, 2 deletions
diff --git a/include/functions.php b/include/functions.php
index 702843c16..ac07974e8 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -3,7 +3,10 @@
define('SCHEMA_VERSION', 94);
function __autoload($class) {
- $file = dirname(__FILE__)."/../classes/".strtolower(basename($class)).".php";
+ $class_file = str_replace("_", "/", strtolower(basename($class)));
+
+ $file = dirname(__FILE__)."/../classes/$class_file.php";
+
if (file_exists($file)) {
require $file;
}
@@ -3194,6 +3197,7 @@
}
function format_article($link, $id, $mark_as_read = true, $zoom_mode = false, $owner_uid = false) {
+ global $plugins;
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
@@ -3256,6 +3260,8 @@
$line = db_fetch_assoc($result);
+ $plugins->hook('article_before', $line);
+
if ($line["icon_url"]) {
$feed_icon = "<img src=\"" . $line["icon_url"] . "\">";
} else {
@@ -3359,7 +3365,7 @@
$button_plugins = explode(",", ARTICLE_BUTTON_PLUGINS);
foreach ($button_plugins as $p) {
- $pclass = trim("${p}_button");
+ $pclass = trim("button_${p}");
if (class_exists($pclass)) {
$plugin = new $pclass($link);
@@ -3468,6 +3474,8 @@
$rv['content'] .= "</body></html>";
}
+ $plugins->hook('article_after', $rv);
+
return $rv;
}
diff --git a/include/rssfuncs.php b/include/rssfuncs.php
index 59fa3d547..4ad08df32 100644
--- a/include/rssfuncs.php
+++ b/include/rssfuncs.php
@@ -212,6 +212,8 @@
function update_rss_feed($link, $feed, $ignore_daemon = false, $no_cache = false,
$override_url = false) {
+ global $plugins;
+
require_once "lib/simplepie/simplepie.inc";
require_once "lib/magpierss/rss_fetch.inc";
require_once 'lib/magpierss/rss_utils.inc';
@@ -557,6 +559,9 @@
}
foreach ($iterator as $item) {
+ $hook_params = array("item" => &$item, "feed" => $feed);
+
+ $plugins->hook('rss_update_item', $hook_params);
if ($_REQUEST['xdebug'] == 2) {
print_r($item);