Version Description
- Fix multiple widget custom redirect error
- Add autocomplete="off" to login form password field
- Fix password reset process
- Fix SSL admin JS
Download this release
Release Info
Developer | jfarthing84 |
Plugin | Theme My Login |
Version | 6.3.12 |
Comparing to | |
See all releases |
Code changes from version 6.3.11 to 6.3.12
- admin/class-theme-my-login-admin.php +1 -1
- includes/class-theme-my-login.php +57 -51
- language/theme-my-login.pot +43 -42
- modules/custom-redirection/custom-redirection.php +1 -2
- readme.txt +7 -1
- templates/login-form.php +1 -1
- templates/resetpass-form.php +2 -2
- theme-my-login.php +1 -1
admin/class-theme-my-login-admin.php
CHANGED
@@ -113,7 +113,7 @@ class Theme_My_Login_Admin extends Theme_My_Login_Abstract {
|
|
113 |
* @access public
|
114 |
*/
|
115 |
public function admin_enqueue_scripts() {
|
116 |
-
wp_enqueue_script( 'theme-my-login-admin',
|
117 |
wp_localize_script( 'theme-my-login-admin', 'tmlAdmin', array(
|
118 |
'interim_login_url' => site_url( 'wp-login.php?interim-login=1', 'login' )
|
119 |
) );
|
113 |
* @access public
|
114 |
*/
|
115 |
public function admin_enqueue_scripts() {
|
116 |
+
wp_enqueue_script( 'theme-my-login-admin', plugins_url( 'theme-my-login/admin/js/theme-my-login-admin.js' ), array( 'jquery' ), Theme_My_Login::version, true );
|
117 |
wp_localize_script( 'theme-my-login-admin', 'tmlAdmin', array(
|
118 |
'interim_login_url' => site_url( 'wp-login.php?interim-login=1', 'login' )
|
119 |
) );
|
includes/class-theme-my-login.php
CHANGED
@@ -21,7 +21,7 @@ class Theme_My_Login extends Theme_My_Login_Abstract {
|
|
21 |
* @since 6.3.2
|
22 |
* @const string
|
23 |
*/
|
24 |
-
const version = '6.3.
|
25 |
|
26 |
/**
|
27 |
* Holds options key
|
@@ -298,26 +298,56 @@ class Theme_My_Login extends Theme_My_Login_Abstract {
|
|
298 |
}
|
299 |
}
|
300 |
|
301 |
-
if ( isset( $_REQUEST['error'] )
|
302 |
-
|
|
|
|
|
|
|
|
|
303 |
|
304 |
do_action( 'lost_password' );
|
305 |
break;
|
306 |
case 'resetpass' :
|
307 |
case 'rp' :
|
308 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
309 |
|
310 |
-
if (
|
311 |
-
$
|
312 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
313 |
exit;
|
314 |
}
|
315 |
|
316 |
-
if ( isset( $_POST['pass1'] ) && $_POST['pass1'] != $_POST['pass2'] )
|
317 |
$this->errors->add( 'password_reset_mismatch', __( 'The passwords do not match.', 'theme-my-login' ) );
|
318 |
-
} elseif ( isset( $_POST['pass1'] ) && ! empty( $_POST['pass1'] ) ) {
|
319 |
-
self::reset_password( $user, $_POST['pass1'] );
|
320 |
|
|
|
|
|
|
|
|
|
|
|
321 |
$redirect_to = site_url( 'wp-login.php?resetpass=complete' );
|
322 |
wp_safe_redirect( $redirect_to );
|
323 |
exit;
|
@@ -1021,7 +1051,7 @@ if(typeof wpOnload=='function')wpOnload()
|
|
1021 |
* @return bool|WP_Error True: when finish. WP_Error on error
|
1022 |
*/
|
1023 |
public static function retrieve_password() {
|
1024 |
-
global $wpdb, $
|
1025 |
|
1026 |
$errors = new WP_Error();
|
1027 |
|
@@ -1060,14 +1090,19 @@ if(typeof wpOnload=='function')wpOnload()
|
|
1060 |
else if ( is_wp_error( $allow ) )
|
1061 |
return $allow;
|
1062 |
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
|
|
|
|
1070 |
}
|
|
|
|
|
|
|
1071 |
$message = __( 'Someone requested that the password be reset for the following account:', 'theme-my-login' ) . "\r\n\r\n";
|
1072 |
$message .= network_home_url( '/' ) . "\r\n\r\n";
|
1073 |
$message .= sprintf( __( 'Username: %s', 'theme-my-login' ), $user_login ) . "\r\n\r\n";
|
@@ -1076,7 +1111,7 @@ if(typeof wpOnload=='function')wpOnload()
|
|
1076 |
$message .= '<' . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), 'login' ) . ">\r\n";
|
1077 |
|
1078 |
if ( is_multisite() ) {
|
1079 |
-
$blogname = $current_site->site_name;
|
1080 |
} else {
|
1081 |
// The blogname option is escaped with esc_html on the way into the database in sanitize_option
|
1082 |
// we want to reverse this for the plain text arena of emails.
|
@@ -1094,37 +1129,6 @@ if(typeof wpOnload=='function')wpOnload()
|
|
1094 |
return true;
|
1095 |
}
|
1096 |
|
1097 |
-
/**
|
1098 |
-
* Retrieves a user row based on password reset key and login
|
1099 |
-
*
|
1100 |
-
* @since 6.1.1
|
1101 |
-
* @access public
|
1102 |
-
* @uses $wpdb WordPress Database object
|
1103 |
-
*
|
1104 |
-
* @param string $key Hash to validate sending user's password
|
1105 |
-
* @param string $login The user login
|
1106 |
-
*
|
1107 |
-
* @return object|WP_Error
|
1108 |
-
*/
|
1109 |
-
public static function check_password_reset_key( $key, $login ) {
|
1110 |
-
global $wpdb;
|
1111 |
-
|
1112 |
-
$key = preg_replace( '/[^a-z0-9]/i', '', $key );
|
1113 |
-
|
1114 |
-
if ( empty( $key ) || ! is_string( $key ) )
|
1115 |
-
return new WP_Error( 'invalid_key', __( 'Invalid key', 'theme-my-login' ) );
|
1116 |
-
|
1117 |
-
if ( empty( $login ) || ! is_string( $login ) )
|
1118 |
-
return new WP_Error( 'invalid_key', __( 'Invalid key', 'theme-my-login' ) );
|
1119 |
-
|
1120 |
-
$user = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->users WHERE user_activation_key = %s AND user_login = %s", $key, $login ) );
|
1121 |
-
|
1122 |
-
if ( empty( $user ) )
|
1123 |
-
return new WP_Error( 'invalid_key', __( 'Invalid key', 'theme-my-login' ) );
|
1124 |
-
|
1125 |
-
return $user;
|
1126 |
-
}
|
1127 |
-
|
1128 |
/**
|
1129 |
* Handles resetting the user's password.
|
1130 |
*
|
@@ -1132,12 +1136,14 @@ if(typeof wpOnload=='function')wpOnload()
|
|
1132 |
* @access public
|
1133 |
* @uses $wpdb WordPress Database object
|
1134 |
*
|
1135 |
-
* @param
|
|
|
1136 |
*/
|
1137 |
public static function reset_password( $user, $new_pass ) {
|
1138 |
do_action( 'password_reset', $user, $new_pass );
|
1139 |
|
1140 |
wp_set_password( $new_pass, $user->ID );
|
|
|
1141 |
|
1142 |
do_action_ref_array( 'tml_user_password_changed', array( &$user ) );
|
1143 |
}
|
21 |
* @since 6.3.2
|
22 |
* @const string
|
23 |
*/
|
24 |
+
const version = '6.3.12';
|
25 |
|
26 |
/**
|
27 |
* Holds options key
|
298 |
}
|
299 |
}
|
300 |
|
301 |
+
if ( isset( $_REQUEST['error'] ) ) {
|
302 |
+
if ( 'invalidkey' == $_REQUEST['error'] )
|
303 |
+
$this->errors->add( 'invalidkey', __( 'Sorry, that key does not appear to be valid.', 'theme-my-login' ) );
|
304 |
+
elseif ( 'expiredkey' == $_REQUEST['error'] )
|
305 |
+
$this->errors->add( 'expiredkey', __( 'Sorry, that key has expired. Please try again.', 'theme-my-login' ) );
|
306 |
+
}
|
307 |
|
308 |
do_action( 'lost_password' );
|
309 |
break;
|
310 |
case 'resetpass' :
|
311 |
case 'rp' :
|
312 |
+
// Dirty hack for now
|
313 |
+
global $rp_login, $rp_key;
|
314 |
+
|
315 |
+
list( $rp_path ) = explode( '?', wp_unslash( $_SERVER['REQUEST_URI'] ) );
|
316 |
+
$rp_cookie = 'wp-resetpass-' . COOKIEHASH;
|
317 |
+
if ( isset( $_GET['key'] ) ) {
|
318 |
+
$value = sprintf( '%s:%s', wp_unslash( $_GET['login'] ), wp_unslash( $_GET['key'] ) );
|
319 |
+
setcookie( $rp_cookie, $value, 0, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
320 |
+
wp_safe_redirect( remove_query_arg( array( 'key', 'login' ) ) );
|
321 |
+
exit;
|
322 |
+
}
|
323 |
|
324 |
+
if ( isset( $_COOKIE[ $rp_cookie ] ) && 0 < strpos( $_COOKIE[ $rp_cookie ], ':' ) ) {
|
325 |
+
list( $rp_login, $rp_key ) = explode( ':', wp_unslash( $_COOKIE[ $rp_cookie ] ), 2 );
|
326 |
+
$user = check_password_reset_key( $rp_key, $rp_login );
|
327 |
+
if ( isset( $_POST['pass1'] ) && ! hash_equals( $rp_key, $_POST['rp_key'] ) ) {
|
328 |
+
$user = false;
|
329 |
+
}
|
330 |
+
} else {
|
331 |
+
$user = false;
|
332 |
+
}
|
333 |
+
|
334 |
+
if ( ! $user || is_wp_error( $user ) ) {
|
335 |
+
setcookie( $rp_cookie, ' ', time() - YEAR_IN_SECONDS, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
336 |
+
if ( $user && $user->get_error_code() === 'expired_key' )
|
337 |
+
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=expiredkey' ) );
|
338 |
+
else
|
339 |
+
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=invalidkey' ) );
|
340 |
exit;
|
341 |
}
|
342 |
|
343 |
+
if ( isset( $_POST['pass1'] ) && $_POST['pass1'] != $_POST['pass2'] )
|
344 |
$this->errors->add( 'password_reset_mismatch', __( 'The passwords do not match.', 'theme-my-login' ) );
|
|
|
|
|
345 |
|
346 |
+
do_action( 'validate_password_reset', $this->errors, $user );
|
347 |
+
|
348 |
+
if ( ( ! $this->errors->get_error_code() ) && isset( $_POST['pass1'] ) && ! empty( $_POST['pass1'] ) ) {
|
349 |
+
self::reset_password( $user, $_POST['pass1'] );
|
350 |
+
setcookie( $rp_cookie, ' ', time() - YEAR_IN_SECONDS, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
351 |
$redirect_to = site_url( 'wp-login.php?resetpass=complete' );
|
352 |
wp_safe_redirect( $redirect_to );
|
353 |
exit;
|
1051 |
* @return bool|WP_Error True: when finish. WP_Error on error
|
1052 |
*/
|
1053 |
public static function retrieve_password() {
|
1054 |
+
global $wpdb, $wp_hasher;
|
1055 |
|
1056 |
$errors = new WP_Error();
|
1057 |
|
1090 |
else if ( is_wp_error( $allow ) )
|
1091 |
return $allow;
|
1092 |
|
1093 |
+
// Generate something random for a password reset key.
|
1094 |
+
$key = wp_generate_password( 20, false );
|
1095 |
+
|
1096 |
+
do_action( 'retrieve_password_key', $user_login, $key );
|
1097 |
+
|
1098 |
+
// Now insert the key, hashed, into the DB.
|
1099 |
+
if ( empty( $wp_hasher ) ) {
|
1100 |
+
require_once ABSPATH . WPINC . '/class-phpass.php';
|
1101 |
+
$wp_hasher = new PasswordHash( 8, true );
|
1102 |
}
|
1103 |
+
$hashed = $wp_hasher->HashPassword( $key );
|
1104 |
+
$wpdb->update( $wpdb->users, array( 'user_activation_key' => $hashed ), array( 'user_login' => $user_login ) );
|
1105 |
+
|
1106 |
$message = __( 'Someone requested that the password be reset for the following account:', 'theme-my-login' ) . "\r\n\r\n";
|
1107 |
$message .= network_home_url( '/' ) . "\r\n\r\n";
|
1108 |
$message .= sprintf( __( 'Username: %s', 'theme-my-login' ), $user_login ) . "\r\n\r\n";
|
1111 |
$message .= '<' . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), 'login' ) . ">\r\n";
|
1112 |
|
1113 |
if ( is_multisite() ) {
|
1114 |
+
$blogname = $GLOBALS['current_site']->site_name;
|
1115 |
} else {
|
1116 |
// The blogname option is escaped with esc_html on the way into the database in sanitize_option
|
1117 |
// we want to reverse this for the plain text arena of emails.
|
1129 |
return true;
|
1130 |
}
|
1131 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1132 |
/**
|
1133 |
* Handles resetting the user's password.
|
1134 |
*
|
1136 |
* @access public
|
1137 |
* @uses $wpdb WordPress Database object
|
1138 |
*
|
1139 |
+
* @param WP_User $user The user
|
1140 |
+
* @param string $new_pass New password for the user
|
1141 |
*/
|
1142 |
public static function reset_password( $user, $new_pass ) {
|
1143 |
do_action( 'password_reset', $user, $new_pass );
|
1144 |
|
1145 |
wp_set_password( $new_pass, $user->ID );
|
1146 |
+
update_user_option( $user->ID, 'default_password_nag', false, true );
|
1147 |
|
1148 |
do_action_ref_array( 'tml_user_password_changed', array( &$user ) );
|
1149 |
}
|
language/theme-my-login.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the same license as the Theme My Login package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Theme My Login 6.3.
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/theme-my-login\n"
|
7 |
-
"POT-Creation-Date: 2015-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -318,7 +318,7 @@ msgstr ""
|
|
318 |
msgid "A login form for your blog."
|
319 |
msgstr ""
|
320 |
|
321 |
-
#. #-#-#-#-# plugin.pot (Theme My Login 6.3.
|
322 |
#. Plugin Name of the plugin/theme
|
323 |
#: includes/class-theme-my-login-widget.php:26
|
324 |
msgid "Theme My Login"
|
@@ -374,70 +374,74 @@ msgstr ""
|
|
374 |
msgid "Reset Password"
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: includes/class-theme-my-login.php:
|
378 |
msgid "Sorry, that key does not appear to be valid."
|
379 |
msgstr ""
|
380 |
|
381 |
-
#: includes/class-theme-my-login.php:
|
|
|
|
|
|
|
|
|
382 |
msgid "The passwords do not match."
|
383 |
msgstr ""
|
384 |
|
385 |
-
#: includes/class-theme-my-login.php:
|
386 |
msgid "You are now logged out."
|
387 |
msgstr ""
|
388 |
|
389 |
-
#: includes/class-theme-my-login.php:
|
390 |
msgid "User registration is currently not allowed."
|
391 |
msgstr ""
|
392 |
|
393 |
-
#: includes/class-theme-my-login.php:
|
394 |
msgid "Check your e-mail for the confirmation link."
|
395 |
msgstr ""
|
396 |
|
397 |
-
#: includes/class-theme-my-login.php:
|
398 |
msgid "Your password has been reset."
|
399 |
msgstr ""
|
400 |
|
401 |
-
#: includes/class-theme-my-login.php:
|
402 |
msgid "Registration complete. Please check your e-mail."
|
403 |
msgstr ""
|
404 |
|
405 |
-
#: includes/class-theme-my-login.php:
|
406 |
msgid "Your session has expired. Please log-in again."
|
407 |
msgstr ""
|
408 |
|
409 |
-
#: includes/class-theme-my-login.php:
|
410 |
msgid ""
|
411 |
"<strong>You have successfully updated WordPress!</strong> Please log back in "
|
412 |
"to experience the awesomeness."
|
413 |
msgstr ""
|
414 |
|
415 |
-
#: includes/class-theme-my-login.php:
|
416 |
msgid "Please log in to continue."
|
417 |
msgstr ""
|
418 |
|
419 |
-
#: includes/class-theme-my-login.php:
|
420 |
msgid "<strong>ERROR</strong>: Enter a username or e-mail address."
|
421 |
msgstr ""
|
422 |
|
423 |
-
#: includes/class-theme-my-login.php:
|
424 |
msgid ""
|
425 |
"<strong>ERROR</strong>: There is no user registered with that email address."
|
426 |
msgstr ""
|
427 |
|
428 |
-
#: includes/class-theme-my-login.php:
|
429 |
msgid "<strong>ERROR</strong>: Invalid username or e-mail."
|
430 |
msgstr ""
|
431 |
|
432 |
-
#: includes/class-theme-my-login.php:
|
433 |
msgid "Password reset is not allowed for this user"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: includes/class-theme-my-login.php:
|
437 |
msgid "Someone requested that the password be reset for the following account:"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: includes/class-theme-my-login.php:
|
441 |
#: modules/custom-email/custom-email.php:809
|
442 |
#: modules/custom-email/custom-email.php:826
|
443 |
#: modules/user-moderation/admin/user-moderation-admin.php:376
|
@@ -445,74 +449,63 @@ msgstr ""
|
|
445 |
msgid "Username: %s"
|
446 |
msgstr ""
|
447 |
|
448 |
-
#: includes/class-theme-my-login.php:
|
449 |
msgid "If this was a mistake, just ignore this email and nothing will happen."
|
450 |
msgstr ""
|
451 |
|
452 |
-
#: includes/class-theme-my-login.php:
|
453 |
msgid "To reset your password, visit the following address:"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: includes/class-theme-my-login.php:
|
457 |
msgid "[%s] Password Reset"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: includes/class-theme-my-login.php:
|
461 |
#: modules/user-moderation/admin/user-moderation-admin.php:252
|
462 |
#: modules/user-moderation/admin/user-moderation-admin.php:386
|
463 |
#: modules/user-moderation/admin/user-moderation-admin.php:425
|
464 |
msgid "The e-mail could not be sent."
|
465 |
msgstr ""
|
466 |
|
467 |
-
#: includes/class-theme-my-login.php:
|
468 |
#: modules/user-moderation/admin/user-moderation-admin.php:252
|
469 |
#: modules/user-moderation/admin/user-moderation-admin.php:386
|
470 |
#: modules/user-moderation/admin/user-moderation-admin.php:425
|
471 |
msgid "Possible reason: your host may have disabled the mail() function..."
|
472 |
msgstr ""
|
473 |
|
474 |
-
#: includes/class-theme-my-login.php:
|
475 |
-
#: includes/class-theme-my-login.php:1118
|
476 |
-
#: includes/class-theme-my-login.php:1123 modules/security/security.php:180
|
477 |
-
#: modules/security/security.php:183 modules/security/security.php:186
|
478 |
-
#: modules/security/security.php:189
|
479 |
-
#: modules/user-moderation/user-moderation.php:354
|
480 |
-
#: modules/user-moderation/user-moderation.php:357
|
481 |
-
#: modules/user-moderation/user-moderation.php:362
|
482 |
-
msgid "Invalid key"
|
483 |
-
msgstr ""
|
484 |
-
|
485 |
-
#: includes/class-theme-my-login.php:1163
|
486 |
msgid "<strong>ERROR</strong>: Please enter a username."
|
487 |
msgstr ""
|
488 |
|
489 |
-
#: includes/class-theme-my-login.php:
|
490 |
msgid ""
|
491 |
"<strong>ERROR</strong>: This username is invalid because it uses illegal "
|
492 |
"characters. Please enter a valid username."
|
493 |
msgstr ""
|
494 |
|
495 |
-
#: includes/class-theme-my-login.php:
|
496 |
msgid ""
|
497 |
"<strong>ERROR</strong>: This username is already registered, please choose "
|
498 |
"another one."
|
499 |
msgstr ""
|
500 |
|
501 |
-
#: includes/class-theme-my-login.php:
|
502 |
msgid "<strong>ERROR</strong>: Please type your e-mail address."
|
503 |
msgstr ""
|
504 |
|
505 |
-
#: includes/class-theme-my-login.php:
|
506 |
msgid "<strong>ERROR</strong>: The email address isn’t correct."
|
507 |
msgstr ""
|
508 |
|
509 |
-
#: includes/class-theme-my-login.php:
|
510 |
msgid ""
|
511 |
"<strong>ERROR</strong>: This email is already registered, please choose "
|
512 |
"another one."
|
513 |
msgstr ""
|
514 |
|
515 |
-
#: includes/class-theme-my-login.php:
|
516 |
msgid ""
|
517 |
"<strong>ERROR</strong>: Couldn’t register you... please contact the <a "
|
518 |
"href=\"mailto:%s\">webmaster</a> !"
|
@@ -1031,6 +1024,14 @@ msgstr ""
|
|
1031 |
msgid "Your account has been unlocked. You may now log in."
|
1032 |
msgstr ""
|
1033 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1034 |
#: modules/security/security.php:221 modules/security/security.php:244
|
1035 |
msgid ""
|
1036 |
"<strong>ERROR</strong>: This account has been locked because of too many "
|
2 |
# This file is distributed under the same license as the Theme My Login package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Theme My Login 6.3.12\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/theme-my-login\n"
|
7 |
+
"POT-Creation-Date: 2015-05-07 15:33:02+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
318 |
msgid "A login form for your blog."
|
319 |
msgstr ""
|
320 |
|
321 |
+
#. #-#-#-#-# plugin.pot (Theme My Login 6.3.11) #-#-#-#-#
|
322 |
#. Plugin Name of the plugin/theme
|
323 |
#: includes/class-theme-my-login-widget.php:26
|
324 |
msgid "Theme My Login"
|
374 |
msgid "Reset Password"
|
375 |
msgstr ""
|
376 |
|
377 |
+
#: includes/class-theme-my-login.php:303
|
378 |
msgid "Sorry, that key does not appear to be valid."
|
379 |
msgstr ""
|
380 |
|
381 |
+
#: includes/class-theme-my-login.php:305
|
382 |
+
msgid "Sorry, that key has expired. Please try again."
|
383 |
+
msgstr ""
|
384 |
+
|
385 |
+
#: includes/class-theme-my-login.php:344
|
386 |
msgid "The passwords do not match."
|
387 |
msgstr ""
|
388 |
|
389 |
+
#: includes/class-theme-my-login.php:442
|
390 |
msgid "You are now logged out."
|
391 |
msgstr ""
|
392 |
|
393 |
+
#: includes/class-theme-my-login.php:444
|
394 |
msgid "User registration is currently not allowed."
|
395 |
msgstr ""
|
396 |
|
397 |
+
#: includes/class-theme-my-login.php:446
|
398 |
msgid "Check your e-mail for the confirmation link."
|
399 |
msgstr ""
|
400 |
|
401 |
+
#: includes/class-theme-my-login.php:448
|
402 |
msgid "Your password has been reset."
|
403 |
msgstr ""
|
404 |
|
405 |
+
#: includes/class-theme-my-login.php:450
|
406 |
msgid "Registration complete. Please check your e-mail."
|
407 |
msgstr ""
|
408 |
|
409 |
+
#: includes/class-theme-my-login.php:452
|
410 |
msgid "Your session has expired. Please log-in again."
|
411 |
msgstr ""
|
412 |
|
413 |
+
#: includes/class-theme-my-login.php:454
|
414 |
msgid ""
|
415 |
"<strong>You have successfully updated WordPress!</strong> Please log back in "
|
416 |
"to experience the awesomeness."
|
417 |
msgstr ""
|
418 |
|
419 |
+
#: includes/class-theme-my-login.php:456
|
420 |
msgid "Please log in to continue."
|
421 |
msgstr ""
|
422 |
|
423 |
+
#: includes/class-theme-my-login.php:1059
|
424 |
msgid "<strong>ERROR</strong>: Enter a username or e-mail address."
|
425 |
msgstr ""
|
426 |
|
427 |
+
#: includes/class-theme-my-login.php:1063
|
428 |
msgid ""
|
429 |
"<strong>ERROR</strong>: There is no user registered with that email address."
|
430 |
msgstr ""
|
431 |
|
432 |
+
#: includes/class-theme-my-login.php:1075
|
433 |
msgid "<strong>ERROR</strong>: Invalid username or e-mail."
|
434 |
msgstr ""
|
435 |
|
436 |
+
#: includes/class-theme-my-login.php:1089
|
437 |
msgid "Password reset is not allowed for this user"
|
438 |
msgstr ""
|
439 |
|
440 |
+
#: includes/class-theme-my-login.php:1106
|
441 |
msgid "Someone requested that the password be reset for the following account:"
|
442 |
msgstr ""
|
443 |
|
444 |
+
#: includes/class-theme-my-login.php:1108
|
445 |
#: modules/custom-email/custom-email.php:809
|
446 |
#: modules/custom-email/custom-email.php:826
|
447 |
#: modules/user-moderation/admin/user-moderation-admin.php:376
|
449 |
msgid "Username: %s"
|
450 |
msgstr ""
|
451 |
|
452 |
+
#: includes/class-theme-my-login.php:1109
|
453 |
msgid "If this was a mistake, just ignore this email and nothing will happen."
|
454 |
msgstr ""
|
455 |
|
456 |
+
#: includes/class-theme-my-login.php:1110
|
457 |
msgid "To reset your password, visit the following address:"
|
458 |
msgstr ""
|
459 |
|
460 |
+
#: includes/class-theme-my-login.php:1121
|
461 |
msgid "[%s] Password Reset"
|
462 |
msgstr ""
|
463 |
|
464 |
+
#: includes/class-theme-my-login.php:1127
|
465 |
#: modules/user-moderation/admin/user-moderation-admin.php:252
|
466 |
#: modules/user-moderation/admin/user-moderation-admin.php:386
|
467 |
#: modules/user-moderation/admin/user-moderation-admin.php:425
|
468 |
msgid "The e-mail could not be sent."
|
469 |
msgstr ""
|
470 |
|
471 |
+
#: includes/class-theme-my-login.php:1127
|
472 |
#: modules/user-moderation/admin/user-moderation-admin.php:252
|
473 |
#: modules/user-moderation/admin/user-moderation-admin.php:386
|
474 |
#: modules/user-moderation/admin/user-moderation-admin.php:425
|
475 |
msgid "Possible reason: your host may have disabled the mail() function..."
|
476 |
msgstr ""
|
477 |
|
478 |
+
#: includes/class-theme-my-login.php:1169
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
479 |
msgid "<strong>ERROR</strong>: Please enter a username."
|
480 |
msgstr ""
|
481 |
|
482 |
+
#: includes/class-theme-my-login.php:1171
|
483 |
msgid ""
|
484 |
"<strong>ERROR</strong>: This username is invalid because it uses illegal "
|
485 |
"characters. Please enter a valid username."
|
486 |
msgstr ""
|
487 |
|
488 |
+
#: includes/class-theme-my-login.php:1174
|
489 |
msgid ""
|
490 |
"<strong>ERROR</strong>: This username is already registered, please choose "
|
491 |
"another one."
|
492 |
msgstr ""
|
493 |
|
494 |
+
#: includes/class-theme-my-login.php:1179
|
495 |
msgid "<strong>ERROR</strong>: Please type your e-mail address."
|
496 |
msgstr ""
|
497 |
|
498 |
+
#: includes/class-theme-my-login.php:1181
|
499 |
msgid "<strong>ERROR</strong>: The email address isn’t correct."
|
500 |
msgstr ""
|
501 |
|
502 |
+
#: includes/class-theme-my-login.php:1184
|
503 |
msgid ""
|
504 |
"<strong>ERROR</strong>: This email is already registered, please choose "
|
505 |
"another one."
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: includes/class-theme-my-login.php:1197
|
509 |
msgid ""
|
510 |
"<strong>ERROR</strong>: Couldn’t register you... please contact the <a "
|
511 |
"href=\"mailto:%s\">webmaster</a> !"
|
1024 |
msgid "Your account has been unlocked. You may now log in."
|
1025 |
msgstr ""
|
1026 |
|
1027 |
+
#: modules/security/security.php:180 modules/security/security.php:183
|
1028 |
+
#: modules/security/security.php:186 modules/security/security.php:189
|
1029 |
+
#: modules/user-moderation/user-moderation.php:354
|
1030 |
+
#: modules/user-moderation/user-moderation.php:357
|
1031 |
+
#: modules/user-moderation/user-moderation.php:362
|
1032 |
+
msgid "Invalid key"
|
1033 |
+
msgstr ""
|
1034 |
+
|
1035 |
#: modules/security/security.php:221 modules/security/security.php:244
|
1036 |
msgid ""
|
1037 |
"<strong>ERROR</strong>: This account has been locked because of too many "
|
modules/custom-redirection/custom-redirection.php
CHANGED
@@ -89,8 +89,7 @@ class Theme_My_Login_Custom_Redirection extends Theme_My_Login_Abstract {
|
|
89 |
* @access public
|
90 |
*/
|
91 |
public function login_form() {
|
92 |
-
|
93 |
-
echo wp_original_referer_field( false, $template->get_option( 'instance' ) ? 'current' : 'previous' ) . "\n";
|
94 |
}
|
95 |
|
96 |
/**
|
89 |
* @access public
|
90 |
*/
|
91 |
public function login_form() {
|
92 |
+
echo wp_original_referer_field( false, Theme_My_Login::is_tml_page() ? 'previous' : 'current' ) . "\n";
|
|
|
93 |
}
|
94 |
|
95 |
/**
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: jfarthing84
|
|
3 |
Tags: widget, login, registration, theme, custom, log in, register, sidebar, gravatar, redirection, e-mail
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 4.2
|
6 |
-
Stable tag: 6.3.
|
7 |
|
8 |
Themes the WordPress login pages according to your theme.
|
9 |
|
@@ -56,6 +56,12 @@ Please visit http://www.jfarthing.com/development/theme-my-login.
|
|
56 |
|
57 |
== Changelog ==
|
58 |
|
|
|
|
|
|
|
|
|
|
|
|
|
59 |
= 6.3.11 =
|
60 |
* Fix interim login
|
61 |
* Fix partial translations
|
3 |
Tags: widget, login, registration, theme, custom, log in, register, sidebar, gravatar, redirection, e-mail
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 4.2
|
6 |
+
Stable tag: 6.3.12
|
7 |
|
8 |
Themes the WordPress login pages according to your theme.
|
9 |
|
56 |
|
57 |
== Changelog ==
|
58 |
|
59 |
+
= 6.3.12 =
|
60 |
+
* Fix multiple widget custom redirect error
|
61 |
+
* Add autocomplete="off" to login form password field
|
62 |
+
* Fix password reset process
|
63 |
+
* Fix SSL admin JS
|
64 |
+
|
65 |
= 6.3.11 =
|
66 |
* Fix interim login
|
67 |
* Fix partial translations
|
templates/login-form.php
CHANGED
@@ -14,7 +14,7 @@ Theme My Login will always look in your theme's directory first, before using th
|
|
14 |
</p>
|
15 |
<p>
|
16 |
<label for="user_pass<?php $template->the_instance(); ?>"><?php _e( 'Password', 'theme-my-login' ); ?></label>
|
17 |
-
<input type="password" name="pwd" id="user_pass<?php $template->the_instance(); ?>" class="input" value="" size="20" />
|
18 |
</p>
|
19 |
|
20 |
<?php do_action( 'login_form' ); ?>
|
14 |
</p>
|
15 |
<p>
|
16 |
<label for="user_pass<?php $template->the_instance(); ?>"><?php _e( 'Password', 'theme-my-login' ); ?></label>
|
17 |
+
<input type="password" name="pwd" id="user_pass<?php $template->the_instance(); ?>" class="input" value="" size="20" autocomplete="off" />
|
18 |
</p>
|
19 |
|
20 |
<?php do_action( 'login_form' ); ?>
|
templates/resetpass-form.php
CHANGED
@@ -26,8 +26,8 @@ Theme My Login will always look in your theme's directory first, before using th
|
|
26 |
|
27 |
<p class="submit">
|
28 |
<input type="submit" name="wp-submit" id="wp-submit<?php $template->the_instance(); ?>" value="<?php esc_attr_e( 'Reset Password', 'theme-my-login' ); ?>" />
|
29 |
-
<input type="hidden"
|
30 |
-
<input type="hidden" name="
|
31 |
<input type="hidden" name="instance" value="<?php $template->the_instance(); ?>" />
|
32 |
<input type="hidden" name="action" value="resetpass" />
|
33 |
</p>
|
26 |
|
27 |
<p class="submit">
|
28 |
<input type="submit" name="wp-submit" id="wp-submit<?php $template->the_instance(); ?>" value="<?php esc_attr_e( 'Reset Password', 'theme-my-login' ); ?>" />
|
29 |
+
<input type="hidden" id="user_login" value="<?php echo esc_attr( $GLOBALS['rp_login'] ); ?>" autocomplete="off" />
|
30 |
+
<input type="hidden" name="rp_key" value="<?php echo esc_attr( $GLOBALS['rp_key'] ); ?>" />
|
31 |
<input type="hidden" name="instance" value="<?php $template->the_instance(); ?>" />
|
32 |
<input type="hidden" name="action" value="resetpass" />
|
33 |
</p>
|
theme-my-login.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Theme My Login
|
4 |
Plugin URI: http://www.jfarthing.com/extend/wordpress-plugins/theme-my-login/
|
5 |
Description: Themes the WordPress login, registration and forgot password pages according to your theme.
|
6 |
-
Version: 6.3.
|
7 |
Author: Jeff Farthing
|
8 |
Author URI: http://www.jfarthing.com
|
9 |
Text Domain: theme-my-login
|
3 |
Plugin Name: Theme My Login
|
4 |
Plugin URI: http://www.jfarthing.com/extend/wordpress-plugins/theme-my-login/
|
5 |
Description: Themes the WordPress login, registration and forgot password pages according to your theme.
|
6 |
+
Version: 6.3.12
|
7 |
Author: Jeff Farthing
|
8 |
Author URI: http://www.jfarthing.com
|
9 |
Text Domain: theme-my-login
|