diff --git a/wp-admin/js/user-profile.js b/wp-admin/js/user-profile.js index e4f249fe35..2b0fe5a5fc 100644 --- a/wp-admin/js/user-profile.js +++ b/wp-admin/js/user-profile.js @@ -5,6 +5,7 @@ /* global ajaxurl, pwsL10n, userProfileL10n */ (function($) { var updateLock = false, + isSubmitting = false, __ = wp.i18n.__, $pass1Row, $pass1, @@ -15,6 +16,8 @@ $submitButtons, $submitButton, currentPass, + $form, + originalFormContent, $passwordWrapper; function generatePassword() { @@ -454,6 +457,12 @@ bindPasswordForm(); bindPasswordResetLink(); + $submitButtons.on( 'click', function() { + isSubmitting = true; + }); + + $form = $( '#your-profile, #createuser' ); + originalFormContent = $form.serialize(); }); $( '#destroy-sessions' ).on( 'click', function( e ) { @@ -481,7 +490,10 @@ if ( true === updateLock ) { return __( 'Your new password has not been saved.' ); } - } ); + if ( originalFormContent !== $form.serialize() && ! isSubmitting ) { + return __( 'Changes that you made may not be saved.' ); + } + }); /* * We need to generate a password as soon as the Reset Password page is loaded, diff --git a/wp-admin/js/user-profile.min.js b/wp-admin/js/user-profile.min.js index 31f3609e0c..859ee84ab9 100644 --- a/wp-admin/js/user-profile.min.js +++ b/wp-admin/js/user-profile.min.js @@ -1,2 +1,2 @@ /*! This file is auto-generated */ -!function(o){var e,a,t,n,i,r,p,d,l,c,u=!1,h=wp.i18n.__;function f(){"function"!=typeof zxcvbn?setTimeout(f,50):(!a.val()||c.hasClass("is-open")?(a.val(a.data("pw")),a.trigger("pwupdate")):b(),_(),m(),1!==parseInt(r.data("start-masked"),10)?a.attr("type","text"):r.trigger("click"),o("#pw-weak-text-label").text(h("Confirm use of weak password")),"mailserver_pass"!==a.prop("id")&&o(a).trigger("focus"))}function w(s){r.attr({"aria-label":h(s?"Show password":"Hide password")}).find(".text").text(h(s?"Show":"Hide")).end().find(".dashicons").removeClass(s?"dashicons-hidden":"dashicons-visibility").addClass(s?"dashicons-visibility":"dashicons-hidden")}function m(){r||(r=e.find(".wp-hide-pw")).show().on("click",function(){"password"===a.attr("type")?(a.attr("type","text"),w(!1)):(a.attr("type","password"),w(!0))})}function v(s,e,a){var t=o("
");t.addClass("notice inline"),t.addClass("notice-"+(e?"success":"error")),t.text(o(o.parseHTML(a)).text()).wrapInner("

"),s.prop("disabled",e),s.siblings(".notice").remove(),s.before(t)}function g(){var s;e=o(".user-pass1-wrap, .user-pass-wrap, .mailserver-pass-wrap, .reset-pass-submit"),o(".user-pass2-wrap").hide(),d=o("#submit, #wp-submit").on("click",function(){u=!1}),p=d.add(" #createusersub"),n=o(".pw-weak"),(i=n.find(".pw-checkbox")).on("change",function(){p.prop("disabled",!i.prop("checked"))}),(a=o("#pass1, #mailserver_pass")).length?(l=a.val(),1===parseInt(a.data("reveal"),10)&&f(),a.on("input pwupdate",function(){a.val()!==l&&(l=a.val(),a.removeClass("short bad good strong"),_())})):a=o("#user_pass"),t=o("#pass2").on("input",function(){0]*>/gi,""),t[s].length)&&-1===o.inArray(e,a)&&(a.push(e),o("

'+s.message+"

")}).fail(function(s){e.siblings(".notice").remove(),e.before('

'+s.message+"

")}),s.preventDefault()}),window.generatePassword=f,o(window).on("beforeunload",function(){if(!0===u)return h("Your new password has not been saved.")}),o(function(){o(".reset-pass-submit").length&&o(".reset-pass-submit button.wp-generate-pw").trigger("click")})}(jQuery); \ No newline at end of file +!function(o){var s,a,t,n,i,r,p,d,l,c,u,h,f=!1,m=!1,w=wp.i18n.__;function v(){"function"!=typeof zxcvbn?setTimeout(v,50):(!a.val()||h.hasClass("is-open")?(a.val(a.data("pw")),a.trigger("pwupdate")):_(),C(),b(),1!==parseInt(r.data("start-masked"),10)?a.attr("type","text"):r.trigger("click"),o("#pw-weak-text-label").text(w("Confirm use of weak password")),"mailserver_pass"!==a.prop("id")&&o(a).trigger("focus"))}function g(e){r.attr({"aria-label":w(e?"Show password":"Hide password")}).find(".text").text(w(e?"Show":"Hide")).end().find(".dashicons").removeClass(e?"dashicons-hidden":"dashicons-visibility").addClass(e?"dashicons-visibility":"dashicons-hidden")}function b(){r||(r=s.find(".wp-hide-pw")).show().on("click",function(){"password"===a.attr("type")?(a.attr("type","text"),g(!1)):(a.attr("type","password"),g(!0))})}function y(e,s,a){var t=o("
");t.addClass("notice inline"),t.addClass("notice-"+(s?"success":"error")),t.text(o(o.parseHTML(a)).text()).wrapInner("

"),e.prop("disabled",s),e.siblings(".notice").remove(),e.before(t)}function k(){var e;s=o(".user-pass1-wrap, .user-pass-wrap, .mailserver-pass-wrap, .reset-pass-submit"),o(".user-pass2-wrap").hide(),d=o("#submit, #wp-submit").on("click",function(){f=!1}),p=d.add(" #createusersub"),n=o(".pw-weak"),(i=n.find(".pw-checkbox")).on("change",function(){p.prop("disabled",!i.prop("checked"))}),(a=o("#pass1, #mailserver_pass")).length?(l=a.val(),1===parseInt(a.data("reveal"),10)&&v(),a.on("input pwupdate",function(){a.val()!==l&&(l=a.val(),a.removeClass("short bad good strong"),C())})):a=o("#user_pass"),t=o("#pass2").on("input",function(){0]*>/gi,""),t[e].length)&&-1===o.inArray(s,a)&&(a.push(s),o("

'+e.message+"

")}).fail(function(e){s.siblings(".notice").remove(),s.before('

'+e.message+"

")}),e.preventDefault()}),window.generatePassword=v,o(window).on("beforeunload",function(){return!0===f?w("Your new password has not been saved."):u===c.serialize()||m?void 0:w("Changes that you made may not be saved.")}),o(function(){o(".reset-pass-submit").length&&o(".reset-pass-submit button.wp-generate-pw").trigger("click")})}(jQuery); \ No newline at end of file diff --git a/wp-includes/version.php b/wp-includes/version.php index 5bc25bc182..51a04087a3 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -16,7 +16,7 @@ * * @global string $wp_version */ -$wp_version = '6.6-alpha-58136'; +$wp_version = '6.6-alpha-58137'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.