]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Fixes #2821. Plugins that are active and cannot be started emit an admin notice.
authorBrett Profitt <brett.profitt@gmail.com>
Sun, 30 Oct 2011 19:00:12 +0000 (12:00 -0700)
committerBrett Profitt <brett.profitt@gmail.com>
Sun, 30 Oct 2011 19:00:12 +0000 (12:00 -0700)
engine/lib/plugins.php
languages/en.php
views/default/admin/plugins.php

index 86070a2aac6a9de8fe42de6da128292f3ed8d802..fac52b152d91d410f4eb63526efe1bc6f34cf1ee 100644 (file)
@@ -324,7 +324,7 @@ function elgg_load_plugins() {
                                $plugin->deactivate();
                                $msg = elgg_echo('PluginException:CannotStart',
                                                                array($plugin->getID(), $plugin->guid, $e->getMessage()));
-                               register_error($msg);
+                               elgg_add_admin_notice('cannot_start' . $plugin->getID(), $msg);
                                $return = false;
 
                                continue;
index 5af00581455413e500a497ea3819180f1b0e7ebf..6aa292e5a4a09960edd4b66d360b45b358f5dd56 100644 (file)
@@ -63,7 +63,7 @@ $english = array(
        'InvalidClassException:NotValidElggStar' => "GUID:%d is not a valid %s",
 
        'PluginException:MisconfiguredPlugin' => "%s (guid: %s) is a misconfigured plugin. It has been disabled. Please search the Elgg wiki for possible causes (http://docs.elgg.org/wiki/).",
-       'PluginException:CannotStart' => '%s (guid: %s) cannot start.  Reason: %s',
+       'PluginException:CannotStart' => '%s (guid: %s) cannot start and has been deactivated.  Reason: %s',
        'PluginException:InvalidID' => "%s is an invalid plugin ID.",
        'PluginException:InvalidPath' => "%s is an invalid plugin path.",
        'PluginException:InvalidManifest' => 'Invalid manifest file for plugin %s',
@@ -79,9 +79,9 @@ $english = array(
        'ElggPluginPackage:InvalidPlugin:InvalidProvides' => 'Invalid provides type "%s"',
        'ElggPluginPackage:InvalidPlugin:CircularDep' => 'Invalid %s dependency "%s" in plugin %s.  Plugins cannot conflict with or require something they provide!',
 
-       'ElggPlugin:Exception:CannotIncludeFile' => 'Cannot include %s for plugin %s (guid: %s) at %s.  Check permissions!',
-       'ElggPlugin:Exception:CannotRegisterViews' => 'Cannot open views dir for plugin %s (guid: %s) at %s.  Check permissions!',
-       'ElggPlugin:Exception:CannotRegisterLanguages' => 'Cannot register languages for plugin %s (guid: %s) at %s.  Check permissions!',
+       'ElggPlugin:Exception:CannotIncludeFile' => 'Cannot include %s for plugin %s (guid: %s) at %s.',
+       'ElggPlugin:Exception:CannotRegisterViews' => 'Cannot open views dir for plugin %s (guid: %s) at %s.',
+       'ElggPlugin:Exception:CannotRegisterLanguages' => 'Cannot register languages for plugin %s (guid: %s) at %s.',
        'ElggPlugin:Exception:NoID' => 'No ID for plugin guid %s!',
 
        'PluginException:ParserError' => 'Error parsing manifest with API version %s in plugin %s.',
index 5bd0dd55d2c5554a6914b85e4f616110ba6a4eed..c3e7e3ab0e4840e0e48956c57784e4f78a8743e7 100644 (file)
@@ -22,7 +22,8 @@ foreach ($installed_plugins as $id => $plugin) {
        if (!$plugin->isValid()) {
                if ($plugin->isActive()) {
                        // force disable and warn
-                       register_error(elgg_echo('ElggPlugin:InvalidAndDeactivated', array($plugin->getId())));
+                       elgg_add_admin_notice('invalid_and_deactivated_' . $plugin->getID(),
+                                       elgg_echo('ElggPlugin:InvalidAndDeactivated', array($plugin->getId())));
                        $plugin->deactivate();
                }
                continue;