From c2b741642e832d68c082a2949d85a811234aebd0 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Fri, 30 Mar 2012 18:30:01 +0200 Subject: [PATCH] MINOR Moved X-ControllerURL handling into global ajax response handlers to avoid code duplication --- admin/javascript/LeftAndMain.js | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/admin/javascript/LeftAndMain.js b/admin/javascript/LeftAndMain.js index ffdd578e65c..6800ffaf797 100644 --- a/admin/javascript/LeftAndMain.js +++ b/admin/javascript/LeftAndMain.js @@ -32,8 +32,16 @@ jQuery.noConflict(); $(window).bind('resize', positionLoadingSpinner).trigger('resize'); - // global ajax error handlers + // global ajax handlers $.ajaxSetup({ + complete: function(xhr) { + // Simulates a redirect on an ajax response - just exchange the URL without re-requesting it. + // Causes non-pushState browser to re-request the URL, so ignore for those. + if(window.History.enabled && !History.emulated.pushState) { + var url = xmlhttp.getResponseHeader('X-ControllerURL'); + if(url) window.History.replaceState({}, '', url); + } + }, error: function(xmlhttp, status, error) { if(xmlhttp.status < 200 || xmlhttp.status > 399) { var msg = (xmlhttp.getResponseHeader('X-Status')) ? xmlhttp.getResponseHeader('X-Status') : xmlhttp.statusText; @@ -87,13 +95,6 @@ jQuery.noConflict(); }); $('.cms-edit-form').live('reloadeditform', function(e, data) { - // Simulates a redirect on an ajax response - just exchange the URL without re-requesting it - // Causes non-pushState browser to re-request the URL, so ignore for those. - if(window.History.enabled && !History.emulated.pushState) { - var url = data.xmlhttp.getResponseHeader('X-ControllerURL'); - if(url) window.history.replaceState({}, '', url); - } - self.redraw(); }); @@ -251,13 +252,6 @@ jQuery.noConflict(); newContentEl.css('visibility', 'visible'); newContentEl.removeClass('loading'); - // Simulates a redirect on an ajax response - just exchange the URL without re-requesting it. - // Causes non-pushState browser to re-request the URL, so ignore for those. - if(window.History.enabled && !History.emulated.pushState) { - var url = xhr.getResponseHeader('X-ControllerURL'); - if(url) window.History.replaceState({}, '', url); - } - self.trigger('afterstatechange', {data: data, status: status, xhr: xhr, element: newContentEl}); }, error: function(xhr, status, e) {