From dcb04e09e090fff233eb7eae20fe1a86151f4073 Mon Sep 17 00:00:00 2001 From: brettp Date: Mon, 26 Apr 2010 20:00:25 +0000 Subject: Plugins are *required* to have a manifest.xml file. git-svn-id: http://code.elgg.org/elgg/trunk@5883 36083f99-b078-4883-b0ff-0f9b5a30f544 --- engine/lib/plugins.php | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'engine/lib') diff --git a/engine/lib/plugins.php b/engine/lib/plugins.php index 64f1deb12..0e62914e2 100644 --- a/engine/lib/plugins.php +++ b/engine/lib/plugins.php @@ -496,7 +496,7 @@ function set_plugin_usersetting($name, $value, $user_guid = 0, $plugin_name = "" function clear_plugin_usersetting($name, $user_guid=0, $plugin_name='') { $plugin_name = sanitise_string($plugin_name); $name = sanitise_string($name); - + if (!$plugin_name) { $plugin_name = get_plugin_name(); } @@ -505,13 +505,13 @@ function clear_plugin_usersetting($name, $user_guid=0, $plugin_name='') { if (!$user) { $user = get_loggedin_user(); } - + if (($user) && ($user instanceof ElggUser)) { $prefix = "plugin:settings:$plugin_name:$name"; - + return remove_private_setting($user->getGUID(), $prefix); } - + return FALSE; } @@ -638,9 +638,13 @@ function get_installed_plugins() { $plugins = get_plugin_list(); foreach($plugins as $mod) { + // require manifest. + if (!$manifest = load_plugin_manifest($mod)) { + continue; + } $installed_plugins[$mod] = array(); $installed_plugins[$mod]['active'] = is_plugin_enabled($mod); - $installed_plugins[$mod]['manifest'] = load_plugin_manifest($mod); + $installed_plugins[$mod]['manifest'] = $manifest; } } -- cgit v1.2.3