Make WordPress Core


Ignore:
Timestamp:
01/26/2010 06:39:12 PM (17 years ago)
Author:
ryan
Message:

Remove fix_actve_plugins(). Props hakre. fixes #11750

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/includes/plugin.php

    r12825 r12848  
    259259 * @return bool True, if in the active plugins list. False, not in the list.
    260260 */
    261 function is_plugin_active($plugin) {
    262         return in_array( $plugin, apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) );
     261function is_plugin_active( $plugin ) {
     262        return in_array( $plugin, apply_filters( 'active_plugins', get_option( 'active_plugins', array() ) ) );
    263263}
    264264
    … …  
    287287 * @return WP_Error|null WP_Error on invalid file or null on success.
    288288 */
    289 function activate_plugin($plugin, $redirect = '') {
    290         $current = get_option('active_plugins');
    291         $plugin = plugin_basename(trim($plugin));
     289function activate_plugin( $plugin, $redirect = '' ) {
     290        $current = get_option( 'active_plugins', array() );
     291        $plugin  = plugin_basename( trim( $plugin ) );
    292292
    293293        $valid = validate_plugin($plugin);
    … …  
    323323 * @param bool $silent Optional, default is false. Prevent calling deactivate hook.
    324324 */
    325 function deactivate_plugins($plugins, $silent= false) {
    326         $current = get_option('active_plugins');
    327 
    328         if ( !is_array($plugins) )
    329                 $plugins = array($plugins);
    330 
    331         foreach ( $plugins as $plugin ) {
     325function deactivate_plugins( $plugins, $silent = false ) {
     326        $current = get_option( 'active_plugins', array() );
     327
     328        foreach ( (array) $plugins as $plugin ) {
    332329                $plugin = plugin_basename($plugin);
    333330                if ( ! is_plugin_active($plugin) )
    … …  
    476473}
    477474
     475/**
     476 * validate active plugins
     477 *
     478 * validate all active plugins, deactivates invalid and
     479 * returns an array of deactived ones.
     480 *
     481 * @since unknown
     482 * @return array invalid plugins, plugin as key, error as value
     483 */
    478484function validate_active_plugins() {
    479         $check_plugins = apply_filters( 'active_plugins', get_option('active_plugins') );
    480 
    481         // Sanity check.  If the active plugin list is not an array, make it an
    482         // empty array.
    483         if ( !is_array($check_plugins) ) {
     485        $plugins = apply_filters( 'active_plugins', get_option( 'active_plugins', array() ) );
     486
     487        // validate vartype: array
     488        if ( !is_array( $plugins ) ) {
    484489                update_option('active_plugins', array());
    485490                return;
    486491        }
    487492
    488         //Invalid is any plugin that is deactivated due to error.
    489493        $invalid = array();
    490494
    491         // If a plugin file does not exist, remove it from the list of active
    492         // plugins.
    493         foreach ( $check_plugins as $check_plugin ) {
    494                 $result = validate_plugin($check_plugin);
     495        // invalid plugins get deactivated
     496        foreach ( $plugins as $plugin ) {
     497                $result = validate_plugin( $plugin );
    495498                if ( is_wp_error( $result ) ) {
    496                         $invalid[$check_plugin] = $result;
    497                         deactivate_plugins( $check_plugin, true);
     499                        $invalid[$plugin] = $result;
     500                        deactivate_plugins( $plugin, true );
    498501                }
    499502        }
Note: See TracChangeset for help on using the changeset viewer.