From 369dbc19d6ae35c97a2306ae4821c7812e2f24b2 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 17 Aug 2012 14:20:55 +0400 Subject: rework class system to use subdirectories add placeholder plugin/hook system --- include/functions.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'include/functions.php') 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 = ""; } 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'] .= ""; } + $plugins->hook('article_after', $rv); + return $rv; } -- cgit v1.2.3-54-g00ecf