From 7086111ad4dd997e12a3220e1ee60c9b9bcf0bb8 Mon Sep 17 00:00:00 2001 From: Charles Date: Tue, 7 Jan 2020 13:06:14 +0100 Subject: Added wordpress --- srcs/wordpress/wp-admin/network/site-settings.php | 176 ++++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 srcs/wordpress/wp-admin/network/site-settings.php (limited to 'srcs/wordpress/wp-admin/network/site-settings.php') diff --git a/srcs/wordpress/wp-admin/network/site-settings.php b/srcs/wordpress/wp-admin/network/site-settings.php new file mode 100644 index 0000000..7c3cae7 --- /dev/null +++ b/srcs/wordpress/wp-admin/network/site-settings.php @@ -0,0 +1,176 @@ +add_help_tab( get_site_screen_help_tab_args() ); +get_current_screen()->set_help_sidebar( get_site_screen_help_sidebar_content() ); + +$id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0; + +if ( ! $id ) { + wp_die( __( 'Invalid site ID.' ) ); +} + +$details = get_site( $id ); +if ( ! $details ) { + wp_die( __( 'The requested site does not exist.' ) ); +} + +if ( ! can_edit_network( $details->site_id ) ) { + wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 ); +} + +$is_main_site = is_main_site( $id ); + +if ( isset( $_REQUEST['action'] ) && 'update-site' == $_REQUEST['action'] && is_array( $_POST['option'] ) ) { + check_admin_referer( 'edit-site' ); + + switch_to_blog( $id ); + + $skip_options = array( 'allowedthemes' ); // Don't update these options since they are handled elsewhere in the form. + foreach ( (array) $_POST['option'] as $key => $val ) { + $key = wp_unslash( $key ); + $val = wp_unslash( $val ); + if ( $key === 0 || is_array( $val ) || in_array( $key, $skip_options ) ) { + continue; // Avoids "0 is a protected WP option and may not be modified" error when edit blog options + } + update_option( $key, $val ); + } + + /** + * Fires after the site options are updated. + * + * @since 3.0.0 + * @since 4.4.0 Added `$id` parameter. + * + * @param int $id The ID of the site being updated. + */ + do_action( 'wpmu_update_blog_options', $id ); + + restore_current_blog(); + wp_redirect( + add_query_arg( + array( + 'update' => 'updated', + 'id' => $id, + ), + 'site-settings.php' + ) + ); + exit; +} + +if ( isset( $_GET['update'] ) ) { + $messages = array(); + if ( 'updated' == $_GET['update'] ) { + $messages[] = __( 'Site options updated.' ); + } +} + +/* translators: %s: Site title. */ +$title = sprintf( __( 'Edit Site: %s' ), esc_html( $details->blogname ) ); + +$parent_file = 'sites.php'; +$submenu_file = 'sites.php'; + +require( ABSPATH . 'wp-admin/admin-header.php' ); + +?> + +
+

+

|

+ + $id, + 'selected' => 'site-settings', + ) +); + +if ( ! empty( $messages ) ) { + foreach ( $messages as $msg ) { + echo '

' . $msg . '

'; + } +} +?> +
+ + + + get_blog_prefix( $id ); + $sql = "SELECT * FROM {$blog_prefix}options + WHERE option_name NOT LIKE %s + AND option_name NOT LIKE %s"; + $query = $wpdb->prepare( + $sql, + $wpdb->esc_like( '_' ) . '%', + '%' . $wpdb->esc_like( 'user_roles' ) + ); + $options = $wpdb->get_results( $query ); + foreach ( $options as $option ) { + if ( $option->option_name == 'default_role' ) { + $editblog_default_role = $option->option_value; + } + $disabled = false; + $class = 'all-options'; + if ( is_serialized( $option->option_value ) ) { + if ( is_serialized_string( $option->option_value ) ) { + $option->option_value = esc_html( maybe_unserialize( $option->option_value ) ); + } else { + $option->option_value = 'SERIALIZED DATA'; + $disabled = true; + $class = 'all-options disabled'; + } + } + if ( strpos( $option->option_value, "\n" ) !== false ) { + ?> + + + + + + + + option_name, array( 'siteurl', 'home' ) ) ) { ?> + + + + + + + + +
+ +
+