summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend.php3
-rw-r--r--classes/api.php10
-rw-r--r--classes/feeds.php20
-rw-r--r--classes/handler/public.php3
-rw-r--r--classes/pluginhandler.php4
-rw-r--r--classes/pluginhost.php16
-rw-r--r--classes/pref/feeds.php14
-rw-r--r--classes/pref/filters.php3
-rw-r--r--classes/pref/labels.php3
-rw-r--r--classes/pref/prefs.php29
-rw-r--r--classes/pref/system.php3
-rw-r--r--classes/pref/users.php3
-rw-r--r--include/functions.php65
-rw-r--r--include/rssfuncs.php12
-rw-r--r--index.php25
-rw-r--r--plugins/instances/init.php3
-rw-r--r--prefs.php6
-rw-r--r--public.php3
-rwxr-xr-xupdate.php12
19 files changed, 89 insertions, 148 deletions
diff --git a/backend.php b/backend.php
index d3d8622d9..c69d6d98b 100644
--- a/backend.php
+++ b/backend.php
@@ -113,8 +113,7 @@
$op = str_replace("-", "_", $op);
- global $pluginhost;
- $override = $pluginhost->lookup_handler($op, $method);
+ $override = PluginHost::getInstance()->lookup_handler($op, $method);
if (class_exists($op) || $override) {
diff --git a/classes/api.php b/classes/api.php
index 945496bcf..9e99ed007 100644
--- a/classes/api.php
+++ b/classes/api.php
@@ -341,8 +341,7 @@ class API extends Handler {
"score" => (int)$line["score"]
);
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_RENDER_ARTICLE_API) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_RENDER_ARTICLE_API) as $p) {
$article = $p->hook_render_article_api(array("article" => $article));
}
@@ -466,9 +465,7 @@ class API extends Handler {
}
function index($method) {
- global $pluginhost;
-
- $plugin = $pluginhost->get_api_method(strtolower($method));
+ $plugin = PluginHost::getInstance()->get_api_method(strtolower($method));
if ($plugin && method_exists($plugin, $method)) {
$reply = $plugin->$method();
@@ -697,8 +694,7 @@ class API extends Handler {
$headline_row["author"] = $line["author"];
$headline_row["score"] = (int)$line["score"];
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_RENDER_ARTICLE_API) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_RENDER_ARTICLE_API) as $p) {
$headline_row = $p->hook_render_article_api(array("headline" => $headline_row));
}
diff --git a/classes/feeds.php b/classes/feeds.php
index 969c25db1..bef759d36 100644
--- a/classes/feeds.php
+++ b/classes/feeds.php
@@ -108,14 +108,12 @@ class Feeds extends Handler_Protected {
}
- global $pluginhost;
-
- if ($pluginhost->get_plugin("mail")) {
+ if (PluginHost::getInstance()->get_plugin("mail")) {
$reply .= "<option value=\"emailArticle(false)\">".__('Forward by email').
"</option>";
}
- if ($pluginhost->get_plugin("mailto")) {
+ if (PluginHost::getInstance()->get_plugin("mailto")) {
$reply .= "<option value=\"mailtoArticle(false)\">".__('Forward by email').
"</option>";
}
@@ -132,7 +130,7 @@ class Feeds extends Handler_Protected {
//$reply .= "</h2";
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_HEADLINE_TOOLBAR_BUTTON) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_HEADLINE_TOOLBAR_BUTTON) as $p) {
echo $p->hook_headline_toolbar_button($feed_id, $is_cat);
}
@@ -214,9 +212,7 @@ class Feeds extends Handler_Protected {
// error_log("search_mode: " . $search_mode);
if (!$cat_view && is_numeric($feed) && $feed < PLUGIN_FEED_BASE_INDEX && $feed > LABEL_BASE_INDEX) {
- global $pluginhost;
-
- $handler = $pluginhost->get_feed_handler(
+ $handler = PluginHost::getInstance()->get_feed_handler(
PluginHost::feed_to_pfeed_id($feed));
// function queryFeedHeadlines($feed, $limit, $view_mode, $cat_view, $search, $search_mode, $override_order = false, $offset = 0, $owner_uid = 0, $filter = false, $since_id = 0, $include_children = false, $ignore_vfeed_group = false) {
@@ -273,8 +269,6 @@ class Feeds extends Handler_Protected {
}
} */
- global $pluginhost;
-
if ($this->dbh->num_rows($result) > 0) {
$lnum = $offset;
@@ -521,7 +515,7 @@ class Feeds extends Handler_Protected {
$line["content"] = sanitize($line["content_preview"],
sql_bool_to_bool($line['hide_images']), false, $entry_site_url);
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_RENDER_ARTICLE_CDM) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_RENDER_ARTICLE_CDM) as $p) {
$line = $p->hook_render_article_cdm($line);
}
@@ -679,7 +673,7 @@ class Feeds extends Handler_Protected {
$reply['content'] .= "<div class=\"cdmFooter\">";
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_ARTICLE_LEFT_BUTTON) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_ARTICLE_LEFT_BUTTON) as $p) {
$reply['content'] .= $p->hook_article_left_button($line);
}
@@ -713,7 +707,7 @@ class Feeds extends Handler_Protected {
// $reply['content'] .= "$marked_pic";
// $reply['content'] .= "$published_pic";
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_ARTICLE_BUTTON) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_ARTICLE_BUTTON) as $p) {
$reply['content'] .= $p->hook_article_button($line);
}
diff --git a/classes/handler/public.php b/classes/handler/public.php
index ca5952bca..79ed9d0ae 100644
--- a/classes/handler/public.php
+++ b/classes/handler/public.php
@@ -377,8 +377,7 @@ class Handler_Public extends Handler {
cleanup_tags(14, 50000);
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_UPDATE_TASK, "hook_update_task", $op);
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_UPDATE_TASK, "hook_update_task", $op);
}
diff --git a/classes/pluginhandler.php b/classes/pluginhandler.php
index eb859ab32..690305165 100644
--- a/classes/pluginhandler.php
+++ b/classes/pluginhandler.php
@@ -5,9 +5,7 @@ class PluginHandler extends Handler_Protected {
}
function catchall($method) {
- global $pluginhost;
-
- $plugin = $pluginhost->get_plugin($_REQUEST["plugin"]);
+ $plugin = PluginHost::getInstance()->get_plugin($_REQUEST["plugin"]);
if ($plugin) {
if (method_exists($plugin, $method)) {
diff --git a/classes/pluginhost.php b/classes/pluginhost.php
index c10f789b5..1c490b1ef 100644
--- a/classes/pluginhost.php
+++ b/classes/pluginhost.php
@@ -10,6 +10,7 @@ class PluginHost {
private $api_methods = array();
private $owner_uid;
private $debug;
+ private static $instance;
const HOOK_ARTICLE_BUTTON = 1;
const HOOK_ARTICLE_FILTER = 2;
@@ -35,13 +36,24 @@ class PluginHost {
const KIND_SYSTEM = 2;
const KIND_USER = 3;
- function __construct($dbh) {
- $this->dbh = $dbh;
+ function __construct($ignored = false) {
+ $this->dbh = Db::get();
$this->storage = $_SESSION["plugin_storage"];
if (!$this->storage) $this->storage = array();
}
+ private function __clone() {
+ //
+ }
+
+ public static function getInstance() {
+ if (self::$instance == null)
+ self::$instance = new self();
+
+ return self::$instance;
+ }
+
private function register_plugin($name, $plugin) {
//array_push($this->plugins, $plugin);
$this->plugins[$name] = $plugin;
diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php
index 054ea4e8c..2f5a0e499 100644
--- a/classes/pref/feeds.php
+++ b/classes/pref/feeds.php
@@ -124,9 +124,7 @@ class Pref_Feeds extends Handler_Protected {
/* Plugin feeds for -1 */
- global $pluginhost;
-
- $feeds = $pluginhost->get_feeds(-1);
+ $feeds = PluginHost::getInstance()->get_feeds(-1);
if ($feeds) {
foreach ($feeds as $feed) {
@@ -1456,8 +1454,7 @@ class Pref_Feeds extends Handler_Protected {
print "<button dojoType=\"dijit.form.Button\" onclick=\"return displayDlg('".__("Public OPML URL")."','pubOPMLUrl')\">".
__('Display published OPML URL')."</button> ";
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB_SECTION,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefFeedsOPML");
print "</div>"; # pane
@@ -1503,15 +1500,12 @@ class Pref_Feeds extends Handler_Protected {
print "<button dojoType=\"dijit.form.Button\" onclick=\"return clearArticleAccessKeys()\">".
__('Unshare all articles')."</button> ";
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB_SECTION,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefFeedsPublishedGenerated");
print "</div>"; #pane
- global $pluginhost;
-
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefFeeds");
print "</div>"; #container
diff --git a/classes/pref/filters.php b/classes/pref/filters.php
index ec7fd0d51..4dbee5906 100644
--- a/classes/pref/filters.php
+++ b/classes/pref/filters.php
@@ -706,8 +706,7 @@ class Pref_Filters extends Handler_Protected {
print "</div>"; #pane
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefFilters");
print "</div>"; #container
diff --git a/classes/pref/labels.php b/classes/pref/labels.php
index a928dd017..2ad152c2d 100644
--- a/classes/pref/labels.php
+++ b/classes/pref/labels.php
@@ -319,8 +319,7 @@ class Pref_Labels extends Handler_Protected {
print "</div>"; #pane
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefLabels");
print "</div>"; #container
diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php
index d8b8ecc75..b2e7edf03 100644
--- a/classes/pref/prefs.php
+++ b/classes/pref/prefs.php
@@ -79,8 +79,7 @@ class Pref_Prefs extends Handler_Protected {
return;
}
- global $pluginhost;
- $authenticator = $pluginhost->get_plugin($_SESSION["auth_module"]);
+ $authenticator = PluginHost::getInstance()->get_plugin($_SESSION["auth_module"]);
if (method_exists($authenticator, "change_password")) {
print $authenticator->change_password($_SESSION["uid"], $old_pw, $new_pw);
@@ -255,10 +254,7 @@ class Pref_Prefs extends Handler_Protected {
print "</form>";
if ($_SESSION["auth_module"]) {
- global $pluginhost;
-
- $authenticator = $pluginhost->get_plugin($_SESSION["auth_module"]);
-
+ $authenticator = PluginHost::getInstance()->get_plugin($_SESSION["auth_module"]);
} else {
$authenticator = false;
}
@@ -436,8 +432,7 @@ class Pref_Prefs extends Handler_Protected {
}
}
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB_SECTION,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefPrefsAuth");
print "</div>"; #pane
@@ -675,8 +670,7 @@ class Pref_Prefs extends Handler_Protected {
print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"boolean_prefs\" value=\"$listed_boolean_prefs\">";
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB_SECTION,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefPrefsPrefsInside");
print '</div>'; # inside pane
@@ -712,8 +706,7 @@ class Pref_Prefs extends Handler_Protected {
<label for='prefs_show_advanced'>" .
__("Show additional preferences") . "</label>"; */
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB_SECTION,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION,
"hook_prefs_tab_section", "prefPrefsPrefsOutside");
print "</form>";
@@ -877,8 +870,7 @@ class Pref_Prefs extends Handler_Protected {
print "</div>"; #pane
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefPrefs");
print "</div>"; #container
@@ -918,8 +910,7 @@ class Pref_Prefs extends Handler_Protected {
$password = $_REQUEST["password"];
$otp = $_REQUEST["otp"];
- global $pluginhost;
- $authenticator = $pluginhost->get_plugin($_SESSION["auth_module"]);
+ $authenticator = PluginHost::getInstance()->get_plugin($_SESSION["auth_module"]);
if ($authenticator->check_password($_SESSION["uid"], $password)) {
@@ -951,8 +942,7 @@ class Pref_Prefs extends Handler_Protected {
function otpdisable() {
$password = $this->dbh->escape_string($_REQUEST["password"]);
- global $pluginhost;
- $authenticator = $pluginhost->get_plugin($_SESSION["auth_module"]);
+ $authenticator = PluginHost::getInstance()->get_plugin($_SESSION["auth_module"]);
if ($authenticator->check_password($_SESSION["uid"], $password)) {
@@ -978,8 +968,7 @@ class Pref_Prefs extends Handler_Protected {
function clearplugindata() {
$name = $this->dbh->escape_string($_REQUEST["name"]);
- global $pluginhost;
- $pluginhost->clear_data($pluginhost->get_plugin($name));
+ PluginHost::getInstance()->clear_data(PluginHost::getInstance()->get_plugin($name));
}
function customizeCSS() {
diff --git a/classes/pref/system.php b/classes/pref/system.php
index 3d82b8fff..725c337dc 100644
--- a/classes/pref/system.php
+++ b/classes/pref/system.php
@@ -66,8 +66,7 @@ class Pref_System extends Handler_Protected {
print "</div>";
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefSystem");
print "</div>"; #container
diff --git a/classes/pref/users.php b/classes/pref/users.php
index d483c771b..4b7d2d69a 100644
--- a/classes/pref/users.php
+++ b/classes/pref/users.php
@@ -453,8 +453,7 @@ class Pref_Users extends Handler_Protected {
print "</div>"; #pane
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefUsers");
print "</div>"; #container
diff --git a/include/functions.php b/include/functions.php
index 3c8e9d62c..9f890eba7 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -9,7 +9,6 @@
$fetch_last_error_code = false;
$fetch_last_content_type = false;
$fetch_curl_used = false;
- $pluginhost = false;
mb_internal_encoding("UTF-8");
date_default_timezone_set('UTC');
@@ -622,8 +621,7 @@
if (!SINGLE_USER_MODE) {
$user_id = false;
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_AUTH_USER) as $plugin) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_AUTH_USER) as $plugin) {
$user_id = (int) $plugin->authenticate($login, $password);
@@ -734,11 +732,10 @@
if ($owner_uid) {
$plugins = get_pref("_ENABLED_PLUGINS", $owner_uid);
- global $pluginhost;
- $pluginhost->load($plugins, $pluginhost::KIND_USER, $owner_uid);
+ PluginHost::getInstance()->load($plugins, PluginHost::KIND_USER, $owner_uid);
if (get_schema_version() > 100) {
- $pluginhost->load_data();
+ PluginHost::getInstance()->load_data();
}
}
}
@@ -1443,18 +1440,13 @@
array_push($ret_arr, $cv);
}
- global $pluginhost;
-
- if ($pluginhost) {
- $feeds = $pluginhost->get_feeds(-1);
-
- if (is_array($feeds)) {
- foreach ($feeds as $feed) {
- $cv = array("id" => PluginHost::pfeed_to_feed_id($feed['id']),
- "counter" => $feed['sender']->get_unread($feed['id']));
+ $feeds = PluginHost::getInstance()->get_feeds(-1);
+ if (is_array($feeds)) {
+ foreach ($feeds as $feed) {
+ $cv = array("id" => PluginHost::pfeed_to_feed_id($feed['id']),
+ "counter" => $feed['sender']->get_unread($feed['id']));
array_push($ret_arr, $cv);
- }
}
}
@@ -1982,8 +1974,7 @@
"help_dialog" => __("Show help dialog"))
);
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_HOTKEY_INFO) as $plugin) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_HOTKEY_INFO) as $plugin) {
$hotkeys = $plugin->hook_hotkey_info($hotkeys);
}
@@ -2059,8 +2050,7 @@
$hotkeys["^(40)|Ctrl-down"] = "next_article_noscroll";
}
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_HOTKEY_MAP) as $plugin) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_HOTKEY_MAP) as $plugin) {
$hotkeys = $plugin->hook_hotkey_map($hotkeys);
}
@@ -2753,18 +2743,14 @@
$disallowed_attributes = array('id', 'style', 'class');
- global $pluginhost;
-
- if (isset($pluginhost)) {
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_SANITIZE) as $plugin) {
- $retval = $plugin->hook_sanitize($doc, $site_url, $allowed_elements, $disallowed_attributes);
- if (is_array($retval)) {
- $doc = $retval[0];
- $allowed_elements = $retval[1];
- $disallowed_attributes = $retval[2];
- } else {
- $doc = $retval;
- }
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_SANITIZE) as $plugin) {
+ $retval = $plugin->hook_sanitize($doc, $site_url, $allowed_elements, $disallowed_attributes);
+ if (is_array($retval)) {
+ $doc = $retval[0];
+ $allowed_elements = $retval[1];
+ $disallowed_attributes = $retval[2];
+ } else {
+ $doc = $retval;
}
}
@@ -3065,9 +3051,7 @@
$line["content"] = sanitize($line["content"], false, $owner_uid, $line["site_url"]);
- global $pluginhost;
-
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_RENDER_ARTICLE) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_RENDER_ARTICLE) as $p) {
$line = $p->hook_render_article($line);
}
@@ -3142,8 +3126,7 @@
id=\"ATSTRTIP-$id\" connectId=\"ATSTR-$id\"
position=\"below\">$tags_str_full</div>";
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_ARTICLE_BUTTON) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_ARTICLE_BUTTON) as $p) {
$rv['content'] .= $p->hook_article_button($line);
}
@@ -3154,8 +3137,7 @@
$rv['content'] .= "</div>";
$rv['content'] .= "<div clear='both'>";
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_ARTICLE_LEFT_BUTTON) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_ARTICLE_LEFT_BUTTON) as $p) {
$rv['content'] .= $p->hook_article_left_button($line);
}
@@ -3361,10 +3343,7 @@
}
function init_plugins() {
- global $pluginhost;
-
- $pluginhost = new PluginHost(Db::get());
- $pluginhost->load(PLUGINS, $pluginhost::KIND_ALL);
+ PluginHost::getInstance()->load(PLUGINS, PluginHost::KIND_ALL);
return true;
}
diff --git a/include/rssfuncs.php b/include/rssfuncs.php
index b2d7e0c59..9c80a72d6 100644
--- a/include/rssfuncs.php
+++ b/include/rssfuncs.php
@@ -343,15 +343,15 @@
}
}
- $pluginhost = new PluginHost(Db::get());
+ $pluginhost = new PluginHost();
$pluginhost->set_debug($debug_enabled);
$user_plugins = get_pref("_ENABLED_PLUGINS", $owner_uid);
- $pluginhost->load(PLUGINS, $pluginhost::KIND_ALL);
- $pluginhost->load($user_plugins, $pluginhost::KIND_USER, $owner_uid);
+ $pluginhost->load(PLUGINS, PluginHost::KIND_ALL);
+ $pluginhost->load($user_plugins, PluginHost::KIND_USER, $owner_uid);
$pluginhost->load_data();
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_FEED_FETCHED) as $plugin) {
+ foreach ($pluginhost->get_hooks(PluginHost::HOOK_FEED_FETCHED) as $plugin) {
$feed_data = $plugin->hook_feed_fetched($feed_data);
}
@@ -388,7 +388,7 @@
}
// We use local pluginhost here because we need to load different per-user feed plugins
- $pluginhost->run_hooks($pluginhost::HOOK_FEED_PARSED, "hook_feed_parsed", $rss);
+ $pluginhost->run_hooks(PluginHost::HOOK_FEED_PARSED, "hook_feed_parsed", $rss);
if ($debug_enabled) {
_debug("update_rss_feed: processing feed data...");
@@ -673,7 +673,7 @@
"author" => $entry_author,
"stored" => $stored_article);
- 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);
}
diff --git a/index.php b/index.php
index d8b584071..bf78be1f3 100644
--- a/index.php
+++ b/index.php
@@ -32,16 +32,14 @@
if (!init_plugins()) return;
- global $pluginhost;
-
if (!$_REQUEST['mobile']) {
- if ($mobile->isTablet() && $pluginhost->get_plugin("digest")) {
+ if ($mobile->isTablet() && PluginHost::getInstance()->get_plugin("digest")) {
header('Location: backend.php?op=digest');
exit;
- } else if ($mobile->isMobile() && $pluginhost->get_plugin("mobile")) {
+ } else if ($mobile->isMobile() && PluginHost::getInstance()->get_plugin("mobile")) {
header('Location: backend.php?op=mobile');
exit;
- } else if ($mobile->isMobile() && $pluginhost->get_plugin("digest")) {
+ } else if ($mobile->isMobile() && PluginHost::getInstance()->get_plugin("digest")) {
header('Location: backend.php?op=digest');
exit;
}
@@ -74,7 +72,7 @@
<style type="text/css">
<?php
- foreach ($pluginhost->get_plugins() as $n => $p) {
+ foreach (PluginHost::getInstance()->get_plugins() as $n => $p) {
if (method_exists($p, "get_css")) {
echo $p->get_css();
}
@@ -104,9 +102,7 @@
print get_minified_js(array("tt-rss",
"functions", "feedlist", "viewfeed", "FeedTree"));
- global $pluginhost;
-
- foreach ($pluginhost->get_plugins() as $n => $p) {
+ foreach (PluginHost::getInstance()->get_plugins() as $n => $p) {
if (method_exists($p, "get_js")) {
echo JShrink\Minifier::minify($p->get_js());
}
@@ -205,8 +201,7 @@
<div class="actionChooser">
<?php
- global $pluginhost;
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_TOOLBAR_BUTTON) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_TOOLBAR_BUTTON) as $p) {
echo $p->hook_toolbar_button();
}
?>
@@ -238,18 +233,14 @@
<div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcCatchupAll')"><?php echo __('Mark as read') ?></div>
<div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcShowOnlyUnread')"><?php echo __('(Un)hide read feeds') ?></div>
<div dojoType="dijit.MenuItem" disabled="1"><?php echo __('Other actions:') ?></div>
- <!-- <?php if ($pluginhost->get_plugin("digest")) { ?>
- <div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcDigest')"><?php echo __('Switch to digest...') ?></div>
- <?php } ?> -->
- <!-- <div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcTagCloud')"><?php echo __('Show tag cloud...') ?></div> -->
- <div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcToggleWidescreen')"><?php echo __('Toggle widescreen mode') ?></div>
+ <div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcToggleWidescreen')"><?php echo __('Toggle widescreen mode') ?></div>
<div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcTagSelect')"><?php echo __('Select by tags...') ?></div>
<!-- <div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcAddLabel')"><?php echo __('Create label...') ?></div>
<div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcAddFilter')"><?php echo __('Create filter...') ?></div> -->
<div dojoType="dijit.MenuItem" onclick="quickMenuGo('qmcHKhelp')"><?php echo __('Keyboard shortcuts help') ?></div>
<?php
- foreach ($pluginhost->get_hooks($pluginhost::HOOK_ACTION_ITEM) as $p) {
+ foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_ACTION_ITEM) as $p) {
echo $p->hook_action_item();
}
?>
diff --git a/plugins/instances/init.php b/plugins/instances/init.php
index a87684b56..d59e17ffd 100644
--- a/plugins/instances/init.php
+++ b/plugins/instances/init.php
@@ -351,8 +351,7 @@ class Instances extends Plugin implements IHandler {
print "</div>"; #pane
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB,
"hook_prefs_tab", "prefInstances");
print "</div>"; #container
diff --git a/prefs.php b/prefs.php
index 826728315..9bf610a53 100644
--- a/prefs.php
+++ b/prefs.php
@@ -66,9 +66,7 @@
<?php
require 'lib/jshrink/Minifier.php';
- global $pluginhost;
-
- foreach ($pluginhost->get_plugins() as $n => $p) {
+ foreach (PluginHost::getInstance()->get_plugins() as $n => $p) {
if (method_exists($p, "get_prefs_js")) {
echo JShrink\Minifier::minify($p->get_prefs_js());
}
@@ -134,7 +132,7 @@
title="<?php echo __('System') ?>"></div>
<?php } ?>
<?php
- $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TABS,
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TABS,
"hook_prefs_tabs", false);
?>
</div>
diff --git a/public.php b/public.php
index 2f5081957..f92d252e2 100644
--- a/public.php
+++ b/public.php
@@ -37,8 +37,7 @@
$method = $_REQUEST["op"];
- global $pluginhost;
- $override = $pluginhost->lookup_handler("public", $method);
+ $override = PluginHost::getInstance()->lookup_handler("public", $method);
if ($override) {
$handler = $override;
diff --git a/update.php b/update.php
index be7314175..d8ea52361 100755
--- a/update.php
+++ b/update.php
@@ -36,7 +36,7 @@
"list-plugins",
"help");
- foreach ($pluginhost->get_commands() as $command => $data) {
+ foreach (PluginHost::getInstance()->get_commands() as $command => $data) {
array_push($longopts, $command . $data["suffix"]);
}
@@ -79,7 +79,7 @@
print " --help - show this help\n";
print "Plugin options:\n";
- foreach ($pluginhost->get_commands() as $command => $data) {
+ foreach (PluginHost::getInstance()->get_commands() as $command => $data) {
$args = $data['arghelp'];
printf(" --%-19s - %s\n", "$command $args", $data["description"]);
}
@@ -161,8 +161,7 @@
$rc = cleanup_tags( 14, 50000);
_debug("Cleaned $rc cached tags.");
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_UPDATE_TASK, "hook_update_task", $op);
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_UPDATE_TASK, "hook_update_task", $op);
}
if (isset($options["feedbrowser"])) {
@@ -200,8 +199,7 @@
_debug("Cleaned $rc cached tags.");
- global $pluginhost;
- $pluginhost->run_hooks($pluginhost::HOOK_UPDATE_TASK, "hook_update_task", $op);
+ PluginHost::getInstance()->run_hooks(PluginHost::HOOK_UPDATE_TASK, "hook_update_task", $op);
}
}
@@ -368,7 +366,7 @@
}
- $pluginhost->run_commands($options);
+ PluginHost::getInstance()->run_commands($options);
if ($lock_handle != false) {
fclose($lock_handle);