diff --git a/wp-admin/menu.php b/wp-admin/menu.php index 766222528..cb27cc839 100644 --- a/wp-admin/menu.php +++ b/wp-admin/menu.php @@ -136,6 +136,8 @@ $menu[75] = array( __('Tools'), 'read', 'tools.php', '', 'menu-top', 'menu-tools $submenu['tools.php'][15] = array( __('Export'), 'import', 'export.php' ); if ( is_super_admin() ) $submenu['tools.php'][20] = array( __('Upgrade'), 'install_plugins', 'update-core.php'); + if ( is_multisite() && ($current_blog->domain . $current_blog->path != $current_site->domain . $current_site->path) ) + $submenu['tools.php'][25] = array( __('Delete Blog'), 'manage_options', 'ms-delete-site.php' ); $menu[80] = array( __('Settings'), 'manage_options', 'options-general.php', '', 'menu-top', 'menu-settings', 'div' ); $submenu['options-general.php'][10] = array(_x('General', 'settings screen'), 'manage_options', 'options-general.php'); @@ -147,9 +149,8 @@ $menu[80] = array( __('Settings'), 'manage_options', 'options-general.php', '', $submenu['options-general.php'][40] = array(__('Permalinks'), 'manage_options', 'options-permalink.php'); if ( is_super_admin() ) $submenu['options-general.php'][45] = array(__('Miscellaneous'), 'manage_options', 'options-misc.php'); - if ( !is_multisite() && is_super_admin() ) { + if ( !is_multisite() && is_super_admin() ) $submenu['options-general.php'][50] = array(__('Network'), 'manage_options', 'options-network.php'); - } $_wp_last_utility_menu = 80; // The index of the last top-level menu in the utility menu group diff --git a/wp-admin/ms-delete-site.php b/wp-admin/ms-delete-site.php new file mode 100644 index 000000000..dec358b08 --- /dev/null +++ b/wp-admin/ms-delete-site.php @@ -0,0 +1,63 @@ +'; +screen_icon(); +echo '

'. esc_html($title) .'

'; + +if ( isset($_POST['action']) && $_POST['action'] == "deleteblog" && isset($_POST['confirmdelete']) && $_POST['confirmdelete'] == '1' ) { + $hash = wp_generate_password(20, false); + update_option( "delete_blog_hash", $hash ); + $url_delete = admin_url('ms-delete-site.php?h=' . $hash); + $msg = __("Dear User, +You recently clicked the 'Delete Blog' link on your blog and filled in a +form on that page. +If you really want to delete your blog, click the link below. You will not +be asked to confirm again so only click this link if you are 100% certain: +URL_DELETE + +If you delete your blog, please consider opening a new blog here +some time in the future! (But remember your current blog and username +are gone forever.) + +Thanks for using the site, +Webmaster +SITE_NAME +"); + $msg = str_replace( "URL_DELETE", $url_delete, $msg ); + $msg = str_replace( "SITE_NAME", $current_site->site_name, $msg ); + wp_mail( get_option( "admin_email" ), "[ " . get_option( "blogname" ) . " ] ".__("Delete My Blog"), $msg ); + ?> +

+ blogid ); + echo "

" . sprintf(__('Thank you for using %s, your blog has been deleted. Happy trails to you until we meet again.'), $current_site->site_name) . "

"; + } else { + echo "

" . __("I'm sorry, the link you clicked is stale. Please select another option.") . "

"; + } +} else { +?> +

Delete My Blog you will be sent an email with a link in it. Click on this link to delete your blog.'), $current_site->site_name); ?>

+

+
+ +

+

' />

+
+'; + +include('admin-footer.php'); +?> \ No newline at end of file diff --git a/wp-includes/ms-functions.php b/wp-includes/ms-functions.php index 54cec94d7..574b6fdef 100644 --- a/wp-includes/ms-functions.php +++ b/wp-includes/ms-functions.php @@ -598,13 +598,13 @@ function update_blog_status( $blog_id, $pref, $value, $refresh = true ) { $wpdb->update( $wpdb->blogs, array($pref => $value, 'last_updated' => current_time('mysql', true)), array('blog_id' => $blog_id) ); if ( $refresh ) - refresh_blog_details($id); + refresh_blog_details($blog_id); if ( $pref == 'spam' ) { if ( $value == 1 ) - do_action( "make_spam_blog", $id ); + do_action( "make_spam_blog", $blog_id ); else - do_action( "make_ham_blog", $id ); + do_action( "make_ham_blog", $blog_id ); } return $value; @@ -1766,83 +1766,6 @@ function fix_import_form_size( $size ) { return $size; // default } -/* Delete blog */ -class delete_blog { - function delete_blog() { - $this->reallydeleteblog = false; - add_action('admin_menu', array(&$this, 'admin_menu')); - add_action('admin_footer', array(&$this, 'admin_footer')); - } - - function admin_footer() { - global $wpdb, $current_blog, $current_site; - if ( $current_blog->domain . $current_blog->path == $current_site->domain . $current_site->path ) - return false; - - if ( $this->reallydeleteblog == true ) - wpmu_delete_blog( $wpdb->blogid ); - } - - function admin_menu() { - global $current_blog, $current_site; - if ( $current_blog->domain . $current_blog->path != $current_site->domain . $current_site->path ) - add_submenu_page('options-general.php', __('Delete Blog'), __('Delete Blog'), 'manage_options', 'delete-blog', array(&$this, 'plugin_content')); - } - - function plugin_content() { - global $current_blog, $current_site; - $this->delete_blog_hash = get_settings('delete_blog_hash'); - echo '

' . __('Delete Blog') . '

'; - if ( $_POST['action'] == "deleteblog" && $_POST['confirmdelete'] == '1' ) { - $hash = substr( md5( $_SERVER['REQUEST_URI'] . time() ), 0, 6 ); - update_option( "delete_blog_hash", $hash ); - $url_delete = get_option( "siteurl" ) . "/wp-admin/options-general.php?page=delete-blog&h=" . $hash; - $msg = __("Dear User, -You recently clicked the 'Delete Blog' link on your blog and filled in a -form on that page. -If you really want to delete your blog, click the link below. You will not -be asked to confirm again so only click this link if you are 100% certain: -URL_DELETE - -If you delete your blog, please consider opening a new blog here -some time in the future! (But remember your current blog and username -are gone forever.) - -Thanks for using the site, -Webmaster -SITE_NAME -"); - $msg = str_replace( "URL_DELETE", $url_delete, $msg ); - $msg = str_replace( "SITE_NAME", $current_site->site_name, $msg ); - wp_mail( get_option( "admin_email" ), "[ " . get_option( "blogname" ) . " ] ".__("Delete My Blog"), $msg ); - ?> -

- reallydeleteblog = true; - echo "

" . sprintf(__('Thank you for using %s, your blog has been deleted. Happy trails to you until we meet again.'), $current_site->site_name) . "

"; - } else { - $this->reallydeleteblog = false; - echo "

" . __("I'm sorry, the link you clicked is stale. Please select another option.") . "

"; - } - } else { -?> -

Delete My Blog you will be sent an email with a link in it. Click on this link to delete your blog.'), $current_site->site_name); ?>

-

-
- - -

-

' />

-
-"; - } -} -$delete_blog_obj = new delete_blog(); - /* Global Categories */ function global_terms( $term_id, $deprecated = '' ) { global $wpdb; diff --git a/wp-includes/pluggable.php b/wp-includes/pluggable.php index f376bf724..2affe5db6 100644 --- a/wp-includes/pluggable.php +++ b/wp-includes/pluggable.php @@ -1791,4 +1791,3 @@ function wp_text_diff( $left_string, $right_string, $args = null ) { return $r; } endif; -