mirror of
https://github.com/WordPress/WordPress.git
synced 2024-12-23 09:37:42 +01:00
Move blog deletion to ms-delete-site.php. see #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@12828 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
b090a0336f
commit
9fc2bef3d1
@ -136,6 +136,8 @@ $menu[75] = array( __('Tools'), 'read', 'tools.php', '', 'menu-top', 'menu-tools
|
|||||||
$submenu['tools.php'][15] = array( __('Export'), 'import', 'export.php' );
|
$submenu['tools.php'][15] = array( __('Export'), 'import', 'export.php' );
|
||||||
if ( is_super_admin() )
|
if ( is_super_admin() )
|
||||||
$submenu['tools.php'][20] = array( __('Upgrade'), 'install_plugins', 'update-core.php');
|
$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' );
|
$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');
|
$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');
|
$submenu['options-general.php'][40] = array(__('Permalinks'), 'manage_options', 'options-permalink.php');
|
||||||
if ( is_super_admin() )
|
if ( is_super_admin() )
|
||||||
$submenu['options-general.php'][45] = array(__('Miscellaneous'), 'manage_options', 'options-misc.php');
|
$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');
|
$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
|
$_wp_last_utility_menu = 80; // The index of the last top-level menu in the utility menu group
|
||||||
|
|
||||||
|
63
wp-admin/ms-delete-site.php
Normal file
63
wp-admin/ms-delete-site.php
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
<?php
|
||||||
|
require_once('admin.php');
|
||||||
|
|
||||||
|
if ( !is_multisite() )
|
||||||
|
wp_die( __('Multisite support is not enabled.') );
|
||||||
|
|
||||||
|
$action = isset($_POST['action']) ? $_POST['action'] : 'splash';
|
||||||
|
|
||||||
|
$title = __('Delete Blog');
|
||||||
|
$parent_file = 'tools.php';
|
||||||
|
require_once('admin-header.php');
|
||||||
|
|
||||||
|
echo '<div class="wrap">';
|
||||||
|
screen_icon();
|
||||||
|
echo '<h2>'. esc_html($title) .'</h2>';
|
||||||
|
|
||||||
|
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 );
|
||||||
|
?>
|
||||||
|
<p><?php _e('Thank you. Please check your email for a link to confirm your action. Your blog will not be deleted until this link is clicked.') ?></p>
|
||||||
|
<?php
|
||||||
|
} elseif ( isset( $_GET['h'] ) && $_GET['h'] != '' && get_option('delete_blog_hash') != false ) {
|
||||||
|
if ( get_option('delete_blog_hash') == $_GET['h'] ) {
|
||||||
|
wpmu_delete_blog( $wpdb->blogid );
|
||||||
|
echo "<p>" . sprintf(__('Thank you for using %s, your blog has been deleted. Happy trails to you until we meet again.'), $current_site->site_name) . "</p>";
|
||||||
|
} else {
|
||||||
|
echo "<p>" . __("I'm sorry, the link you clicked is stale. Please select another option.") . "</p>";
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
?>
|
||||||
|
<p><?php printf(__('If you do not want to use your %s blog any more, you can delete it using the form below. When you click <strong>Delete My Blog</strong> you will be sent an email with a link in it. Click on this link to delete your blog.'), $current_site->site_name); ?></p>
|
||||||
|
<p><?php _e('Remember, once deleted your blog cannot be restored.') ?></p>
|
||||||
|
<form method='post' name='deletedirect'>
|
||||||
|
<input type='hidden' name='action' value='deleteblog' />
|
||||||
|
<p><input id='confirmdelete' type='checkbox' name='confirmdelete' value='1' /> <label for='confirmdelete'><strong><?php printf( __("I'm sure I want to permanently disable my blog, and I am aware I can never get it back or use %s again."), $current_blog->domain); ?></strong></label></p>
|
||||||
|
<p class="submit"><input type='submit' value='<?php esc_attr_e('Delete My Blog Permanently') ?>' /></p>
|
||||||
|
</form>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
echo '</div>';
|
||||||
|
|
||||||
|
include('admin-footer.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) );
|
$wpdb->update( $wpdb->blogs, array($pref => $value, 'last_updated' => current_time('mysql', true)), array('blog_id' => $blog_id) );
|
||||||
|
|
||||||
if ( $refresh )
|
if ( $refresh )
|
||||||
refresh_blog_details($id);
|
refresh_blog_details($blog_id);
|
||||||
|
|
||||||
if ( $pref == 'spam' ) {
|
if ( $pref == 'spam' ) {
|
||||||
if ( $value == 1 )
|
if ( $value == 1 )
|
||||||
do_action( "make_spam_blog", $id );
|
do_action( "make_spam_blog", $blog_id );
|
||||||
else
|
else
|
||||||
do_action( "make_ham_blog", $id );
|
do_action( "make_ham_blog", $blog_id );
|
||||||
}
|
}
|
||||||
|
|
||||||
return $value;
|
return $value;
|
||||||
@ -1766,83 +1766,6 @@ function fix_import_form_size( $size ) {
|
|||||||
return $size; // default
|
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 '<div class="wrap"><h2>' . __('Delete Blog') . '</h2>';
|
|
||||||
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 );
|
|
||||||
?>
|
|
||||||
<p><?php _e('Thank you. Please check your email for a link to confirm your action. Your blog will not be deleted until this link is clicked.') ?></p>
|
|
||||||
<?php
|
|
||||||
} elseif ( isset( $_GET['h'] ) && $_GET['h'] != '' && get_option('delete_blog_hash') != false ) {
|
|
||||||
if ( get_option('delete_blog_hash') == $_GET['h'] ) {
|
|
||||||
$this->reallydeleteblog = true;
|
|
||||||
echo "<p>" . sprintf(__('Thank you for using %s, your blog has been deleted. Happy trails to you until we meet again.'), $current_site->site_name) . "</p>";
|
|
||||||
} else {
|
|
||||||
$this->reallydeleteblog = false;
|
|
||||||
echo "<p>" . __("I'm sorry, the link you clicked is stale. Please select another option.") . "</p>";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
?>
|
|
||||||
<p><?php printf(__('If you do not want to use your %s blog any more, you can delete it using the form below. When you click <strong>Delete My Blog</strong> you will be sent an email with a link in it. Click on this link to delete your blog.'), $current_site->site_name); ?></p>
|
|
||||||
<p><?php _e('Remember, once deleted your blog cannot be restored.') ?></p>
|
|
||||||
<form method='post' name='deletedirect'>
|
|
||||||
<input type="hidden" name="page" value="<?php echo esc_attr($_GET['page']) ?>" />
|
|
||||||
<input type='hidden' name='action' value='deleteblog' />
|
|
||||||
<p><input id='confirmdelete' type='checkbox' name='confirmdelete' value='1' /> <label for='confirmdelete'><strong><?php printf( __("I'm sure I want to permanently disable my blog, and I am aware I can never get it back or use %s again."), $current_blog->domain); ?></strong></label></p>
|
|
||||||
<p class="submit"><input type='submit' value='<?php esc_attr_e('Delete My Blog Permanently') ?>' /></p>
|
|
||||||
</form>
|
|
||||||
<?php
|
|
||||||
}
|
|
||||||
echo "</div>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$delete_blog_obj = new delete_blog();
|
|
||||||
|
|
||||||
/* Global Categories */
|
/* Global Categories */
|
||||||
function global_terms( $term_id, $deprecated = '' ) {
|
function global_terms( $term_id, $deprecated = '' ) {
|
||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
@ -1791,4 +1791,3 @@ function wp_text_diff( $left_string, $right_string, $args = null ) {
|
|||||||
return $r;
|
return $r;
|
||||||
}
|
}
|
||||||
endif;
|
endif;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user