aboutsummaryrefslogtreecommitdiff
path: root/views/default/admin/plugins.php
diff options
context:
space:
mode:
Diffstat (limited to 'views/default/admin/plugins.php')
-rw-r--r--views/default/admin/plugins.php24
1 files changed, 22 insertions, 2 deletions
diff --git a/views/default/admin/plugins.php b/views/default/admin/plugins.php
index 1aa899fcc..42f153d0f 100644
--- a/views/default/admin/plugins.php
+++ b/views/default/admin/plugins.php
@@ -8,6 +8,9 @@
* @subpackage Admin.Plugins
*/
+elgg_load_js('lightbox');
+elgg_load_css('lightbox');
+
elgg_generate_plugin_entities();
$installed_plugins = elgg_get_plugins('any');
$show_category = get_input('category', 'all');
@@ -20,6 +23,12 @@ $categories = array();
foreach ($installed_plugins as $id => $plugin) {
if (!$plugin->isValid()) {
+ if ($plugin->isActive()) {
+ // force disable and warn
+ elgg_add_admin_notice('invalid_and_deactivated_' . $plugin->getID(),
+ elgg_echo('ElggPlugin:InvalidAndDeactivated', array($plugin->getId())));
+ $plugin->deactivate();
+ }
continue;
}
@@ -40,6 +49,11 @@ foreach ($installed_plugins as $id => $plugin) {
unset($installed_plugins[$id]);
}
break;
+ case 'nonbundled':
+ if (in_array('bundled', $plugin_categories)) {
+ unset($installed_plugins[$id]);
+ }
+ break;
default:
if (!in_array($show_category, $plugin_categories)) {
unset($installed_plugins[$id]);
@@ -50,7 +64,7 @@ foreach ($installed_plugins as $id => $plugin) {
if (isset($plugin_categories)) {
foreach ($plugin_categories as $category) {
if (!array_key_exists($category, $categories)) {
- $categories[$category] = elgg_echo("admin:plugins:category:$category");
+ $categories[$category] = ElggPluginManifest::getFriendlyCategory($category);
}
}
}
@@ -77,7 +91,7 @@ switch ($sort) {
case 'alpha':
$plugin_list = array();
foreach ($installed_plugins as $plugin) {
- $plugin_list[$plugin->getManifest()->getName()] = $plugin;
+ $plugin_list[$plugin->getFriendlyName()] = $plugin;
}
ksort($plugin_list);
break;
@@ -91,10 +105,16 @@ switch ($sort) {
asort($categories);
+// we want bundled/nonbundled pulled to be at the top of the list
+unset($categories['bundled']);
+unset($categories['nonbundled']);
+
$common_categories = array(
'all' => elgg_echo('admin:plugins:category:all'),
'active' => elgg_echo('admin:plugins:category:active'),
'inactive' => elgg_echo('admin:plugins:category:inactive'),
+ 'bundled' => elgg_echo('admin:plugins:category:bundled'),
+ 'nonbundled' => elgg_echo('admin:plugins:category:nonbundled'),
);
$categories = array_merge($common_categories, $categories);