Version Description
- Implement option to enable/disable AJAX
- Fix AJAX not working on certain server environments
- Fix AJAX errors not displaying when the AJAX request fails
- Revert forcing actions to the Dashboard when logged in
Download this release
Release Info
Developer | jfarthing84 |
Plugin | Theme My Login |
Version | 7.1.1 |
Comparing to | |
See all releases |
Code changes from version 7.1 to 7.1.1
- admin/settings.php +21 -0
- assets/scripts/theme-my-login.js +6 -1
- assets/scripts/theme-my-login.min.js +1 -1
- includes/actions.php +6 -10
- includes/forms.php +9 -9
- includes/functions.php +1 -7
- includes/options.php +20 -0
- languages/theme-my-login.pot +146 -137
- readme.txt +9 -0
- theme-my-login.php +2 -2
admin/settings.php
CHANGED
@@ -94,6 +94,11 @@ function tml_admin_get_settings_sections() {
|
|
94 |
* @param array $sections The settings sections.
|
95 |
*/
|
96 |
return (array) apply_filters( 'tml_admin_get_settings_sections', array(
|
|
|
|
|
|
|
|
|
|
|
97 |
'tml_settings_login' => array(
|
98 |
'title' => __( 'Log In' ),
|
99 |
'callback' => '__return_null',
|
@@ -122,6 +127,22 @@ function tml_admin_get_settings_sections() {
|
|
122 |
function tml_admin_get_settings_fields() {
|
123 |
$fields = array();
|
124 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
// Login
|
126 |
$fields['tml_settings_login'] = array(
|
127 |
// Login type
|
94 |
* @param array $sections The settings sections.
|
95 |
*/
|
96 |
return (array) apply_filters( 'tml_admin_get_settings_sections', array(
|
97 |
+
'tml_settings_general' => array(
|
98 |
+
'title' => __( 'General', 'theme-my-login' ),
|
99 |
+
'callback' => '__return_null',
|
100 |
+
'page' => 'theme-my-login',
|
101 |
+
),
|
102 |
'tml_settings_login' => array(
|
103 |
'title' => __( 'Log In' ),
|
104 |
'callback' => '__return_null',
|
127 |
function tml_admin_get_settings_fields() {
|
128 |
$fields = array();
|
129 |
|
130 |
+
// General
|
131 |
+
$fields['tml_settings_general'] = array(
|
132 |
+
// AJAX
|
133 |
+
'tml_ajax' => array(
|
134 |
+
'title' => __( 'AJAX', 'theme-my-login' ),
|
135 |
+
'callback' => 'tml_admin_setting_callback_checkbox_field',
|
136 |
+
'sanitize_callback' => 'sanitize_text_field',
|
137 |
+
'args' => array(
|
138 |
+
'label_for' => 'tml_ajax',
|
139 |
+
'label' => __( 'Enable AJAX requests', 'theme-my-login' ),
|
140 |
+
'value' => '1',
|
141 |
+
'checked' => get_site_option( 'tml_ajax', '1' ),
|
142 |
+
),
|
143 |
+
),
|
144 |
+
);
|
145 |
+
|
146 |
// Login
|
147 |
$fields['tml_settings_login'] = array(
|
148 |
// Login type
|
assets/scripts/theme-my-login.js
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
submit.prop( 'disabled', true );
|
16 |
|
17 |
$.ajax( {
|
18 |
-
data: form.serialize(),
|
19 |
method: form.attr( 'method' ) || 'get',
|
20 |
url: form.attr( 'action' )
|
21 |
} )
|
@@ -35,6 +35,11 @@
|
|
35 |
} else {
|
36 |
notices.hide().html( response.data.errors ).fadeIn();
|
37 |
}
|
|
|
|
|
|
|
|
|
|
|
38 |
} );
|
39 |
} );
|
40 |
} )( jQuery );
|
15 |
submit.prop( 'disabled', true );
|
16 |
|
17 |
$.ajax( {
|
18 |
+
data: form.serialize() + '&ajax=1',
|
19 |
method: form.attr( 'method' ) || 'get',
|
20 |
url: form.attr( 'action' )
|
21 |
} )
|
35 |
} else {
|
36 |
notices.hide().html( response.data.errors ).fadeIn();
|
37 |
}
|
38 |
+
} )
|
39 |
+
.fail( function( jqXHR, textStatus, errorThrown ) {
|
40 |
+
if ( jqXHR.responseJSON.data.errors ) {
|
41 |
+
notices.hide().html( jqXHR.responseJSON.data.errors ).fadeIn();
|
42 |
+
}
|
43 |
} );
|
44 |
} );
|
45 |
} )( jQuery );
|
assets/scripts/theme-my-login.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function(n){n(".tml").on("submit",'form[data-ajax="1"]',function(a){var e=n(this),s=e.find(":input"),t=e.find(":submit"),r=n(a.delegateTarget).find(".tml-alerts");a.preventDefault(),r.empty(),s.prop("readonly",!0),t.prop("disabled",!0),n.ajax({data:e.serialize(),method:e.attr("method")||"get",url:e.attr("action")}).always(function(){s.prop("readonly",!1),t.prop("disabled",!1)}).done(function(a){a.success?a.data.refresh?location.reload(!0):a.data.redirect?location.href=a.data.redirect:a.data.notice&&r.hide().html(a.data.notice).fadeIn():r.hide().html(a.data.errors).fadeIn()})})}(jQuery),function(s){s(function(){var a,e;if(!themeMyLogin.action)return;switch(a=s("#user_login"),themeMyLogin.action){case"activate":(e=s("#key")).length&&e.focus();break;case"lostpassword":case"retrievepassword":case"register":a.focus();break;case"resetpass":case"rp":s("#pass1").focus();break;case"login":-1!=themeMyLogin.errors.indexOf("invalid_username")&&a.val(""),a.val()?s("#user_pass").focus():a.focus()}})}(jQuery),function(s){function a(){var a=s("#pass1").val(),e=s("#pass-strength-result");if(e.removeClass("short bad good strong"),a)switch(wp.passwordStrength.meter(a,wp.passwordStrength.userInputBlacklist(),a)){case-1:e.addClass("bad").html(pwsL10n.unknown);break;case 2:e.addClass("bad").html(pwsL10n.bad);break;case 3:e.addClass("good").html(pwsL10n.good);break;case 4:e.addClass("strong").html(pwsL10n.strong);break;case 5:e.addClass("short").html(pwsL10n.mismatch);break;default:e.addClass("short").html(pwsL10n.short)}else e.html(" ")}s(document).ready(function(){s("#pass1").val("").on("keyup paste",a)})}(jQuery);
|
1 |
+
!function(n){n(".tml").on("submit",'form[data-ajax="1"]',function(a){var e=n(this),s=e.find(":input"),t=e.find(":submit"),r=n(a.delegateTarget).find(".tml-alerts");a.preventDefault(),r.empty(),s.prop("readonly",!0),t.prop("disabled",!0),n.ajax({data:e.serialize()+"&ajax=1",method:e.attr("method")||"get",url:e.attr("action")}).always(function(){s.prop("readonly",!1),t.prop("disabled",!1)}).done(function(a){a.success?a.data.refresh?location.reload(!0):a.data.redirect?location.href=a.data.redirect:a.data.notice&&r.hide().html(a.data.notice).fadeIn():r.hide().html(a.data.errors).fadeIn()}).fail(function(a,e,s){a.responseJSON.data.errors&&r.hide().html(a.responseJSON.data.errors).fadeIn()})})}(jQuery),function(s){s(function(){var a,e;if(!themeMyLogin.action)return;switch(a=s("#user_login"),themeMyLogin.action){case"activate":(e=s("#key")).length&&e.focus();break;case"lostpassword":case"retrievepassword":case"register":a.focus();break;case"resetpass":case"rp":s("#pass1").focus();break;case"login":-1!=themeMyLogin.errors.indexOf("invalid_username")&&a.val(""),a.val()?s("#user_pass").focus():a.focus()}})}(jQuery),function(s){function a(){var a=s("#pass1").val(),e=s("#pass-strength-result");if(e.removeClass("short bad good strong"),a)switch(wp.passwordStrength.meter(a,wp.passwordStrength.userInputBlacklist(),a)){case-1:e.addClass("bad").html(pwsL10n.unknown);break;case 2:e.addClass("bad").html(pwsL10n.bad);break;case 3:e.addClass("good").html(pwsL10n.good);break;case 4:e.addClass("strong").html(pwsL10n.strong);break;case 5:e.addClass("short").html(pwsL10n.mismatch);break;default:e.addClass("short").html(pwsL10n.short)}else e.html(" ")}s(document).ready(function(){s("#pass1").val("").on("keyup paste",a)})}(jQuery);
|
includes/actions.php
CHANGED
@@ -396,11 +396,6 @@ function tml_dashboard_handler() {
|
|
396 |
*/
|
397 |
function tml_login_handler() {
|
398 |
|
399 |
-
if ( is_user_logged_in() ) {
|
400 |
-
wp_redirect( tml_get_action_url( 'dashboard' ) );
|
401 |
-
exit;
|
402 |
-
}
|
403 |
-
|
404 |
$errors = new WP_Error;
|
405 |
|
406 |
$secure_cookie = '';
|
@@ -468,7 +463,11 @@ function tml_login_handler() {
|
|
468 |
$redirect_to = get_dashboard_url( $user->ID );
|
469 |
|
470 |
} elseif ( ! $user->has_cap( 'edit_posts' ) ) {
|
471 |
-
|
|
|
|
|
|
|
|
|
472 |
}
|
473 |
|
474 |
if ( tml_is_ajax_request() ) {
|
@@ -587,10 +586,7 @@ function tml_logout_handler() {
|
|
587 |
*/
|
588 |
function tml_registration_handler() {
|
589 |
|
590 |
-
if (
|
591 |
-
wp_redirect( tml_get_action_url( 'dashboard' ) );
|
592 |
-
exit;
|
593 |
-
} elseif ( is_multisite() ) {
|
594 |
/** This filter is documented in wp-login.php */
|
595 |
$signup_location = apply_filters( 'wp_signup_location', network_site_url( 'wp-signup.php' ) );
|
596 |
|
396 |
*/
|
397 |
function tml_login_handler() {
|
398 |
|
|
|
|
|
|
|
|
|
|
|
399 |
$errors = new WP_Error;
|
400 |
|
401 |
$secure_cookie = '';
|
463 |
$redirect_to = get_dashboard_url( $user->ID );
|
464 |
|
465 |
} elseif ( ! $user->has_cap( 'edit_posts' ) ) {
|
466 |
+
if ( tml_action_exists( 'dashboard' ) ) {
|
467 |
+
$redirect_to = tml_get_action_url( 'dashboard' );
|
468 |
+
} else {
|
469 |
+
$redirect_to = $user->has_cap( 'read' ) ? admin_url( 'profile.php' ) : home_url();
|
470 |
+
}
|
471 |
}
|
472 |
|
473 |
if ( tml_is_ajax_request() ) {
|
586 |
*/
|
587 |
function tml_registration_handler() {
|
588 |
|
589 |
+
if ( is_multisite() ) {
|
|
|
|
|
|
|
590 |
/** This filter is documented in wp-login.php */
|
591 |
$signup_location = apply_filters( 'wp_signup_location', network_site_url( 'wp-signup.php' ) );
|
592 |
|
includes/forms.php
CHANGED
@@ -32,9 +32,9 @@ function tml_register_login_form() {
|
|
32 |
|
33 |
tml_register_form( 'login', array(
|
34 |
'action' => tml_get_action_url( 'login' ),
|
35 |
-
'attributes' => array(
|
36 |
-
'data-ajax' => 1,
|
37 |
-
),
|
38 |
) );
|
39 |
|
40 |
tml_add_form_field( 'login', 'log', array(
|
@@ -95,10 +95,10 @@ function tml_register_registration_form() {
|
|
95 |
|
96 |
tml_register_form( 'register', array(
|
97 |
'action' => tml_get_action_url( 'register' ),
|
98 |
-
'attributes' => array(
|
99 |
'novalidate' => 'novalidate',
|
100 |
-
'data-ajax' => 1,
|
101 |
-
),
|
102 |
) );
|
103 |
|
104 |
if ( tml_is_default_registration_type() ) {
|
@@ -199,9 +199,9 @@ function tml_register_lost_password_form() {
|
|
199 |
|
200 |
tml_register_form( 'lostpassword', array(
|
201 |
'action' => tml_get_action_url( 'lostpassword' ),
|
202 |
-
'attributes' => array(
|
203 |
-
'data-ajax' => 1,
|
204 |
-
),
|
205 |
) );
|
206 |
|
207 |
tml_add_form_field( 'lostpassword', 'user_login', array(
|
32 |
|
33 |
tml_register_form( 'login', array(
|
34 |
'action' => tml_get_action_url( 'login' ),
|
35 |
+
'attributes' => array_filter( array(
|
36 |
+
'data-ajax' => tml_use_ajax() ? 1 : 0,
|
37 |
+
) ),
|
38 |
) );
|
39 |
|
40 |
tml_add_form_field( 'login', 'log', array(
|
95 |
|
96 |
tml_register_form( 'register', array(
|
97 |
'action' => tml_get_action_url( 'register' ),
|
98 |
+
'attributes' => array_filter( array(
|
99 |
'novalidate' => 'novalidate',
|
100 |
+
'data-ajax' => tml_use_ajax() ? 1 : 0,
|
101 |
+
) ),
|
102 |
) );
|
103 |
|
104 |
if ( tml_is_default_registration_type() ) {
|
199 |
|
200 |
tml_register_form( 'lostpassword', array(
|
201 |
'action' => tml_get_action_url( 'lostpassword' ),
|
202 |
+
'attributes' => array_filter( array(
|
203 |
+
'data-ajax' => tml_use_ajax() ? 1 : 0,
|
204 |
+
) ),
|
205 |
) );
|
206 |
|
207 |
tml_add_form_field( 'lostpassword', 'user_login', array(
|
includes/functions.php
CHANGED
@@ -1058,13 +1058,7 @@ function tml_is_post_request() {
|
|
1058 |
* @return bool
|
1059 |
*/
|
1060 |
function tml_is_ajax_request() {
|
1061 |
-
|
1062 |
-
return false;
|
1063 |
-
} elseif ( 'xmlhttprequest' != strtolower( $_SERVER['HTTP_X_REQUESTED_WITH'] ) ) {
|
1064 |
-
return false;
|
1065 |
-
} else {
|
1066 |
-
return true;
|
1067 |
-
}
|
1068 |
}
|
1069 |
|
1070 |
/**
|
1058 |
* @return bool
|
1059 |
*/
|
1060 |
function tml_is_ajax_request() {
|
1061 |
+
return (bool) tml_get_request_value( 'ajax' );
|
|
|
|
|
|
|
|
|
|
|
|
|
1062 |
}
|
1063 |
|
1064 |
/**
|
includes/options.php
CHANGED
@@ -60,6 +60,26 @@ function tml_use_permalinks() {
|
|
60 |
return (bool) apply_filters( 'tml_use_permalinks', $use_permalinks );
|
61 |
}
|
62 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
/**
|
64 |
* Get the login type.
|
65 |
*
|
60 |
return (bool) apply_filters( 'tml_use_permalinks', $use_permalinks );
|
61 |
}
|
62 |
|
63 |
+
/**
|
64 |
+
* Determine if forms should use AJAX or not.
|
65 |
+
*
|
66 |
+
* @since 7.1.1
|
67 |
+
*
|
68 |
+
* @return bool Whether forms should use AJAX or not.
|
69 |
+
*/
|
70 |
+
function tml_use_ajax() {
|
71 |
+
$use_ajax = get_site_option( 'tml_ajax', 1 );
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Filter whether forms should use AJAX or not.
|
75 |
+
*
|
76 |
+
* @since 7.1.1
|
77 |
+
*
|
78 |
+
* @param bool $enable_ajax Whether forms should use AJAX or not.
|
79 |
+
*/
|
80 |
+
return (bool) apply_filters( 'tml_use_ajax', $use_ajax );
|
81 |
+
}
|
82 |
+
|
83 |
/**
|
84 |
* Get the login type.
|
85 |
*
|
languages/theme-my-login.pot
CHANGED
@@ -2,22 +2,22 @@
|
|
2 |
# This file is distributed under the same license as the Theme My Login plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Theme My Login 7.1\n"
|
6 |
-
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2020-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
-
"X-Generator: WP-CLI 2.
|
15 |
"X-Domain: theme-my-login\n"
|
16 |
|
17 |
#. Plugin Name of the plugin
|
18 |
#. Author of the plugin
|
19 |
-
#: includes/class-theme-my-login-widget.php:23
|
20 |
#: admin/functions.php:67
|
|
|
21 |
msgid "Theme My Login"
|
22 |
msgstr ""
|
23 |
|
@@ -30,91 +30,36 @@ msgstr ""
|
|
30 |
msgid "Creates an alternate login, registration and password recovery experience within your theme."
|
31 |
msgstr ""
|
32 |
|
33 |
-
#:
|
34 |
-
|
35 |
-
msgid "Theme My Login Actions"
|
36 |
-
msgstr ""
|
37 |
-
|
38 |
-
#: includes/functions.php:549
|
39 |
-
msgid "Theme My Login Action"
|
40 |
-
msgstr ""
|
41 |
-
|
42 |
-
#: includes/functions.php:577
|
43 |
-
#: includes/functions.php:604
|
44 |
-
#: includes/functions.php:619
|
45 |
-
msgid "TML Action"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#: includes/functions.php:683
|
49 |
-
msgid "<strong>Error</strong>: Please enter a password."
|
50 |
-
msgstr ""
|
51 |
-
|
52 |
-
#: includes/functions.php:686
|
53 |
-
msgid "<strong>Error</strong>: Passwords may not contain the character \"\\\"."
|
54 |
-
msgstr ""
|
55 |
-
|
56 |
-
#: includes/functions.php:689
|
57 |
-
msgid "<strong>Error</strong>: Please enter the same password in both password fields."
|
58 |
-
msgstr ""
|
59 |
-
|
60 |
-
#: includes/functions.php:706
|
61 |
-
msgid "If you have already set your own password, you may disregard this email and use the password you have already set."
|
62 |
-
msgstr ""
|
63 |
-
|
64 |
-
#: includes/actions.php:80
|
65 |
-
msgid "Your Data Request"
|
66 |
-
msgstr ""
|
67 |
-
|
68 |
-
#: includes/actions.php:520
|
69 |
-
msgid "Registration complete. You may now log in."
|
70 |
-
msgstr ""
|
71 |
-
|
72 |
-
#: includes/class-theme-my-login-widget.php:25
|
73 |
-
msgid "A login form for your site."
|
74 |
-
msgstr ""
|
75 |
-
|
76 |
-
#: includes/class-theme-my-login-widget.php:57
|
77 |
-
msgctxt "Howdy"
|
78 |
-
msgid "Welcome"
|
79 |
-
msgstr ""
|
80 |
-
|
81 |
-
#: includes/class-theme-my-login-widget.php:177
|
82 |
-
msgid "Show action links?"
|
83 |
-
msgstr ""
|
84 |
-
|
85 |
-
#: includes/forms.php:146
|
86 |
-
msgid "Confirm Password"
|
87 |
-
msgstr ""
|
88 |
-
|
89 |
-
#: includes/extensions.php:189
|
90 |
-
#: includes/extensions.php:222
|
91 |
-
#: includes/extensions.php:252
|
92 |
-
#: includes/extensions.php:287
|
93 |
-
msgid "An error occurred, please try again."
|
94 |
msgstr ""
|
95 |
|
96 |
-
#:
|
97 |
-
msgid "
|
98 |
msgstr ""
|
99 |
|
100 |
-
#:
|
101 |
-
|
|
|
102 |
msgstr ""
|
103 |
|
104 |
-
#:
|
105 |
-
msgid "
|
106 |
msgstr ""
|
107 |
|
108 |
-
#:
|
109 |
-
|
|
|
110 |
msgstr ""
|
111 |
|
112 |
-
#:
|
113 |
-
|
|
|
114 |
msgstr ""
|
115 |
|
116 |
-
#:
|
117 |
-
|
|
|
118 |
msgstr ""
|
119 |
|
120 |
#: admin/functions.php:66
|
@@ -123,6 +68,7 @@ msgid "Theme My Login Settings"
|
|
123 |
msgstr ""
|
124 |
|
125 |
#: admin/functions.php:78
|
|
|
126 |
msgid "General"
|
127 |
msgstr ""
|
128 |
|
@@ -151,159 +97,222 @@ msgstr ""
|
|
151 |
msgid "A new <strong>Theme My Login</strong> extension is available!"
|
152 |
msgstr ""
|
153 |
|
154 |
-
#: admin/functions.php:
|
155 |
-
#:
|
156 |
-
msgid "
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: admin/settings.php:
|
160 |
msgid "Registration"
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: admin/settings.php:
|
164 |
msgid "Slugs"
|
165 |
msgstr ""
|
166 |
|
167 |
-
#: admin/settings.php:129
|
168 |
#: admin/settings.php:134
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
169 |
msgid "Login Type"
|
170 |
msgstr ""
|
171 |
|
172 |
-
#: admin/settings.php:
|
173 |
-
#: admin/settings.php:
|
174 |
msgid "Default"
|
175 |
msgstr ""
|
176 |
|
177 |
-
#: admin/settings.php:
|
178 |
msgid "Username only"
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: admin/settings.php:
|
182 |
-
#: admin/settings.php:
|
183 |
msgid "Email only"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: admin/settings.php:
|
187 |
-
#: admin/settings.php:
|
188 |
msgid "Registration Type"
|
189 |
msgstr ""
|
190 |
|
191 |
-
#: admin/settings.php:
|
192 |
msgid "Passwords"
|
193 |
msgstr ""
|
194 |
|
195 |
-
#: admin/settings.php:
|
196 |
msgid "Allow users to set their own password"
|
197 |
msgstr ""
|
198 |
|
199 |
-
#: admin/settings.php:
|
200 |
msgid "Auto-Login"
|
201 |
msgstr ""
|
202 |
|
203 |
-
#: admin/settings.php:
|
204 |
msgid "Automatically log in users after registration"
|
205 |
msgstr ""
|
206 |
|
207 |
-
#: admin/settings.php:
|
208 |
msgid "The slugs defined here will be used to generate the URL to the corresponding action. You can see this URL below the slug field. If you would like to use pages for these actions, simply make sure the slug for the action below matches the slug of the page you would like to use for that action."
|
209 |
msgstr ""
|
210 |
|
211 |
-
#: admin/settings.php:
|
212 |
-
#: admin/extensions.php:179
|
213 |
-
msgid "Active"
|
214 |
-
msgstr ""
|
215 |
-
|
216 |
-
#: admin/settings.php:467
|
217 |
msgid "Invalid"
|
218 |
msgstr ""
|
219 |
|
220 |
-
#: admin/settings.php:
|
221 |
-
#: admin/extensions.php:200
|
222 |
-
msgid "Inactive"
|
223 |
-
msgstr ""
|
224 |
-
|
225 |
-
#: admin/settings.php:482
|
226 |
msgid "Deactivate"
|
227 |
msgstr ""
|
228 |
|
229 |
-
#: admin/settings.php:
|
230 |
msgid "Activate"
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: admin/settings.php:
|
234 |
msgid "Welcome to Theme My Login!"
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: admin/settings.php:
|
238 |
msgid "Below, you can configure how you would like users to register and log in to your site."
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: admin/settings.php:
|
242 |
msgid "Additionally, you can change the slugs that are used to generate the URLs that represent specific actions."
|
243 |
msgstr ""
|
244 |
|
245 |
-
#: admin/settings.php:
|
246 |
-
#: admin/settings.php:
|
247 |
-
#: admin/settings.php:
|
248 |
-
#: admin/settings.php:
|
249 |
msgid "View Documentation"
|
250 |
msgstr ""
|
251 |
|
252 |
-
#: admin/settings.php:
|
253 |
-
#: admin/settings.php:
|
254 |
-
#: admin/settings.php:
|
255 |
msgid "Get Support"
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: admin/settings.php:
|
259 |
msgid "When you purchase extensions for Theme My Login, you will enter your license keys on this page."
|
260 |
msgstr ""
|
261 |
|
262 |
-
#: admin/settings.php:
|
263 |
msgid "After you enter your license keys and click the Save Changes button at the bottom of the screen, you will see a new button next to each field with a license in it."
|
264 |
msgstr ""
|
265 |
|
266 |
-
#: admin/settings.php:
|
267 |
msgid "If you have not yet activated your license, this button will say \"Activate\". Click this button to activate your license."
|
268 |
msgstr ""
|
269 |
|
270 |
-
#: admin/settings.php:
|
271 |
msgid "If you have already activated your license, this button will say \"Deactivate\". Click this button to deactivate your license."
|
272 |
msgstr ""
|
273 |
|
274 |
-
#: admin/settings.php:
|
275 |
msgid "This page shows you all of the extensions available to purchase for Theme My Login."
|
276 |
msgstr ""
|
277 |
|
278 |
-
#: admin/settings.php:
|
279 |
msgid "Once you purchase an extension, you download it from your email receipt or your account page on our website. Then, you install it just like a normal WordPress plugin."
|
280 |
msgstr ""
|
281 |
|
282 |
-
#: admin/settings.php:
|
283 |
msgid "Go to the Extensions Store"
|
284 |
msgstr ""
|
285 |
|
286 |
-
#: admin/settings.php:
|
287 |
msgid "View your Theme My Login account"
|
288 |
msgstr ""
|
289 |
|
290 |
-
#: admin/settings.php:
|
291 |
msgid "On this page, you can configure the settings for the Theme My Login %s extension."
|
292 |
msgstr ""
|
293 |
|
294 |
-
#:
|
295 |
-
msgid "
|
296 |
msgstr ""
|
297 |
|
298 |
-
#:
|
299 |
-
msgid "
|
300 |
msgstr ""
|
301 |
|
302 |
-
#:
|
303 |
-
msgid "
|
304 |
msgstr ""
|
305 |
|
306 |
-
#:
|
307 |
-
|
308 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
309 |
msgstr ""
|
2 |
# This file is distributed under the same license as the Theme My Login plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Theme My Login 7.1.1\n"
|
6 |
+
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/theme-my-login\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2020-06-17T22:14:04+00:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
+
"X-Generator: WP-CLI 2.4.0\n"
|
15 |
"X-Domain: theme-my-login\n"
|
16 |
|
17 |
#. Plugin Name of the plugin
|
18 |
#. Author of the plugin
|
|
|
19 |
#: admin/functions.php:67
|
20 |
+
#: includes/class-theme-my-login-widget.php:23
|
21 |
msgid "Theme My Login"
|
22 |
msgstr ""
|
23 |
|
30 |
msgid "Creates an alternate login, registration and password recovery experience within your theme."
|
31 |
msgstr ""
|
32 |
|
33 |
+
#: admin/extensions.php:71
|
34 |
+
msgid "Whoops! Looks like there was an error fetching extensions from the server. Please try again."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
msgstr ""
|
36 |
|
37 |
+
#: admin/extensions.php:72
|
38 |
+
msgid "Error: %s"
|
39 |
msgstr ""
|
40 |
|
41 |
+
#: admin/extensions.php:94
|
42 |
+
#: admin/functions.php:186
|
43 |
+
msgid "Get This Extension"
|
44 |
msgstr ""
|
45 |
|
46 |
+
#: admin/extensions.php:104
|
47 |
+
msgid "View All Extensions"
|
48 |
msgstr ""
|
49 |
|
50 |
+
#: admin/extensions.php:163
|
51 |
+
#: admin/extensions.php:189
|
52 |
+
msgid "Invalid extension."
|
53 |
msgstr ""
|
54 |
|
55 |
+
#: admin/extensions.php:179
|
56 |
+
#: admin/settings.php:485
|
57 |
+
msgid "Active"
|
58 |
msgstr ""
|
59 |
|
60 |
+
#: admin/extensions.php:200
|
61 |
+
#: admin/settings.php:491
|
62 |
+
msgid "Inactive"
|
63 |
msgstr ""
|
64 |
|
65 |
#: admin/functions.php:66
|
68 |
msgstr ""
|
69 |
|
70 |
#: admin/functions.php:78
|
71 |
+
#: admin/settings.php:98
|
72 |
msgid "General"
|
73 |
msgstr ""
|
74 |
|
97 |
msgid "A new <strong>Theme My Login</strong> extension is available!"
|
98 |
msgstr ""
|
99 |
|
100 |
+
#: admin/functions.php:278
|
101 |
+
#: includes/functions.php:548
|
102 |
+
msgid "Theme My Login Actions"
|
103 |
msgstr ""
|
104 |
|
105 |
+
#: admin/settings.php:108
|
106 |
msgid "Registration"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: admin/settings.php:113
|
110 |
msgid "Slugs"
|
111 |
msgstr ""
|
112 |
|
|
|
113 |
#: admin/settings.php:134
|
114 |
+
msgid "AJAX"
|
115 |
+
msgstr ""
|
116 |
+
|
117 |
+
#: admin/settings.php:139
|
118 |
+
msgid "Enable AJAX requests"
|
119 |
+
msgstr ""
|
120 |
+
|
121 |
+
#: admin/settings.php:150
|
122 |
+
#: admin/settings.php:155
|
123 |
msgid "Login Type"
|
124 |
msgstr ""
|
125 |
|
126 |
+
#: admin/settings.php:157
|
127 |
+
#: admin/settings.php:177
|
128 |
msgid "Default"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: admin/settings.php:158
|
132 |
msgid "Username only"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: admin/settings.php:159
|
136 |
+
#: admin/settings.php:178
|
137 |
msgid "Email only"
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: admin/settings.php:170
|
141 |
+
#: admin/settings.php:175
|
142 |
msgid "Registration Type"
|
143 |
msgstr ""
|
144 |
|
145 |
+
#: admin/settings.php:185
|
146 |
msgid "Passwords"
|
147 |
msgstr ""
|
148 |
|
149 |
+
#: admin/settings.php:190
|
150 |
msgid "Allow users to set their own password"
|
151 |
msgstr ""
|
152 |
|
153 |
+
#: admin/settings.php:197
|
154 |
msgid "Auto-Login"
|
155 |
msgstr ""
|
156 |
|
157 |
+
#: admin/settings.php:202
|
158 |
msgid "Automatically log in users after registration"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: admin/settings.php:249
|
162 |
msgid "The slugs defined here will be used to generate the URL to the corresponding action. You can see this URL below the slug field. If you would like to use pages for these actions, simply make sure the slug for the action below matches the slug of the page you would like to use for that action."
|
163 |
msgstr ""
|
164 |
|
165 |
+
#: admin/settings.php:488
|
|
|
|
|
|
|
|
|
|
|
166 |
msgid "Invalid"
|
167 |
msgstr ""
|
168 |
|
169 |
+
#: admin/settings.php:503
|
|
|
|
|
|
|
|
|
|
|
170 |
msgid "Deactivate"
|
171 |
msgstr ""
|
172 |
|
173 |
+
#: admin/settings.php:515
|
174 |
msgid "Activate"
|
175 |
msgstr ""
|
176 |
|
177 |
+
#: admin/settings.php:640
|
178 |
msgid "Welcome to Theme My Login!"
|
179 |
msgstr ""
|
180 |
|
181 |
+
#: admin/settings.php:641
|
182 |
msgid "Below, you can configure how you would like users to register and log in to your site."
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: admin/settings.php:642
|
186 |
msgid "Additionally, you can change the slugs that are used to generate the URLs that represent specific actions."
|
187 |
msgstr ""
|
188 |
|
189 |
+
#: admin/settings.php:648
|
190 |
+
#: admin/settings.php:671
|
191 |
+
#: admin/settings.php:691
|
192 |
+
#: admin/settings.php:719
|
193 |
msgid "View Documentation"
|
194 |
msgstr ""
|
195 |
|
196 |
+
#: admin/settings.php:653
|
197 |
+
#: admin/settings.php:675
|
198 |
+
#: admin/settings.php:726
|
199 |
msgid "Get Support"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: admin/settings.php:663
|
203 |
msgid "When you purchase extensions for Theme My Login, you will enter your license keys on this page."
|
204 |
msgstr ""
|
205 |
|
206 |
+
#: admin/settings.php:664
|
207 |
msgid "After you enter your license keys and click the Save Changes button at the bottom of the screen, you will see a new button next to each field with a license in it."
|
208 |
msgstr ""
|
209 |
|
210 |
+
#: admin/settings.php:665
|
211 |
msgid "If you have not yet activated your license, this button will say \"Activate\". Click this button to activate your license."
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: admin/settings.php:666
|
215 |
msgid "If you have already activated your license, this button will say \"Deactivate\". Click this button to deactivate your license."
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: admin/settings.php:685
|
219 |
msgid "This page shows you all of the extensions available to purchase for Theme My Login."
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: admin/settings.php:686
|
223 |
msgid "Once you purchase an extension, you download it from your email receipt or your account page on our website. Then, you install it just like a normal WordPress plugin."
|
224 |
msgstr ""
|
225 |
|
226 |
+
#: admin/settings.php:695
|
227 |
msgid "Go to the Extensions Store"
|
228 |
msgstr ""
|
229 |
|
230 |
+
#: admin/settings.php:699
|
231 |
msgid "View your Theme My Login account"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: admin/settings.php:710
|
235 |
msgid "On this page, you can configure the settings for the Theme My Login %s extension."
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: includes/actions.php:80
|
239 |
+
msgid "Your Data Request"
|
240 |
msgstr ""
|
241 |
|
242 |
+
#: includes/actions.php:519
|
243 |
+
msgid "Registration complete. You may now log in."
|
244 |
msgstr ""
|
245 |
|
246 |
+
#: includes/class-theme-my-login-widget.php:25
|
247 |
+
msgid "A login form for your site."
|
248 |
msgstr ""
|
249 |
|
250 |
+
#: includes/class-theme-my-login-widget.php:57
|
251 |
+
msgctxt "Howdy"
|
252 |
+
msgid "Welcome"
|
253 |
+
msgstr ""
|
254 |
+
|
255 |
+
#: includes/class-theme-my-login-widget.php:177
|
256 |
+
msgid "Show action links?"
|
257 |
+
msgstr ""
|
258 |
+
|
259 |
+
#: includes/extensions.php:189
|
260 |
+
#: includes/extensions.php:222
|
261 |
+
#: includes/extensions.php:252
|
262 |
+
#: includes/extensions.php:287
|
263 |
+
msgid "An error occurred, please try again."
|
264 |
+
msgstr ""
|
265 |
+
|
266 |
+
#: includes/extensions.php:196
|
267 |
+
msgid "Your license key expired on %s."
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: includes/extensions.php:202
|
271 |
+
msgid "Your license key has been disabled."
|
272 |
+
msgstr ""
|
273 |
+
|
274 |
+
#: includes/extensions.php:210
|
275 |
+
msgid "Invalid license."
|
276 |
+
msgstr ""
|
277 |
+
|
278 |
+
#: includes/extensions.php:214
|
279 |
+
msgid "Your license key has reached its activation limit."
|
280 |
+
msgstr ""
|
281 |
+
|
282 |
+
#: includes/extensions.php:218
|
283 |
+
msgid "You are attempting to activate a bundle license. Please use the license that corresponds to the individual extension you are attemtping to activate."
|
284 |
+
msgstr ""
|
285 |
+
|
286 |
+
#: includes/extensions.php:257
|
287 |
+
msgid "Unable to deactivate license. Please deactivate it on <a href=\"%1$s\" target=\"_blank\">our site</a>."
|
288 |
+
msgstr ""
|
289 |
+
|
290 |
+
#: includes/forms.php:146
|
291 |
+
msgid "Confirm Password"
|
292 |
+
msgstr ""
|
293 |
+
|
294 |
+
#: includes/functions.php:549
|
295 |
+
msgid "Theme My Login Action"
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: includes/functions.php:577
|
299 |
+
#: includes/functions.php:604
|
300 |
+
#: includes/functions.php:619
|
301 |
+
msgid "TML Action"
|
302 |
+
msgstr ""
|
303 |
+
|
304 |
+
#: includes/functions.php:683
|
305 |
+
msgid "<strong>Error</strong>: Please enter a password."
|
306 |
+
msgstr ""
|
307 |
+
|
308 |
+
#: includes/functions.php:686
|
309 |
+
msgid "<strong>Error</strong>: Passwords may not contain the character \"\\\"."
|
310 |
+
msgstr ""
|
311 |
+
|
312 |
+
#: includes/functions.php:689
|
313 |
+
msgid "<strong>Error</strong>: Please enter the same password in both password fields."
|
314 |
+
msgstr ""
|
315 |
+
|
316 |
+
#: includes/functions.php:706
|
317 |
+
msgid "If you have already set your own password, you may disregard this email and use the password you have already set."
|
318 |
msgstr ""
|
readme.txt
CHANGED
@@ -59,6 +59,12 @@ Report bugs, suggest ideas and participate in development at [GitHub](https://gi
|
|
59 |
|
60 |
== Changelog ==
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
= 7.1 =
|
63 |
* Implement AJAX support
|
64 |
* Introduce new Dashboard action
|
@@ -748,5 +754,8 @@ Report bugs, suggest ideas and participate in development at [GitHub](https://gi
|
|
748 |
|
749 |
== Upgrade Notice ==
|
750 |
|
|
|
|
|
|
|
751 |
= 7.0 =
|
752 |
Modules are no longer included with the plugin. Please consider this before you upgrade!
|
59 |
|
60 |
== Changelog ==
|
61 |
|
62 |
+
= 7.1.1 =
|
63 |
+
* Implement option to enable/disable AJAX
|
64 |
+
* Fix AJAX not working on certain server environments
|
65 |
+
* Fix AJAX errors not displaying when the AJAX request fails
|
66 |
+
* Revert forcing actions to the Dashboard when logged in
|
67 |
+
|
68 |
= 7.1 =
|
69 |
* Implement AJAX support
|
70 |
* Introduce new Dashboard action
|
754 |
|
755 |
== Upgrade Notice ==
|
756 |
|
757 |
+
= 7.1 =
|
758 |
+
Theme My Login now requires WordPress 5.4+, and by extension, PHP 5.6.20+.
|
759 |
+
|
760 |
= 7.0 =
|
761 |
Modules are no longer included with the plugin. Please consider this before you upgrade!
|
theme-my-login.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
Plugin Name: Theme My Login
|
11 |
Plugin URI: https://thememylogin.com
|
12 |
Description: Creates an alternate login, registration and password recovery experience within your theme.
|
13 |
-
Version: 7.1
|
14 |
Author: Theme My Login
|
15 |
Author URI: https://thememylogin.com
|
16 |
License: GPLv2
|
@@ -24,7 +24,7 @@ Network: true
|
|
24 |
*
|
25 |
* @since 7.0
|
26 |
*/
|
27 |
-
define( 'THEME_MY_LOGIN_VERSION', '7.1' );
|
28 |
|
29 |
/**
|
30 |
* Stores the path to TML.
|
10 |
Plugin Name: Theme My Login
|
11 |
Plugin URI: https://thememylogin.com
|
12 |
Description: Creates an alternate login, registration and password recovery experience within your theme.
|
13 |
+
Version: 7.1.1
|
14 |
Author: Theme My Login
|
15 |
Author URI: https://thememylogin.com
|
16 |
License: GPLv2
|
24 |
*
|
25 |
* @since 7.0
|
26 |
*/
|
27 |
+
define( 'THEME_MY_LOGIN_VERSION', '7.1.1' );
|
28 |
|
29 |
/**
|
30 |
* Stores the path to TML.
|