From 0361194267a5f2228f03224136e30f6daf481eff Mon Sep 17 00:00:00 2001 From: Lee Bradley Date: Tue, 21 Feb 2017 10:43:02 +0000 Subject: [PATCH] Fixes for issues introduced in 5e19d905 As the "onunmatch" is triggered AFTER the element is removed from the DOM it never finds the `closest('div')` when switching screens. E.g. when using GridField edit So when you go from the GridField edit screen back to the page you end up with the page loaded but the spinner doesn't disappear Other option would be to do `$('body').find('.cms-content-loading-overlay,.cms-content-loading-spinner').remove()` but this is probably a bit drastic --- admin/client/dist/js/bundle.js | 6 ++---- admin/client/src/legacy/LeftAndMain.js | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/admin/client/dist/js/bundle.js b/admin/client/dist/js/bundle.js index d7789ee41..f7fd86b9d 100644 --- a/admin/client/dist/js/bundle.js +++ b/admin/client/dist/js/bundle.js @@ -1128,10 +1128,8 @@ minHeight:370,maxHeight:400,closeOnEscape:!1,open:function e(){$(".ui-widget-ove }})},onunmatch:function x(){this._super()},open:function R(){this.ssdialog("open")},close:function I(){this.ssdialog("close")},toggle:function F(e){this.is(":visible")?this.close():this.open()},reauthenticate:function A(e){ "undefined"!=typeof e.SecurityID&&$(":input[name=SecurityID]").val(e.SecurityID),"undefined"!=typeof e.TempID&&$("body").data("member-tempid",e.TempID),this.close()}}),$("form.loading,.cms-content.loading,.cms-content-fields.loading,.cms-content-view.loading").entwine({ -onmatch:function D(){this.closest("div").append('
'),this._super()},onunmatch:function M(){ -this.closest("div").find(".cms-content-loading-overlay,.cms-content-loading-spinner").remove(),this._super()}}),$(".cms .cms-panel-link").entwine({onclick:function N(e){if($(this).hasClass("external-link"))return void e.stopPropagation() - - +onmatch:function D(){this.append('
'),this._super()},onunmatch:function M(){this.find(".cms-content-loading-overlay,.cms-content-loading-spinner").remove(), +this._super()}}),$(".cms .cms-panel-link").entwine({onclick:function N(e){if($(this).hasClass("external-link"))return void e.stopPropagation() var t=this.attr("href"),n=t&&!t.match(/^#/)?t:this.data("href"),i={pjax:this.data("pjaxTarget")} $(".cms-container").loadPanel(n,null,i),e.preventDefault()}}),$(".cms .ss-ui-button-ajax").entwine({onclick:function onclick(e){$(this).removeClass("ui-button-text-only"),$(this).addClass("ss-ui-button-loading ui-button-text-icons") diff --git a/admin/client/src/legacy/LeftAndMain.js b/admin/client/src/legacy/LeftAndMain.js index b88b19779..b2fba66d5 100644 --- a/admin/client/src/legacy/LeftAndMain.js +++ b/admin/client/src/legacy/LeftAndMain.js @@ -1041,11 +1041,11 @@ $.entwine('ss', function($) { */ $('form.loading,.cms-content.loading,.cms-content-fields.loading,.cms-content-view.loading').entwine({ onmatch: function() { - this.closest('div').append('
'); + this.append('
'); this._super(); }, onunmatch: function() { - this.closest('div').find('.cms-content-loading-overlay,.cms-content-loading-spinner').remove(); + this.find('.cms-content-loading-overlay,.cms-content-loading-spinner').remove(); this._super(); } });