2003-04-01 16:12:34 +02:00
< ? php
2004-05-18 22:54:58 +02:00
require ( './wp-config.php' );
2003-04-01 16:12:34 +02:00
2003-12-18 10:36:13 +01:00
$wpvarstoreset = array ( 'action' );
for ( $i = 0 ; $i < count ( $wpvarstoreset ); $i += 1 ) {
$wpvar = $wpvarstoreset [ $i ];
if ( ! isset ( $$wpvar )) {
2004-04-21 00:56:47 +02:00
if ( empty ( $_POST [ " $wpvar " ])) {
if ( empty ( $_GET [ " $wpvar " ])) {
2003-12-18 10:36:13 +01:00
$$wpvar = '' ;
2003-04-01 16:12:34 +02:00
} else {
2004-04-21 00:56:47 +02:00
$$wpvar = $_GET [ " $wpvar " ];
2003-04-01 16:12:34 +02:00
}
} else {
2004-04-21 00:56:47 +02:00
$$wpvar = $_POST [ " $wpvar " ];
2003-04-01 16:12:34 +02:00
}
}
}
2004-02-29 09:43:36 +01:00
if ( ! get_settings ( 'users_can_register' )) {
2003-04-01 16:12:34 +02:00
$action = 'disabled' ;
}
switch ( $action ) {
2003-06-20 07:16:08 +02:00
case 'register' :
2003-04-01 16:12:34 +02:00
2004-04-21 00:56:47 +02:00
$user_login = $_POST [ 'user_login' ];
$user_email = $_POST [ 'user_email' ];
2003-04-01 16:12:34 +02:00
2005-03-13 18:06:18 +01:00
/* checking that username has been typed */
2003-06-20 07:16:08 +02:00
if ( $user_login == '' ) {
2005-03-13 18:06:18 +01:00
die ( __ ( '<strong>ERROR</strong>: Please enter a username.' ));
2003-04-01 16:12:34 +02:00
}
/* checking e-mail address */
2003-06-20 07:16:08 +02:00
if ( $user_email == '' ) {
2004-04-25 21:33:12 +02:00
die ( __ ( '<strong>ERROR</strong>: Please type your e-mail address.' ));
2003-04-01 16:12:34 +02:00
} else if ( ! is_email ( $user_email )) {
2004-04-25 21:33:12 +02:00
die ( __ ( '<strong>ERROR</strong>: The email address isn’t correct.' ));
2003-04-01 16:12:34 +02:00
}
2005-03-13 18:06:18 +01:00
/* checking the username isn't already used by another user */
2004-05-24 10:22:18 +02:00
$result = $wpdb -> get_results ( " SELECT user_login FROM $wpdb->users WHERE user_login = ' $user_login ' " );
2003-11-25 01:46:52 +01:00
if ( count ( $result ) >= 1 ) {
2005-03-13 18:06:18 +01:00
die ( __ ( '<strong>ERROR</strong>: This username is already registered, please choose another one.' ));
2003-04-01 16:12:34 +02:00
}
2004-04-21 00:56:47 +02:00
$user_ip = $_SERVER [ 'REMOTE_ADDR' ] ;
2003-04-01 16:12:34 +02:00
2004-05-18 22:54:58 +02:00
$user_browser = $wpdb -> escape ( $_SERVER [ 'HTTP_USER_AGENT' ]);
2005-02-05 03:19:00 +01:00
$user_login = $wpdb -> escape ( preg_replace ( '|a-z0-9 _.-|i' , '' , $user_login ) );
$user_nickname = $user_login ;
$user_nicename = sanitize_title ( $user_nickname );
2004-02-23 04:42:40 +01:00
$now = gmdate ( 'Y-m-d H:i:s' );
2005-03-14 01:48:11 +01:00
$user_level = get_settings ( 'new_users_can_blog' );
2005-02-05 03:19:00 +01:00
$password = substr ( md5 ( uniqid ( microtime () ) ), 0 , 7 );
2003-06-20 07:16:08 +02:00
2004-05-24 10:22:18 +02:00
$result = $wpdb -> query ( " INSERT INTO $wpdb->users
2004-12-17 20:27:35 +01:00
( user_login , user_pass , user_nickname , user_email , user_ip , user_browser , user_registered , user_level , user_idmode , user_nicename )
2003-06-20 07:16:08 +02:00
VALUES
2005-02-05 03:19:00 +01:00
( '$user_login' , MD5 ( '$password' ), '$user_nickname' , '$user_email' , '$user_ip' , '$user_browser' , '$now' , '$user_level' , 'nickname' , '$user_nicename' ) " );
2005-02-05 03:22:36 +01:00
do_action ( 'user_register' , $wpdb -> insert_id );
2003-06-20 07:16:08 +02:00
if ( $result == false ) {
2004-04-25 21:33:12 +02:00
die ( sprintf ( __ ( '<strong>ERROR</strong>: Couldn’t register you... please contact the <a href="mailto:%s">webmaster</a> !' ), get_settings ( 'admin_email' )));
2003-04-01 16:12:34 +02:00
}
2003-06-20 07:16:08 +02:00
$stars = '' ;
2003-04-01 16:12:34 +02:00
for ( $i = 0 ; $i < strlen ( $pass1 ); $i = $i + 1 ) {
2003-06-20 07:16:08 +02:00
$stars .= '*' ;
2003-04-01 16:12:34 +02:00
}
2005-02-05 03:19:00 +01:00
2005-03-13 18:06:18 +01:00
$message = sprintf ( __ ( 'Username: %s' ), $user_login ) . " \r \n " ;
$message .= sprintf ( __ ( 'Password: %s' ), $password ) . " \r \n " ;
2005-03-25 22:41:45 +01:00
$message .= get_settings ( 'siteurl' ) . " /wp-login.php \r \n " ;
2005-02-05 03:19:00 +01:00
2005-03-25 22:41:45 +01:00
wp_mail ( $user_email , sprintf ( __ ( '[%s] Your username and password' ), get_settings ( 'blogname' )), $message );
2003-04-01 16:12:34 +02:00
2005-03-25 22:41:45 +01:00
$message = sprintf ( __ ( 'New user registration on your blog %s:' ), get_settings ( 'blogname' )) . " \r \n \r \n " ;
$message .= sprintf ( __ ( 'Username: %s' ), $user_login ) . " \r \n \r \n " ;
$message .= sprintf ( __ ( 'E-mail: %s' ), $user_email ) . " \r \n " ;
2003-04-01 16:12:34 +02:00
2004-10-04 09:44:04 +02:00
@ wp_mail ( get_settings ( 'admin_email' ), sprintf ( __ ( '[%s] New User Registration' ), get_settings ( 'blogname' )), $message );
2003-04-01 16:12:34 +02:00
2003-06-20 07:16:08 +02:00
?>
<! DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
< html xmlns = " http://www.w3.org/1999/xhtml " >
2003-04-01 16:12:34 +02:00
< head >
2005-02-11 01:51:39 +01:00
< title > WordPress & raquo ; < ? php _e ( 'Registration Complete' ) ?> </title>
2005-02-14 05:36:57 +01:00
< meta http - equiv = " Content-Type " content = " <?php bloginfo('html_type'); ?>; charset=<?php echo get_settings('blog_charset'); ?> " />
2003-09-12 18:46:46 +02:00
< link rel = " stylesheet " href = " wp-admin/wp-admin.css " type = " text/css " />
2005-02-11 01:51:39 +01:00
< style type = " text/css " >
. submit {
font - size : 1.7 em ;
}
</ style >
2003-04-01 16:12:34 +02:00
</ head >
2003-06-20 07:16:08 +02:00
< body >
< div id = " login " >
2004-04-25 21:33:12 +02:00
< h2 >< ? php _e ( 'Registration Complete' ) ?> </h2>
2005-03-13 18:06:18 +01:00
< p >< ? php printf ( __ ( 'Username: %s' ), " <strong> $user_login </strong> " ) ?> <br />
< ? php printf ( __ ( 'Password: %s' ), '<strong>' . __ ( 'emailed to you' ) . '</strong>' ) ?> <br />
< ? php printf ( __ ( 'E-mail: %s' ), " <strong> $user_email </strong> " ) ?> </p>
2005-02-11 01:51:39 +01:00
< p class = " submit " >< a href = " wp-login.php " >< ? php _e ( 'Login' ); ?> »</a></p>
2003-04-01 16:12:34 +02:00
</ div >
</ body >
</ html >
< ? php
break ;
2003-06-20 07:16:08 +02:00
case 'disabled' :
2003-04-01 16:12:34 +02:00
2003-06-20 07:16:08 +02:00
?>
<! DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
< html xmlns = " http://www.w3.org/1999/xhtml " >
2003-04-01 16:12:34 +02:00
< head >
2004-05-18 22:54:58 +02:00
< title > WordPress & raquo ; < ? php _e ( 'Registration Currently Disabled' ) ?> </title>
2005-02-14 05:36:57 +01:00
< meta http - equiv = " Content-Type " content = " <?php bloginfo('html_type'); ?>; charset=<?php echo get_settings('blog_charset'); ?> " >
2003-09-12 18:46:46 +02:00
< link rel = " stylesheet " href = " wp-admin/wp-admin.css " type = " text/css " >
2003-04-01 16:12:34 +02:00
</ head >
2003-06-20 07:16:08 +02:00
< body >
< div id = " login " >
2004-04-25 21:33:12 +02:00
< h2 >< ? php _e ( 'Registration Disabled' ) ?> </h2>
< p >< ? php _e ( 'User registration is currently not allowed.' ) ?> <br />
2004-12-24 02:34:47 +01:00
< a href = " <?php echo get_settings('home') . '/'; ?> " title = " <?php _e('Go back to the blog') ?> " >< ? php _e ( 'Home' ) ?> </a>
2003-06-20 07:16:08 +02:00
</ p >
</ div >
2003-04-01 16:12:34 +02:00
</ body >
</ html >
< ? php
break ;
default :
?>
2003-06-20 07:16:08 +02:00
<! DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
2004-05-18 22:54:58 +02:00
< title > WordPress & raquo ; < ? php _e ( 'Registration Form' ) ?> </title>
2005-02-14 05:36:57 +01:00
< meta http - equiv = " Content-Type " content = " <?php bloginfo('html_type'); ?>; charset=<?php echo get_settings('blog_charset'); ?> " />
2003-09-12 18:46:46 +02:00
< link rel = " stylesheet " href = " wp-admin/wp-admin.css " type = " text/css " />
2005-02-05 03:19:00 +01:00
< style type = " text/css " >
#user_email, #user_login, #submit {
font - size : 1.7 em ;
}
</ style >
2003-04-01 16:12:34 +02:00
</ head >
2003-06-20 07:16:08 +02:00
< body >
< div id = " login " >
2005-02-05 03:19:00 +01:00
< h1 >< a href = " http://wordpress.org/ " > WordPress </ a ></ h1 >
< h2 >< ? php _e ( 'Register for this blog' ) ?> </h2>
< form method = " post " action = " wp-register.php " id = " registerform " >
< p >< input type = " hidden " name = " action " value = " register " />
2005-03-13 18:06:18 +01:00
< label for = " user_login " >< ? php _e ( 'Username:' ) ?> </label><br /> <input type="text" name="user_login" id="user_login" size="20" maxlength="20" /><br /></p>
< p >< label for = " user_email " >< ? php _e ( 'E-mail:' ) ?> </label><br /> <input type="text" name="user_email" id="user_email" size="25" maxlength="100" /></p>
2005-02-05 03:19:00 +01:00
< p > A password will be emailed to you .</ p >
< p class = " submit " >< input type = " submit " value = " <?php _e('Register') ?> » " id = " submit " name = " submit " /></ p >
2003-04-01 16:12:34 +02:00
</ form >
2005-02-05 03:19:00 +01:00
< ul >
< li >< a href = " <?php bloginfo('home'); ?> " title = " <?php _e('Are you lost?') ?> " >& laquo ; < ? php _e ( 'Back to blog' ) ?> </a></li>
< li >< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php " >< ? php _e ( 'Login' ) ?> </a></li>
< li >< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php?action=lostpassword " title = " <?php _e('Password Lost and Found') ?> " >< ? php _e ( 'Lost your password?' ) ?> </a></li>
</ ul >
2003-06-20 07:16:08 +02:00
</ div >
2003-04-01 16:12:34 +02:00
</ body >
</ html >
2003-06-20 07:16:08 +02:00
< ? php
2003-04-01 16:12:34 +02:00
break ;
2004-02-09 20:29:35 +01:00
}
2005-03-13 18:06:18 +01:00
?>