baseurl = "?page=" . $_GET['page']; ?>

MU Plugin manager.

quit messing around and just click links please

"; } else { $this->deactivate_plugin(trim($_GET['plugin']), $_GET['blog']); } break; case 'activate': if (!isset($_GET['blog']) && !isset($_GET['plugin']) ) { echo "\t\t

quit messing around and just click links please

"; } else { $this->activate_plugin(trim($_GET['plugin']), $_GET['blog']); } break; } switch ($_GET['view']) { case 'check': $this->main_menu(); $this->check_plugins(); $this->main_menu(); break; case 'detail': if (!isset($_GET['blog'])) { echo "\t\t

no blog, try again

"; } else { $this->main_menu(); $this->blog_detail($_GET['blog']); $this->main_menu(); } break; default: ?>

Welcome to the MU Plugin manager

Through this page you can globally manipulate the active plugins for individual blogs.

main_menu(); break; } ?>

Global Plugin list

This is a list of all activated plugins for all blogs on the system.

You can click on an active plugin to deactive it.

You can click on a blog's ID number to view/perform detailed maintenance on that blog.

Please scroll to the bottom to select another action.

blogs}"; $bloglist = $wpdb->get_results($query); ?> blog_id); $active = get_blog_option($bloginfo->blog_id, "active_plugins"); $plugin_loc = 'wp-content/plugins'; $plugin_root = ABSPATH.$plugin_loc; echo "\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\tnewrow($alt); } ?>
Blog Name ID Active plugins
{$bloginfo->blogname}{$bloginfo->blog_id}\r\n"; if (is_array($active) && sizeof($active) > 0) { echo "\t\t\t\t\t
    \r\n"; foreach ( $active as $id => $plugin ) { $plugin_data = get_plugin_data("$plugin_root/$plugin"); echo("\t\t\t\t\t\t
  • {$plugin_data['Name']}
  • \r\n"); } echo "\t\t\t\t\t
\r\n"; } else { print "No plugins active"; } ?>
global_detail(); } $bloginfo = get_blog_details($blogid); $active = get_blog_option($bloginfo->blog_id, "active_plugins"); $available = $this->get_available_plugins($blogid); if(is_array($available)) { ?>

Detailed plugin information for blogname ?> (ID# blog_id ?>)

Active plugins for this blog:

$plugin) { $act = ''; $actionlink = "Activate"; if (in_array($file, $active)) { $act = 'active'; $actionlink = "Deactivate"; } echo "\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\r\n"; $this->newrow($alternate); } ?>
Plugin Version Description Action
{$plugin['Title']}{$plugin['Version']}{$plugin['Description']}$actionlink

There are no plugins available for this blog

blogs}"; $bloglist = $wpdb->get_results($query); foreach($bloglist as $row) { $plugins = get_blog_option($row->blog_id, "active_plugins"); if(!in_array($file,$plugins)) { return FALSE; } } return TRUE; } function is_plugin_globally_inactive($file) { /* * Function added by SignpostMarv Martin */ global $wpdb; $query = "select blog_id from {$wpdb->blogs}"; $bloglist = $wpdb->get_results($query); foreach($bloglist as $row) { $plugins = get_blog_option($row->blog_id, "active_plugins"); if(in_array($file,$plugins)) { return FALSE; } } return TRUE; } function global_detail() { $available = $this->get_available_plugins(0); if (is_array($available)) { ?>

Global plugin management

This page can globally, i.e. for every blog on the site, activate or deactivate plugins.

Simply click on the links below and to the right to enforce site-wide plugin activation policies.

The changes go into effect immediately.

$plugin) { if($this->is_plugin_globally_active($file)) { $act = "global active"; $actionlink = "Globally Deactivate"; } else if($this->is_plugin_globally_inactive($file)) { $act = "global inactive"; $actionlink = "Globally Activate"; } else { $act = ""; $actionlink = ""; } echo "\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\t\r\n" . "\t\t\t\r\n"; $this->newrow($alternate); } ?>
Plugin Version Description Action
{$plugin['Title']}{$plugin['Version']}{$plugin['Description']}$actionlink

There are no plugins available for this blog.

Activating $plugin on {$bloginfo->blogname} ({$bloginfo->blog_id})..."; if (is_array($plugins)) { if (!in_array($plugin, $plugins)) { $plugins[] = $plugin; sort($plugins); } else { echo "plugin already active!"; continue; } } else { //create an array and add it $plugins = array($plugin); } update_blog_option($blogid, "active_plugins", $plugins); echo "Done!"; } } function deactivate_plugin($plugin, $blogid = 'all') { global $wpdb, $wpmuBaseTablePrefix; $bids = $wpdb->get_results( "SELECT blog_id FROM $wpdb->blogs ORDER BY blog_id ASC" ); foreach ( $bids as $bid ) { $plugins = get_blog_option($bid->blog_id, "active_plugins"); $bloginfo = get_blog_details($bid->blog_id); echo "
Deactivating $plugin on {$bloginfo->blogname} ({$bloginfo->blog_id})..."; if (is_array($plugins)) { array_splice($plugins, array_search( $plugin, $plugins), 1 ); // Array-fu! update_blog_option($bid->blog_id, "active_plugins", $plugins); echo "Done!"; } else { echo "Blog has no active plugins!"; } } } function get_available_plugins($blogid) { global $wpdb; $current_id = $wpdb->blogid; $wpdb->blogid=$blogid; $plugins = get_plugins(); $wpdb->blogid=$current_id; return $plugins; } } $mu_plugin_man = new MU_Plugin_Manager(); ?>