2003-04-01 09:12:34 -05:00
< ? php
2004-12-15 21:57:05 -05:00
require ( dirname ( __FILE__ ) . '/wp-config.php' );
2003-04-01 09:12:34 -05:00
2006-10-04 12:47:50 -04:00
// Rather than duplicating this HTML all over the place, we'll stick it in function
2008-01-22 14:35:19 -05:00
function login_header ( $title = 'Login' , $message = '' , $wp_error = '' ) {
global $error ;
2006-10-04 12:47:50 -04:00
2008-01-22 14:35:19 -05:00
if ( empty ( $wp_error ) )
$wp_error = new WP_Error ();
2006-10-04 12:47:50 -04:00
?>
<! DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
2006-10-07 15:12:33 -04:00
< html xmlns = " http://www.w3.org/1999/xhtml " < ? php language_attributes (); ?> >
2006-10-04 12:47:50 -04:00
< head >
< title >< ? php bloginfo ( 'name' ); ?> › <?php echo $title; ?></title>
< meta http - equiv = " Content-Type " content = " <?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?> " />
2008-01-14 04:11:41 -05:00
< link rel = 'stylesheet' href = 'wp-admin/css/login.css' type = 'text/css' />
2006-10-04 12:47:50 -04:00
< script type = " text/javascript " >
function focusit () {
document . getElementById ( 'user_login' ) . focus ();
}
window . onload = focusit ;
</ script >
< ? php do_action ( 'login_head' ); ?>
</ head >
2006-12-03 19:53:33 -05:00
< body class = " login " >
2006-10-04 12:47:50 -04:00
2007-03-20 16:39:39 -04:00
< div id = " login " >< h1 >< a href = " <?php echo apply_filters('login_headerurl', 'http://wordpress.org/'); ?> " title = " <?php echo apply_filters('login_headertitle', __('Powered by WordPress')); ?> " >< ? php bloginfo ( 'name' ); ?> </a></h1>
2006-10-04 12:47:50 -04:00
< ? php
if ( ! empty ( $message ) ) echo apply_filters ( 'login_message' , $message ) . " \n " ;
2008-01-22 14:35:19 -05:00
// Incase a plugin uses $error rather than the $errors object
2006-10-04 12:47:50 -04:00
if ( ! empty ( $error ) ) {
2008-01-22 14:35:19 -05:00
$wp_error -> add ( 'error' , $error );
2006-10-04 12:47:50 -04:00
unset ( $error );
}
2008-01-22 14:35:19 -05:00
if ( $wp_error -> get_error_code () ) {
2008-02-22 17:07:53 -05:00
$errors = '' ;
$messages = '' ;
foreach ( $wp_error -> get_error_codes () as $code ) {
$severity = $wp_error -> get_error_data ( $code );
foreach ( $wp_error -> get_error_messages ( $code ) as $error ) {
if ( 'message' == $severity )
$messages .= ' ' . $error . " <br /> \n " ;
else
$errors .= ' ' . $error . " <br /> \n " ;
}
}
if ( ! empty ( $errors ) )
echo '<div id="login_error">' . apply_filters ( 'login_errors' , $errors ) . " </div> \n " ;
if ( ! empty ( $messages ) )
echo '<p class="message">' . apply_filters ( 'login_messages' , $messages ) . " </p> \n " ;
2006-10-04 12:47:50 -04:00
}
} // End of login_header()
2008-01-22 14:35:19 -05:00
function retrieve_password () {
global $wpdb ;
$errors = new WP_Error ();
if ( empty ( $_POST [ 'user_login' ] ) && empty ( $_POST [ 'user_email' ] ) )
$errors -> add ( 'empty_username' , __ ( '<strong>ERROR</strong>: Enter a username or e-mail address.' ));
if ( strstr ( $_POST [ 'user_login' ], '@' ) ) {
$user_data = get_user_by_email ( trim ( $_POST [ 'user_login' ]));
if ( empty ( $user_data ) )
$errors -> add ( 'invalid_email' , __ ( '<strong>ERROR</strong>: There is no user registered with that email address.' ));
} else {
$login = trim ( $_POST [ 'user_login' ]);
$user_data = get_userdatabylogin ( $login );
}
do_action ( 'lostpassword_post' );
if ( $errors -> get_error_code () )
return $errors ;
2008-02-05 01:47:27 -05:00
2008-01-22 14:35:19 -05:00
if ( ! $user_data ) {
$errors -> add ( 'invalidcombo' , __ ( '<strong>ERROR</strong>: Invalid username or e-mail.' ));
return $errors ;
}
// redefining user_login ensures we return the right case in the email
$user_login = $user_data -> user_login ;
$user_email = $user_data -> user_email ;
do_action ( 'retreive_password' , $user_login ); // Misspelled and deprecated
do_action ( 'retrieve_password' , $user_login );
2008-02-25 02:34:24 -05:00
$key = $wpdb -> get_var ( " SELECT user_activation_key FROM $wpdb->users WHERE user_login = ' $user_login ' " );
if ( empty ( $key ) ) {
// Generate something random for a key...
$key = wp_generate_password ();
2008-02-25 02:41:13 -05:00
do_action ( 'retrieve_password_key' , $user_login , $key );
2008-02-25 02:34:24 -05:00
// Now insert the new md5 key into the db
$wpdb -> query ( " UPDATE $wpdb->users SET user_activation_key = ' $key ' WHERE user_login = ' $user_login ' " );
}
2008-01-22 14:35:19 -05:00
$message = __ ( 'Someone has asked to reset the password for the following site and username.' ) . " \r \n \r \n " ;
$message .= get_option ( 'siteurl' ) . " \r \n \r \n " ;
$message .= sprintf ( __ ( 'Username: %s' ), $user_login ) . " \r \n \r \n " ;
$message .= __ ( 'To reset your password visit the following address, otherwise just ignore this email and nothing will happen.' ) . " \r \n \r \n " ;
$message .= get_option ( 'siteurl' ) . " /wp-login.php?action=rp&key= $key\r\n " ;
if ( ! wp_mail ( $user_email , sprintf ( __ ( '[%s] Password Reset' ), get_option ( 'blogname' )), $message ) )
die ( '<p>' . __ ( 'The e-mail could not be sent.' ) . " <br /> \n " . __ ( 'Possible reason: your host may have disabled the mail() function...' ) . '</p>' );
return true ;
}
function reset_password ( $key ) {
global $wpdb ;
$key = preg_replace ( '/[^a-z0-9]/i' , '' , $key );
if ( empty ( $key ) )
return new WP_Error ( 'invalid_key' , __ ( 'Invalid key' ));
$user = $wpdb -> get_row ( " SELECT * FROM $wpdb->users WHERE user_activation_key = ' $key ' " );
if ( empty ( $user ) )
return new WP_Error ( 'invalid_key' , __ ( 'Invalid key' ));
2008-02-25 02:41:13 -05:00
do_action ( 'password_reset' , $user );
2008-01-22 14:35:19 -05:00
// Generate something random for a password...
$new_pass = wp_generate_password ();
wp_set_password ( $new_pass , $user -> ID );
$message = sprintf ( __ ( 'Username: %s' ), $user -> user_login ) . " \r \n " ;
$message .= sprintf ( __ ( 'Password: %s' ), $new_pass ) . " \r \n " ;
$message .= get_option ( 'siteurl' ) . " /wp-login.php \r \n " ;
if ( ! wp_mail ( $user -> user_email , sprintf ( __ ( '[%s] Your new password' ), get_option ( 'blogname' )), $message ) )
die ( '<p>' . __ ( 'The e-mail could not be sent.' ) . " <br /> \n " . __ ( 'Possible reason: your host may have disabled the mail() function...' ) . '</p>' );
// send a copy of password change notification to the admin
// but check to see if it's the admin whose password we're changing, and skip this
if ( $user -> user_email != get_option ( 'admin_email' ) ) {
$message = sprintf ( __ ( 'Password Lost and Changed for user: %s' ), $user -> user_login ) . " \r \n " ;
2008-01-25 15:58:26 -05:00
wp_mail ( get_option ( 'admin_email' ), sprintf ( __ ( '[%s] Password Lost/Changed' ), get_option ( 'blogname' )), $message );
2008-01-22 14:35:19 -05:00
}
return true ;
}
function register_new_user ( $user_login , $user_email ) {
$errors = new WP_Error ();
$user_login = sanitize_user ( $user_login );
$user_email = apply_filters ( 'user_registration_email' , $user_email );
// Check the username
if ( $user_login == '' )
$errors -> add ( 'empty_username' , __ ( '<strong>ERROR</strong>: Please enter a username.' ));
elseif ( ! validate_username ( $user_login ) ) {
$errors -> add ( 'invalid_username' , __ ( '<strong>ERROR</strong>: This username is invalid. Please enter a valid username.' ));
$user_login = '' ;
} elseif ( username_exists ( $user_login ) )
$errors -> add ( 'username_exists' , __ ( '<strong>ERROR</strong>: This username is already registered, please choose another one.' ));
// Check the e-mail address
if ( $user_email == '' ) {
$errors -> add ( 'empty_email' , __ ( '<strong>ERROR</strong>: Please type your e-mail address.' ));
} elseif ( ! is_email ( $user_email ) ) {
$errors -> add ( 'invalid_email' , __ ( '<strong>ERROR</strong>: The email address isn’t correct.' ));
$user_email = '' ;
} elseif ( email_exists ( $user_email ) )
$errors -> add ( 'email_exists' , __ ( '<strong>ERROR</strong>: This email is already registered, please choose another one.' ));
2008-02-13 13:42:07 -05:00
do_action ( 'register_post' , $user_login , $user_email , $errors );
2008-01-22 14:35:19 -05:00
$errors = apply_filters ( 'registration_errors' , $errors );
if ( $errors -> get_error_code () )
return $errors ;
$user_pass = wp_generate_password ();
$user_id = wp_create_user ( $user_login , $user_pass , $user_email );
if ( ! $user_id ) {
$errors -> add ( 'registerfail' , sprintf ( __ ( '<strong>ERROR</strong>: Couldn’t register you... please contact the <a href="mailto:%s">webmaster</a> !' ), get_option ( 'admin_email' )));
return $errors ;
}
wp_new_user_notification ( $user_id , $user_pass );
return $user_id ;
}
2008-02-05 01:47:27 -05:00
//
2008-01-22 14:35:19 -05:00
// Main
//
2008-02-02 13:42:09 -05:00
$action = isset ( $_REQUEST [ 'action' ]) ? $_REQUEST [ 'action' ] : '' ;
2008-01-22 14:35:19 -05:00
$errors = new WP_Error ();
if ( isset ( $_GET [ 'key' ]) )
$action = 'resetpass' ;
nocache_headers ();
header ( 'Content-Type: ' . get_bloginfo ( 'html_type' ) . '; charset=' . get_bloginfo ( 'charset' ));
if ( defined ( 'RELOCATE' ) ) { // Move flag is set
if ( isset ( $_SERVER [ 'PATH_INFO' ] ) && ( $_SERVER [ 'PATH_INFO' ] != $_SERVER [ 'PHP_SELF' ]) )
$_SERVER [ 'PHP_SELF' ] = str_replace ( $_SERVER [ 'PATH_INFO' ], '' , $_SERVER [ 'PHP_SELF' ] );
$schema = ( isset ( $_SERVER [ 'HTTPS' ]) && strtolower ( $_SERVER [ 'HTTPS' ]) == 'on' ) ? 'https://' : 'http://' ;
if ( dirname ( $schema . $_SERVER [ 'HTTP_HOST' ] . $_SERVER [ 'PHP_SELF' ]) != get_option ( 'siteurl' ) )
update_option ( 'siteurl' , dirname ( $schema . $_SERVER [ 'HTTP_HOST' ] . $_SERVER [ 'PHP_SELF' ]) );
}
//Set a cookie now to see if they are supported by the browser.
setcookie ( TEST_COOKIE , 'WP Cookie check' , 0 , COOKIEPATH , COOKIE_DOMAIN );
if ( SITECOOKIEPATH != COOKIEPATH )
setcookie ( TEST_COOKIE , 'WP Cookie check' , 0 , SITECOOKIEPATH , COOKIE_DOMAIN );
2007-11-27 03:03:33 -05:00
$http_post = ( 'POST' == $_SERVER [ 'REQUEST_METHOD' ]);
2006-10-04 12:47:50 -04:00
switch ( $action ) {
case 'logout' :
2003-04-01 09:12:34 -05:00
2008-01-22 14:35:19 -05:00
wp_logout ();
2005-11-10 20:35:15 -05:00
2006-10-04 12:47:50 -04:00
$redirect_to = 'wp-login.php?loggedout=true' ;
if ( isset ( $_REQUEST [ 'redirect_to' ] ) )
2006-06-27 01:38:56 -04:00
$redirect_to = $_REQUEST [ 'redirect_to' ];
2006-02-12 02:53:23 -05:00
2007-09-18 18:23:16 -04:00
wp_safe_redirect ( $redirect_to );
2003-04-01 09:12:34 -05:00
exit ();
break ;
2006-10-04 12:47:50 -04:00
case 'lostpassword' :
case 'retrievepassword' :
2007-11-27 03:03:33 -05:00
if ( $http_post ) {
2008-01-22 14:35:19 -05:00
$errors = retrieve_password ();
if ( ! is_wp_error ( $errors ) ) {
wp_redirect ( 'wp-login.php?checkemail=confirm' );
exit ();
2006-10-04 12:47:50 -04:00
}
2005-02-04 21:19:00 -05:00
}
2006-10-04 12:47:50 -04:00
2008-01-22 14:35:19 -05:00
if ( 'invalidkey' == $_GET [ 'error' ] ) $errors -> add ( 'invalidkey' , __ ( 'Sorry, that key does not appear to be valid.' ));
2006-10-04 12:47:50 -04:00
do_action ( 'lost_password' );
2008-01-22 14:35:19 -05:00
login_header ( __ ( 'Lost Password' ), '<p class="message">' . __ ( 'Please enter your username or e-mail address. You will receive a new password via e-mail.' ) . '</p>' , $errors );
2003-04-01 09:12:34 -05:00
?>
2006-10-04 12:47:50 -04:00
< form name = " lostpasswordform " id = " lostpasswordform " action = " wp-login.php?action=lostpassword " method = " post " >
< p >
2008-01-22 14:35:19 -05:00
< label >< ? php _e ( 'Username or E-mail:' ) ?> <br />
2006-12-21 05:10:04 -05:00
< input type = " text " name = " user_login " id = " user_login " class = " input " value = " <?php echo attribute_escape(stripslashes( $_POST['user_login'] )); ?> " size = " 20 " tabindex = " 10 " /></ label >
2006-10-04 12:47:50 -04:00
</ p >
< ? php do_action ( 'lostpassword_form' ); ?>
2008-02-19 19:19:01 -05:00
< p class = " submit " >< input type = " submit " name = " wp-submit " id = " wp-submit " value = " <?php _e('Get New Password'); ?> " tabindex = " 100 " /></ p >
2003-04-01 09:12:34 -05:00
</ form >
2006-12-03 19:53:33 -05:00
2008-01-14 04:11:41 -05:00
< p id = " nav " >
2006-08-30 17:46:31 -04:00
< ? php if ( get_option ( 'users_can_register' )) : ?>
2008-02-05 01:47:27 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php " >< ? php _e ( 'Log in' ) ?> </a> |
2008-01-14 04:11:41 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php?action=register " >< ? php _e ( 'Register' ) ?> </a>
2006-10-04 12:47:50 -04:00
< ? php else : ?>
2008-01-14 04:11:41 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php " >< ? php _e ( 'Log in' ) ?> </a>
2006-10-04 12:47:50 -04:00
< ? php endif ; ?>
2008-01-14 04:11:41 -05:00
</ p >
</ div >
< p id = " backtoblog " >< a href = " <?php bloginfo('url'); ?>/ " title = " <?php _e('Are you lost?') ?> " >< ? php printf ( __ ( '« Back to %s' ), get_bloginfo ( 'title' , 'display' )); ?> </a></p>
2006-12-03 19:53:33 -05:00
2003-04-01 09:12:34 -05:00
</ body >
</ html >
2004-10-04 02:23:53 -04:00
< ? php
2003-04-01 09:12:34 -05:00
break ;
2005-02-04 21:19:00 -05:00
case 'resetpass' :
2006-04-20 17:44:14 -04:00
case 'rp' :
2008-01-22 14:35:19 -05:00
$errors = reset_password ( $_GET [ 'key' ]);
2006-10-04 12:47:50 -04:00
2008-01-22 14:35:19 -05:00
if ( ! is_wp_error ( $errors ) ) {
wp_redirect ( 'wp-login.php?checkemail=newpass' );
2006-10-04 12:47:50 -04:00
exit ();
}
2005-02-04 21:19:00 -05:00
2008-01-22 14:35:19 -05:00
wp_redirect ( 'wp-login.php?action=lostpassword&error=invalidkey' );
exit ();
2006-10-04 12:47:50 -04:00
2003-04-01 09:12:34 -05:00
break ;
2006-10-04 12:47:50 -04:00
case 'register' :
2008-01-22 14:35:19 -05:00
if ( ! get_option ( 'users_can_register' ) ) {
2006-10-04 12:47:50 -04:00
wp_redirect ( 'wp-login.php?registration=disabled' );
exit ();
}
2008-01-22 14:35:19 -05:00
$user_login = '' ;
$user_email = '' ;
2007-11-27 03:03:33 -05:00
if ( $http_post ) {
2006-10-04 12:47:50 -04:00
require_once ( ABSPATH . WPINC . '/registration.php' );
2008-01-22 14:35:19 -05:00
$user_login = $_POST [ 'user_login' ];
$user_email = $_POST [ 'user_email' ];
$errors = register_new_user ( $user_login , $user_email );
if ( ! is_wp_error ( $errors ) ) {
wp_redirect ( 'wp-login.php?checkemail=registered' );
exit ();
2006-10-04 12:47:50 -04:00
}
}
2008-01-22 14:35:19 -05:00
login_header ( __ ( 'Registration Form' ), '<p class="message register">' . __ ( 'Register For This Site' ) . '</p>' , $errors );
2006-10-04 12:47:50 -04:00
?>
< form name = " registerform " id = " registerform " action = " wp-login.php?action=register " method = " post " >
< p >
2008-01-14 04:11:41 -05:00
< label >< ? php _e ( 'Username' ) ?> <br />
2006-12-21 05:10:04 -05:00
< input type = " text " name = " user_login " id = " user_login " class = " input " value = " <?php echo attribute_escape(stripslashes( $user_login )); ?> " size = " 20 " tabindex = " 10 " /></ label >
2006-10-04 12:47:50 -04:00
</ p >
< p >
2008-01-14 04:11:41 -05:00
< label >< ? php _e ( 'E-mail' ) ?> <br />
2006-12-21 05:10:04 -05:00
< input type = " text " name = " user_email " id = " user_email " class = " input " value = " <?php echo attribute_escape(stripslashes( $user_email )); ?> " size = " 25 " tabindex = " 20 " /></ label >
2006-10-04 12:47:50 -04:00
</ p >
< ? php do_action ( 'register_form' ); ?>
< p id = " reg_passmail " >< ? php _e ( 'A password will be e-mailed to you.' ) ?> </p>
2008-02-19 19:19:01 -05:00
< p class = " submit " >< input type = " submit " name = " wp-submit " id = " wp-submit " value = " <?php _e('Register'); ?> " tabindex = " 100 " /></ p >
2006-10-04 12:47:50 -04:00
</ form >
2008-01-14 04:11:41 -05:00
< p id = " nav " >
2008-02-05 01:47:27 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php " >< ? php _e ( 'Log in' ) ?> </a> |
2008-01-14 04:11:41 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php?action=lostpassword " title = " <?php _e('Password Lost and Found') ?> " >< ? php _e ( 'Lost your password?' ) ?> </a>
</ p >
2006-12-03 19:53:33 -05:00
</ div >
2008-01-14 04:11:41 -05:00
< p id = " backtoblog " >< a href = " <?php bloginfo('url'); ?>/ " title = " <?php _e('Are you lost?') ?> " >< ? php printf ( __ ( '« Back to %s' ), get_bloginfo ( 'title' , 'display' )); ?> </a></p>
2006-12-03 19:53:33 -05:00
2006-10-04 12:47:50 -04:00
</ body >
</ html >
< ? php
break ;
2006-11-19 02:56:05 -05:00
case 'login' :
2003-04-01 09:12:34 -05:00
default :
2007-03-06 12:03:50 -05:00
if ( ! isset ( $_REQUEST [ 'redirect_to' ] ) || is_user_logged_in () )
2005-09-14 16:57:21 -04:00
$redirect_to = 'wp-admin/' ;
else
$redirect_to = $_REQUEST [ 'redirect_to' ];
2004-11-27 17:54:23 -05:00
2008-01-22 14:35:19 -05:00
$user = wp_signon ();
2006-02-12 02:53:23 -05:00
2008-01-22 14:35:19 -05:00
if ( ! is_wp_error ( $user ) ) {
2005-07-14 21:24:08 -04:00
// If the user can't edit posts, send them to their profile.
2005-11-05 17:17:34 -05:00
if ( ! $user -> has_cap ( 'edit_posts' ) && ( empty ( $redirect_to ) || $redirect_to == 'wp-admin/' ) )
2008-02-05 01:47:27 -05:00
$redirect_to = get_option ( 'siteurl' ) . '/wp-admin/profile.php' ;
2008-01-22 14:35:19 -05:00
wp_safe_redirect ( $redirect_to );
exit ();
2003-06-11 02:03:41 -04:00
}
2008-02-05 01:47:27 -05:00
2008-01-22 14:35:19 -05:00
$errors = $user ;
// Clear errors if loggedout is set.
if ( ! empty ( $_GET [ 'loggedout' ]) )
$errors = new WP_Error ();
2007-02-27 10:24:54 -05:00
2008-01-22 14:35:19 -05:00
// If cookies are disabled we can't log in even with a valid user+pass
if ( isset ( $_POST [ 'testcookie' ]) && empty ( $_COOKIE [ TEST_COOKIE ]) )
$errors -> add ( 'test_cookie' , __ ( " <strong>ERROR</strong>: Cookies are blocked or not supported by your browser. You must <a href='http://www.google.com/cookies.html'>enable cookies</a> to use WordPress. " ));
2006-10-04 12:47:50 -04:00
// Some parts of this script use the main login form to display a message
2008-02-22 17:07:53 -05:00
if ( isset ( $_GET [ 'loggedout' ]) && TRUE == $_GET [ 'loggedout' ] ) $errors -> add ( 'loggedout' , __ ( 'You are now logged out.' ), 'message' );
2008-02-02 13:42:09 -05:00
elseif ( isset ( $_GET [ 'registration' ]) && 'disabled' == $_GET [ 'registration' ] ) $errors -> add ( 'registerdiabled' , __ ( 'User registration is currently not allowed.' ));
2008-02-22 17:07:53 -05:00
elseif ( isset ( $_GET [ 'checkemail' ]) && 'confirm' == $_GET [ 'checkemail' ] ) $errors -> add ( 'confirm' , __ ( 'Check your e-mail for the confirmation link.' ), 'message' );
elseif ( isset ( $_GET [ 'checkemail' ]) && 'newpass' == $_GET [ 'checkemail' ] ) $errors -> add ( 'newpass' , __ ( 'Check your e-mail for your new password.' ), 'message' );
elseif ( isset ( $_GET [ 'checkemail' ]) && 'registered' == $_GET [ 'checkemail' ] ) $errors -> add ( 'registered' , __ ( 'Registration complete. Please check your e-mail.' ), 'message' );
2006-10-04 12:47:50 -04:00
2008-01-22 14:35:19 -05:00
login_header ( __ ( 'Login' ), '' , $errors );
2003-04-01 09:12:34 -05:00
?>
2004-10-06 01:31:52 -04:00
< form name = " loginform " id = " loginform " action = " wp-login.php " method = " post " >
2008-02-02 13:42:09 -05:00
< ? php if ( ! isset ( $_GET [ 'checkemail' ]) || ! in_array ( $_GET [ 'checkemail' ], array ( 'confirm' , 'newpass' ) ) ) : ?>
2006-10-04 12:47:50 -04:00
< p >
2008-01-14 04:11:41 -05:00
< label >< ? php _e ( 'Username' ) ?> <br />
2006-12-21 05:10:04 -05:00
< input type = " text " name = " log " id = " user_login " class = " input " value = " <?php echo attribute_escape(stripslashes( $user_login )); ?> " size = " 20 " tabindex = " 10 " /></ label >
2006-10-04 12:47:50 -04:00
</ p >
< p >
2008-01-14 04:11:41 -05:00
< label >< ? php _e ( 'Password' ) ?> <br />
2006-10-06 23:02:42 -04:00
< input type = " password " name = " pwd " id = " user_pass " class = " input " value = " " size = " 20 " tabindex = " 20 " /></ label >
2006-10-04 12:47:50 -04:00
</ p >
< ? php do_action ( 'login_form' ); ?>
2008-01-14 04:11:41 -05:00
< p class = " forgetmenot " >< label >< input name = " rememberme " type = " checkbox " id = " rememberme " value = " forever " tabindex = " 90 " /> < ? php _e ( 'Remember Me' ); ?> </label></p>
2006-10-04 12:47:50 -04:00
< p class = " submit " >
2008-02-19 19:19:01 -05:00
< input type = " submit " name = " wp-submit " id = " wp-submit " value = " <?php _e('Log in'); ?> " tabindex = " 100 " />
2006-12-21 05:10:04 -05:00
< input type = " hidden " name = " redirect_to " value = " <?php echo attribute_escape( $redirect_to ); ?> " />
2008-01-22 14:35:19 -05:00
< input type = " hidden " name = " testcookie " value = " 1 " />
2006-10-04 12:47:50 -04:00
</ p >
2007-07-15 13:50:38 -04:00
< ? php else : ?>
< p >& nbsp ; </ p >
< ? php endif ; ?>
2003-04-01 09:12:34 -05:00
</ form >
2006-12-03 19:53:33 -05:00
2008-01-14 04:11:41 -05:00
< p id = " nav " >
2008-02-02 13:42:09 -05:00
< ? php if ( isset ( $_GET [ 'checkemail' ]) && in_array ( $_GET [ 'checkemail' ], array ( 'confirm' , 'newpass' ) ) ) : ?>
2007-07-15 13:50:38 -04:00
< ? php elseif ( get_option ( 'users_can_register' )) : ?>
2008-01-14 04:11:41 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php?action=register " >< ? php _e ( 'Register' ) ?> </a> |
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php?action=lostpassword " title = " <?php _e('Password Lost and Found') ?> " >< ? php _e ( 'Lost your password?' ) ?> </a>
2006-10-04 12:47:50 -04:00
< ? php else : ?>
2008-01-14 04:11:41 -05:00
< a href = " <?php bloginfo('wpurl'); ?>/wp-login.php?action=lostpassword " title = " <?php _e('Password Lost and Found') ?> " >< ? php _e ( 'Lost your password?' ) ?> </a>
2006-10-04 12:47:50 -04:00
< ? php endif ; ?>
2008-01-14 04:11:41 -05:00
</ p >
2006-12-03 19:53:33 -05:00
2008-01-14 04:11:41 -05:00
</ div >
< p id = " backtoblog " >< a href = " <?php bloginfo('url'); ?>/ " title = " <?php _e('Are you lost?') ?> " >< ? php printf ( __ ( '« Back to %s' ), get_bloginfo ( 'title' , 'display' )); ?> </a></p>
2003-04-01 09:12:34 -05:00
</ body >
</ html >
2003-06-11 02:03:41 -04:00
< ? php
2003-04-01 09:12:34 -05:00
break ;
2003-06-11 02:03:41 -04:00
} // end action switch
2008-02-25 02:41:13 -05:00
?>