|
1 <?php |
|
2 /** |
|
3 * Multisite delete site panel. |
|
4 * |
|
5 * @package WordPress |
|
6 * @subpackage Multisite |
|
7 * @since 3.0.0 |
|
8 */ |
|
9 |
|
10 require_once( './admin.php' ); |
|
11 |
|
12 if ( !is_multisite() ) |
|
13 wp_die( __( 'Multisite support is not enabled.' ) ); |
|
14 |
|
15 // @todo Create a delete blog cap. |
|
16 if ( ! current_user_can( 'manage_options' ) ) |
|
17 wp_die(__( 'You do not have sufficient permissions to delete this site.')); |
|
18 |
|
19 if ( isset( $_GET['h'] ) && $_GET['h'] != '' && get_option( 'delete_blog_hash' ) != false ) { |
|
20 if ( get_option( 'delete_blog_hash' ) == $_GET['h'] ) { |
|
21 wpmu_delete_blog( $wpdb->blogid ); |
|
22 wp_die( sprintf( __( 'Thank you for using %s, your site has been deleted. Happy trails to you until we meet again.' ), $current_site->site_name ) ); |
|
23 } else { |
|
24 wp_die( __( "I'm sorry, the link you clicked is stale. Please select another option." ) ); |
|
25 } |
|
26 } |
|
27 |
|
28 $title = __( 'Delete Site' ); |
|
29 $parent_file = 'tools.php'; |
|
30 require_once( './admin-header.php' ); |
|
31 |
|
32 echo '<div class="wrap">'; |
|
33 screen_icon(); |
|
34 echo '<h2>' . esc_html( $title ) . '</h2>'; |
|
35 |
|
36 if ( isset( $_POST['action'] ) && $_POST['action'] == 'deleteblog' && isset( $_POST['confirmdelete'] ) && $_POST['confirmdelete'] == '1' ) { |
|
37 check_admin_referer( 'delete-blog' ); |
|
38 |
|
39 $hash = wp_generate_password( 20, false ); |
|
40 update_option( 'delete_blog_hash', $hash ); |
|
41 |
|
42 $url_delete = esc_url( admin_url( 'ms-delete-site.php?h=' . $hash ) ); |
|
43 |
|
44 $content = apply_filters( 'delete_site_email_content', __( "Dear User, |
|
45 You recently clicked the 'Delete Site' link on your site and filled in a |
|
46 form on that page. |
|
47 If you really want to delete your site, click the link below. You will not |
|
48 be asked to confirm again so only click this link if you are absolutely certain: |
|
49 ###URL_DELETE### |
|
50 |
|
51 If you delete your site, please consider opening a new site here |
|
52 some time in the future! (But remember your current site and username |
|
53 are gone forever.) |
|
54 |
|
55 Thanks for using the site, |
|
56 Webmaster |
|
57 ###SITE_NAME###" ) ); |
|
58 |
|
59 $content = str_replace( '###URL_DELETE###', $url_delete, $content ); |
|
60 $content = str_replace( '###SITE_NAME###', $current_site->site_name, $content ); |
|
61 |
|
62 wp_mail( get_option( 'admin_email' ), "[ " . get_option( 'blogname' ) . " ] ".__( 'Delete My Site' ), $content ); |
|
63 ?> |
|
64 |
|
65 <p><?php _e( 'Thank you. Please check your email for a link to confirm your action. Your site will not be deleted until this link is clicked. ') ?></p> |
|
66 |
|
67 <?php } else { |
|
68 ?> |
|
69 <p><?php printf( __( 'If you do not want to use your %s site any more, you can delete it using the form below. When you click <strong>Delete My Site Permanently</strong> you will be sent an email with a link in it. Click on this link to delete your site.'), $current_site->site_name); ?></p> |
|
70 <p><?php _e( 'Remember, once deleted your site cannot be restored.' ) ?></p> |
|
71 |
|
72 <form method="post" name="deletedirect"> |
|
73 <?php wp_nonce_field( 'delete-blog' ) ?> |
|
74 <input type="hidden" name="action" value="deleteblog" /> |
|
75 <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 site, and I am aware I can never get it back or use %s again." ), is_subdomain_install() ? $current_blog->domain : $current_blog->domain . $current_blog->path ); ?></strong></label></p> |
|
76 <?php submit_button( __( 'Delete My Site Permanently' ) ); ?> |
|
77 </form> |
|
78 <?php |
|
79 } |
|
80 echo '</div>'; |
|
81 |
|
82 include( './admin-footer.php' ); |