]> scripts.mit.edu Git - autoinstalls/wordpress.git/blob - wp-activate.php
Wordpress 4.6-scripts
[autoinstalls/wordpress.git] / wp-activate.php
1 <?php
2 /**
3  * Confirms that the activation key that is sent in an email after a user signs
4  * up for a new site matches the key for that user and then displays confirmation.
5  *
6  * @package WordPress
7  */
8
9 define( 'WP_INSTALLING', true );
10
11 /** Sets up the WordPress Environment. */
12 require( dirname(__FILE__) . '/wp-load.php' );
13
14 require( dirname( __FILE__ ) . '/wp-blog-header.php' );
15
16 if ( !is_multisite() ) {
17         wp_redirect( wp_registration_url() );
18         die();
19 }
20
21 if ( is_object( $wp_object_cache ) )
22         $wp_object_cache->cache_enabled = false;
23
24 // Fix for page title
25 $wp_query->is_404 = false;
26
27 /**
28  * Fires before the Site Activation page is loaded.
29  *
30  * @since 3.0.0
31  */
32 do_action( 'activate_header' );
33
34 /**
35  * Adds an action hook specific to this page.
36  *
37  * Fires on {@see 'wp_head'}.
38  *
39  * @since MU
40  */
41 function do_activate_header() {
42         /**
43          * Fires before the Site Activation page is loaded.
44          *
45          * Fires on the {@see 'wp_head'} action.
46      *
47      * @since 3.0.0
48      */
49     do_action( 'activate_wp_head' );
50 }
51 add_action( 'wp_head', 'do_activate_header' );
52
53 /**
54  * Loads styles specific to this page.
55  *
56  * @since MU
57  */
58 function wpmu_activate_stylesheet() {
59         ?>
60         <style type="text/css">
61                 form { margin-top: 2em; }
62                 #submit, #key { width: 90%; font-size: 24px; }
63                 #language { margin-top: .5em; }
64                 .error { background: #f66; }
65                 span.h3 { padding: 0 8px; font-size: 1.3em; font-weight: bold; }
66         </style>
67         <?php
68 }
69 add_action( 'wp_head', 'wpmu_activate_stylesheet' );
70
71 get_header( 'wp-activate' );
72 ?>
73
74 <div id="signup-content" class="widecolumn">
75         <div class="wp-activate-container">
76         <?php if ( empty($_GET['key']) && empty($_POST['key']) ) { ?>
77
78                 <h2><?php _e('Activation Key Required') ?></h2>
79                 <form name="activateform" id="activateform" method="post" action="<?php echo network_site_url('wp-activate.php'); ?>">
80                         <p>
81                             <label for="key"><?php _e('Activation Key:') ?></label>
82                             <br /><input type="text" name="key" id="key" value="" size="50" />
83                         </p>
84                         <p class="submit">
85                             <input id="submit" type="submit" name="Submit" class="submit" value="<?php esc_attr_e('Activate') ?>" />
86                         </p>
87                 </form>
88
89         <?php } else {
90
91                 $key = !empty($_GET['key']) ? $_GET['key'] : $_POST['key'];
92                 $result = wpmu_activate_signup( $key );
93                 if ( is_wp_error($result) ) {
94                         if ( 'already_active' == $result->get_error_code() || 'blog_taken' == $result->get_error_code() ) {
95                                 $signup = $result->get_error_data();
96                                 ?>
97                                 <h2><?php _e('Your account is now active!'); ?></h2>
98                                 <?php
99                                 echo '<p class="lead-in">';
100                                 if ( $signup->domain . $signup->path == '' ) {
101                                         printf(
102                                                 /* translators: 1: login URL, 2: username, 3: user email, 4: lost password URL */
103                                                 __( 'Your account has been activated. You may now <a href="%1$s">log in</a> to the site using your chosen username of &#8220;%2$s&#8221;. Please check your email inbox at %3$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can <a href="%4$s">reset your password</a>.' ),
104                                                 network_site_url( 'wp-login.php', 'login' ),
105                                                 $signup->user_login,
106                                                 $signup->user_email,
107                                                 wp_lostpassword_url()
108                                         );
109                                 } else {
110                                         printf(
111                                                 /* translators: 1: site URL, 2: site domain, 3: username, 4: user email, 5: lost password URL */
112                                                 __( 'Your site at <a href="%1$s">%2$s</a> is active. You may now log in to your site using your chosen username of &#8220;%3$s&#8221;. Please check your email inbox at %4$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can <a href="%5$s">reset your password</a>.' ),
113                                                 'http://' . $signup->domain,
114                                                 $signup->domain,
115                                                 $signup->user_login,
116                                                 $signup->user_email,
117                                                 wp_lostpassword_url()
118                                         );
119                                 }
120                                 echo '</p>';
121                         } else {
122                                 ?>
123                                 <h2><?php _e( 'An error occurred during the activation' ); ?></h2>
124                                 <p><?php echo $result->get_error_message(); ?></p>
125                                 <?php
126                         }
127                 } else {
128                         $url = isset( $result['blog_id'] ) ? get_blogaddress_by_id( (int) $result['blog_id'] ) : '';
129                         $user = get_userdata( (int) $result['user_id'] );
130                         ?>
131                         <h2><?php _e('Your account is now active!'); ?></h2>
132
133                         <div id="signup-welcome">
134                                 <p><span class="h3"><?php _e('Username:'); ?></span> <?php echo $user->user_login ?></p>
135                                 <p><span class="h3"><?php _e('Password:'); ?></span> <?php echo $result['password']; ?></p>
136                         </div>
137
138                         <?php if ( $url && $url != network_home_url( '', 'http' ) ) :
139                                 switch_to_blog( (int) $result['blog_id'] );
140                                 $login_url = wp_login_url();
141                                 restore_current_blog();
142                                 ?>
143                                 <p class="view"><?php
144                                         /* translators: 1: site URL, 2: login URL */
145                                         printf( __( 'Your account is now activated. <a href="%1$s">View your site</a> or <a href="%2$s">Log in</a>' ), $url, esc_url( $login_url ) );
146                                 ?></p>
147                         <?php else: ?>
148                                 <p class="view"><?php
149                                         /* translators: 1: login URL, 2: network home URL */
150                                         printf( __( 'Your account is now activated. <a href="%1$s">Log in</a> or go back to the <a href="%2$s">homepage</a>.' ), network_site_url( 'wp-login.php', 'login' ), network_home_url() );
151                                 ?></p>
152                         <?php endif;
153                 }
154         }
155         ?>
156         </div>
157 </div>
158 <script type="text/javascript">
159         var key_input = document.getElementById('key');
160         key_input && key_input.focus();
161 </script>
162 <?php get_footer( 'wp-activate' );