check_permissions(); $action = $wp_list_table->current_action(); $s = isset($_REQUEST['s']) ? $_REQUEST['s'] : ''; // Clean up request URI from temporary args for screen options/paging uri's to work as expected. $_SERVER['REQUEST_URI'] = remove_query_arg(array('enable', 'disable', 'enable-selected', 'disable-selected'), $_SERVER['REQUEST_URI']); $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0; if ( ! $id ) wp_die( __('Invalid site ID.') ); $wp_list_table->prepare_items(); $details = get_blog_details( $id ); if ( !can_edit_site( $details->site_id ) ) wp_die( __( 'You do not have permission to access this page.' ) ); $is_main_site = is_main_site( $id ); if ( $action ) { switch_to_blog( $id ); $allowed_themes = get_option( 'allowedthemes' ); switch ( $action ) { case 'enable': $theme = $_GET['theme']; $update = 'enabled'; if ( !$allowed_themes ) $allowed_themes = array( $theme => true ); else $allowed_themes[$theme] = true; break; case 'disable': $theme = $_GET['theme']; $update = 'disabled'; if ( !$allowed_themes ) $allowed_themes = array(); else unset( $allowed_themes[$theme] ); break; case 'enable-selected': if ( isset( $_POST['checked'] ) ) { $update = 'enable'; $themes = (array) $_POST['checked']; foreach( (array) $themes as $theme ) $allowed_themes[ $theme ] = true; } else { $update = 'error'; } break; case 'disable-selected': if ( isset( $_POST['checked'] ) ) { $update = 'disable'; $themes = (array) $_POST['checked']; foreach( (array) $themes as $theme ) unset( $allowed_themes[ $theme ] ); } else { $update = 'error'; } break; } update_option( 'allowedthemes', $allowed_themes ); restore_current_blog(); wp_redirect( add_query_arg( 'update', $update, wp_get_referer() ) ); exit; } if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) { wp_redirect( wp_get_referer() ); exit(); } add_thickbox(); add_screen_option( 'per_page', array( 'label' => _x( 'Themes', 'themes per page (screen options)' ) ) ); $title = sprintf( __('Edit Site: %s'), get_blogaddress_by_id($id)); $parent_file = 'sites.php'; $submenu_file = 'sites.php'; require('../admin-header.php'); ?>
' . __( 'Theme enabled.' ) . '
' . __( 'Theme disabled.' ) . '
' . __( 'No theme selected.' ) . '