2004-03-25 07:05:52 +00:00
<? php
2004-10-19 03:03:06 +00:00
require_once ( 'admin.php' );
2004-03-25 07:05:52 +00:00
2004-08-09 07:17:54 +00:00
if ( isset ( $_GET [ 'action' ]) ) {
2004-05-17 20:16:54 +00:00
check_admin_referer ();
2004-03-25 21:04:36 +00:00
if ( 'activate' == $_GET [ 'action' ]) {
2004-08-09 07:17:54 +00:00
$current = get_settings ( 'active_plugins' );
2004-09-26 18:12:12 +00:00
if ( ! in_array ( $_GET [ 'plugin' ], $current )) {
$current [] = trim ( $_GET [ 'plugin' ] );
}
2004-08-09 07:17:54 +00:00
sort ( $current );
2004-03-25 21:04:36 +00:00
update_option ( 'active_plugins' , $current );
2004-04-14 19:04:14 +00:00
header ( 'Location: plugins.php?activate=true' );
2004-03-25 21:04:36 +00:00
}
if ( 'deactivate' == $_GET [ 'action' ]) {
2004-08-09 07:17:54 +00:00
$current = get_settings ( 'active_plugins' );
array_splice ( $current , array_search ( $_GET [ 'plugin' ], $current ), 1 ); // Array-fu!
update_option ( 'active_plugins' , $current );
2004-04-14 19:04:14 +00:00
header ( 'Location: plugins.php?deactivate=true' );
2004-03-25 21:04:36 +00:00
}
}
2004-04-25 23:10:07 +00:00
$title = __ ( 'Manage Plugins' );
2004-03-25 07:05:52 +00:00
require_once ( 'admin-header.php' );
2004-03-25 08:10:26 +00:00
// Clean up options
2004-08-09 07:17:54 +00:00
// If any plugins don't exist, axe 'em
2004-03-25 08:10:26 +00:00
2004-08-09 07:17:54 +00:00
$check_plugins = get_settings ( 'active_plugins' );
2004-03-25 08:10:26 +00:00
foreach ( $check_plugins as $check_plugin ) {
if ( ! file_exists ( ABSPATH . 'wp-content/plugins/' . $check_plugin )) {
2004-08-09 07:17:54 +00:00
$current = get_settings ( 'active_plugins' );
unset ( $current [ $_GET [ 'plugin' ]]);
update_option ( 'active_plugins' , $current );
2004-03-25 08:10:26 +00:00
}
}
2004-03-25 07:05:52 +00:00
?>
2004-04-14 19:04:14 +00:00
2004-05-07 23:56:33 +00:00
<?php if (isset($_GET['activate'])) : ?>
2004-04-25 23:10:07 +00:00
<div class="updated"><p><?php _e('Plugin <strong>activated</strong>.') ?></p>
2004-04-14 19:04:14 +00:00
</div>
<?php endif; ?>
2004-05-07 23:56:33 +00:00
<?php if (isset($_GET['deactivate'])) : ?>
2004-04-25 23:10:07 +00:00
<div class="updated"><p><?php _e('Plugin <strong>deactivated</strong>.') ?></p>
2004-04-14 19:04:14 +00:00
</div>
<?php endif; ?>
2004-03-25 07:05:52 +00:00
<div class="wrap">
2004-04-24 19:46:11 +00:00
<h2><?php _e('Plugin Management'); ?></h2>
2004-08-09 07:17:54 +00:00
<p><?php _e('Plugins are files you usually download separately from WordPress that add functionality. To install a plugin you generally just need to put the plugin file into your <code>wp-content/plugins</code> directory. Once a plugin is installed, you may activate it or deactivate it here. If something goes wrong with a plugin and you can’t use WordPress, delete that plugin from the <code>wp-content/plugins</code> directory and it will be automatically deactivated.'); ?></p>
2004-03-25 07:05:52 +00:00
<?php
2004-08-09 07:17:54 +00:00
if ( get_settings('active_plugins') )
$current_plugins = get_settings('active_plugins');
2004-03-25 07:05:52 +00:00
2004-11-26 02:29:45 +00:00
$plugins = get_plugins();
if (empty($plugins)) {
2004-04-24 19:46:11 +00:00
_e("<p>Couldn't open plugins directory or there are no plugins available.</p>"); // TODO: make more helpful
2004-03-25 07:05:52 +00:00
} else {
?>
<table width="100%" cellpadding="3" cellspacing="3">
<tr>
2004-04-24 19:46:11 +00:00
<th><?php _e('Plugin'); ?></th>
<th><?php _e('Version'); ?></th>
<th><?php _e('Author'); ?></th>
<th><?php _e('Description'); ?></th>
<th><?php _e('Action'); ?></th>
2004-03-25 07:05:52 +00:00
</tr>
<?php
2004-05-07 23:56:33 +00:00
$style = '';
2004-11-26 02:29:45 +00:00
foreach($plugins as $plugin_file => $plugin_data) {
2004-03-25 07:05:52 +00:00
$style = ('class="alternate"' == $style) ? '' : 'class="alternate"';
2004-03-25 08:10:26 +00:00
if (!empty($current_plugins) && in_array($plugin_file, $current_plugins)) {
2004-11-29 17:28:53 +00:00
$action = "<a href='plugins.php?action=deactivate&plugin=$plugin_file' title='".__('Deactivate this plugin')."' class='delete'>".__('Deactivate')."</a>";
$plugin = "<strong>$plugin</strong>";
2004-03-25 08:10:26 +00:00
} else {
2004-11-29 17:28:53 +00:00
$action = "<a href='plugins.php?action=activate&plugin=$plugin_file' title='".__('Activate this plugin')."' class='edit'>".__('Activate')."</a>";
2004-03-25 08:10:26 +00:00
}
2004-12-15 23:09:46 +00:00
$plugin_data['Description'] = wp_kses($plugin_data['Description'], array('a' => array('href' => array(),'title' => array()),'abbr' => array('title' => array()),'acronym' => array('title' => array()),'code' => array(),'em' => array(),'strong' => array()) ); ;
2004-03-25 07:05:52 +00:00
echo "
<tr $style>
2004-11-26 02:29:45 +00:00
<td>{$plugin_data['Title']}</td>
<td>{$plugin_data['Version']}</td>
<td>{$plugin_data['Author']}</td>
<td>{$plugin_data['Description']}</td>
2004-03-25 08:10:26 +00:00
<td>$action</td>
2004-03-25 07:05:52 +00:00
</tr>";
}
?>
</table>
<?php
}
?>
</div>
<?php
include('admin-footer.php');
2004-11-29 17:28:53 +00:00
?>