Exemplo n.º 1
0
    wp_die(__('Naughty, naughty. What are you doing sneaking around like that?'));
}
if (!empty($_REQUEST['action'])) {
    $action = $_REQUEST['action'];
} elseif (!empty($_REQUEST['action2'])) {
    $action = $_REQUEST['action2'];
} else {
    $action = false;
}
// PROCESS ACTIONS
if (!empty($action) && !empty($_REQUEST['page']) && SOCME . '-ext' == $_REQUEST['page']) {
    $extension = isset($_REQUEST['extension']) ? $_REQUEST['extension'] : '';
    switch ($action) {
        case 'activate':
            if (check_admin_referer(SOCME . '-activate-extension_' . $extension)) {
                $result = socmeExtensionLoader::activate_extension($extension, admin_url('admin.php?page=' . SOCME . '-ext&error=true&extension=' . $extension));
                if (is_wp_error($result)) {
                    if ('unexpected_output' == $result->get_error_code()) {
                        $redirect = admin_url('admin.php?page=' . SOCME . '-ext&error=true&charsout=' . strlen($result->get_error_data()) . '&extension=' . $extension);
                        wp_redirect(add_query_arg('_error_nonce', wp_create_nonce('extension-activation-error_' . $extension), $redirect));
                        exit;
                    } else {
                        wp_die($result);
                    }
                }
                wp_redirect(admin_url('admin.php?page=' . SOCME . '-ext&activate=true&plugin_status=all&paged=1'));
                // overrides the ?error=true one above
                exit;
            }
            break;
        case 'deactivate':
Exemplo n.º 2
0
 function activate_extensions($extensions, $redirect = '')
 {
     if (!is_array($extensions)) {
         $extensions = array($extensions);
     }
     $errors = array();
     foreach ((array) $extensions as $extension) {
         if (!empty($redirect)) {
             $redirect = add_query_arg('extension', $extension, $redirect);
         }
         $result = socmeExtensionLoader::activate_extension($extension, $redirect);
         if (is_wp_error($result)) {
             $errors[$extension] = $result;
         }
     }
     if (!empty($errors)) {
         return new WP_Error('extensions_invalid', __('One of the extensions is invalid.'), $errors);
     }
     return true;
 }