Ticket #2622: install.diff
| File install.diff, 6.5 KB (added by denney, 6 years ago) |
|---|
-
install.php
78 78 <?php 79 79 // Let's check to make sure WP isn't already installed. 80 80 $wpdb->hide_errors(); 81 $installed = $wpdb->get_results("SELECT * FROM $wpdb->users"); 81 82 if (defined('CUSTOM_USER_TABLE')) { 83 $tables = $wpdb->get_col("SHOW TABLES",0); 84 if ($tables) { 85 foreach ($tables as $table ) { 86 if ($table == CUSTOM_USER_TABLE) { 87 $installed = $wpdb->get_results("SELECT * FROM $wpdb->posts"); 88 } 89 } 90 } 91 92 if (!$installed) $installed = false; 93 } else { 94 $installed = $wpdb->get_results("SELECT * FROM $wpdb->users"); 95 } 96 82 97 if ($installed) die('<h1>'.__('Already Installed').'</h1><p>'.__('You appear to have already installed WordPress. To reinstall please clear your old database tables first.').'</p></body></html>'); 83 98 $wpdb->show_errors(); 84 99 … … 103 118 <th width="33%"><?php _e('Weblog title:'); ?></th> 104 119 <td><input name="weblog_title" type="text" id="weblog_title" size="25" /></td> 105 120 </tr> 121 122 <?php if (defined('CUSTOM_USER_TABLE') && $wpdb->get_col("SHOW TABLES",0)) { ?> 106 123 <tr> 124 <th><?php _e('Already registered:'); ?></th> 125 <td><input name="registered" type="checkbox" id="registered" /></td> 126 </tr> 127 <?php } ?> 128 129 <tr> 107 130 <th><?php _e('Your login name:'); ?></th> 108 131 <td><input name="admin_login" type="text" id="admin_login" size="25" /></td> 109 132 </tr> … … 136 159 $admin_pass = stripslashes($_POST['admin_pass']); 137 160 $admin_pass_verify = stripslashes($_POST['admin_pass_verify']); 138 161 $admin_email = stripslashes($_POST['admin_email']); 162 163 $registered = stripslashes($_POST['registered']); 164 if ($registered == 'on') $already_registered = true; 165 else $already_registered = false; 166 139 167 // check login name 140 168 if (empty($admin_login)) { 141 169 die (__("<strong>ERROR</strong>: please type your login name")); … … 161 189 <?php 162 190 flush(); 163 191 192 if (defined('CUSTOM_USER_TABLE')) { 193 if ($already_registered) { 194 // Make sure the user matches. 195 $user_match = $wpdb->get_results("SELECT ID FROM $wpdb->users WHERE user_login='$admin_login' AND user_pass=MD5('$admin_pass') AND user_email='$admin_email'"); 196 197 if (!$user_match) die (__("<strong>ERROR</strong>: your user information doesn't match that in the database")); 198 } else { 199 if ($wpdb->get_col("SHOW TABLES",0)) { 200 // Make sure the user doesn't already exist. 201 $user_taken = $wpdb->get_results("SELECT ID FROM $wpdb->users WHERE user_login='$admin_login'"); 202 203 if ($user_taken) die (__("<strong>ERROR</strong>: that username is already taken")); 204 } 205 } 206 } 207 208 164 209 // Set everything up 165 210 wp_cache_flush(); 166 211 make_db_current_silent(); … … 181 226 // Default link category. 182 227 $wpdb->query("INSERT INTO $wpdb->linkcategories (cat_id, cat_name, sort_order) VALUES('0', '".$wpdb->escape(__('Uncategorized'))."', 'manual')"); 183 228 184 // Set up admin user 185 $wpdb->query("INSERT INTO $wpdb->users (ID, user_login, user_pass, user_email, user_registered, display_name, user_nicename) VALUES ( '1', '$admin_login', MD5('$admin_pass'), '$admin_email', NOW(), '$admin_login', '$admin_login')"); 186 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$wpdb->insert_id}, '{$table_prefix}user_level', '10');"); 187 $admin_caps = serialize(array('administrator' => true)); 188 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$wpdb->insert_id}, '{$table_prefix}capabilities', '{$admin_caps}');"); 229 if (defined('CUSTOM_USER_TABLE')) { 230 if (!$already_registered) { 231 // Need to create a new user. 232 $wpdb->query("INSERT INTO $wpdb->users (user_login, user_pass, user_email, user_registered, display_name, user_nicename) VALUES ( '$admin_login', MD5('$admin_pass'), '$admin_email', NOW(), '$admin_login', '$admin_login')"); 233 $last_id = $wpdb->insert_id; 234 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$last_id}, '{$table_prefix}user_level', '10');"); 235 $admin_caps = serialize(array('administrator' => true)); 236 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$last_id}, '{$table_prefix}capabilities', '{$admin_caps}');"); 237 } else { 238 $user_id = $wpdb->get_var("SELECT ID FROM $wpdb->users WHERE user_login='$admin_login'"); 239 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$user_id}, '{$table_prefix}user_level', '10');"); 240 $admin_caps = serialize(array('administrator' => true)); 241 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$user_id}, '{$table_prefix}capabilities', '{$admin_caps}');"); 242 } 243 } else { 244 // Set up admin user 245 $wpdb->query("INSERT INTO $wpdb->users (ID, user_login, user_pass, user_email, user_registered, display_name, user_nicename) VALUES ( '1', '$admin_login', MD5('$admin_pass'), '$admin_email', NOW(), '$admin_login', '$admin_login')"); 246 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$wpdb->insert_id}, '{$table_prefix}user_level', '10');"); 247 $admin_caps = serialize(array('administrator' => true)); 248 $wpdb->query("INSERT INTO $wpdb->usermeta (user_id, meta_key, meta_value) VALUES ({$wpdb->insert_id}, '{$table_prefix}capabilities', '{$admin_caps}');"); 249 } 189 250 190 251 // Let's activate some default plugins 191 252 $check_plugins = array(); … … 213 274 do_action('activate_' . trim($plugin)); 214 275 } 215 276 216 $message_headers = 'From: ' . $weblog_title . ' <wordpress@' . $_SERVER['SERVER_NAME'] . '>'; 217 $message = sprintf(__("Your new WordPress blog has been successfully set up at: 277 if (!$already_registered) { 278 $message_headers = 'From: ' . $weblog_title . ' <wordpress@' . $_SERVER['SERVER_NAME'] . '>'; 279 $message = sprintf(__("Your new WordPress blog has been successfully set up at: 218 280 219 281 %1\$s 220 282 … … 229 291 http://wordpress.org/ 230 292 "), $guessurl, $admin_login, $admin_pass); 231 293 232 @wp_mail($admin_email, __('New WordPress Blog'), $message, $message_headers); 294 @wp_mail($admin_email, __('New WordPress Blog'), $message, $message_headers); 295 } 233 296 234 297 wp_cache_flush(); 235 298 ?> … … 237 300 <p><em><?php _e('Finished!'); ?></em></p> 238 301 239 302 <p><?php printf(__('Now you can <a href="%1$s">log in</a>.'), '../wp-login.php'); ?></p> 303 <?php if ($already_registered) { ?> 304 <p><?php _e('As you are already registered, you should already have a username and password! :P'); ?></p> 305 <?php } else { ?> 240 306 <dl> 241 307 <dt><?php _e('Username'); ?></dt> 242 308 <dd><code><?php echo $admin_login; ?></code></dd> 243 309 <dt><?php _e('Login address'); ?></dt> 244 310 <dd><a href="../wp-login.php">wp-login.php</a></dd> 245 311 </dl> 312 <?php } ?> 246 313 <p><?php _e('Were you expecting more steps? Sorry to disappoint. All done! :)'); ?></p> 247 314 <?php 248 315 break;
