From 7abbbbfccf549c6f82bc589be74013fd7e240fc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 7 Apr 2015 12:19:23 -0400 Subject: [PATCH] closes #2946 --- public/src/ajaxify.js | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index 515ce037af..426bac83e7 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -31,7 +31,7 @@ $(document).ready(function() { ajaxify.currentPage = null; ajaxify.go = function (url, callback, quiet) { - if (ajaxify.handleACPRedirect(url) || ajaxify.handleNonAPIRoutes(url)) { + if (ajaxify.handleRedirects(url)) { return true; } @@ -65,24 +65,17 @@ $(document).ready(function() { return true; }; - ajaxify.handleACPRedirect = function(url) { - // If ajaxifying into an admin route from regular site, do a cold load. - url = ajaxify.removeRelativePath(url.replace(/\/$/, '')); - if (url.startsWith('admin') && window.location.pathname.indexOf(RELATIVE_PATH + '/admin') !== 0) { + ajaxify.handleRedirects = function(url) { + url = ajaxify.removeRelativePath(url.replace(/\/$/, '')).toLowerCase(); + var isAdminRoute = url.startsWith('admin') && window.location.pathname.indexOf(RELATIVE_PATH + '/admin') !== 0; + var uploadsOrApi = url.startsWith('uploads') || url.startsWith('api'); + if (isAdminRoute || uploadsOrApi) { window.open(RELATIVE_PATH + '/' + url, '_blank'); return true; } return false; }; - ajaxify.handleNonAPIRoutes = function(url) { - url = ajaxify.removeRelativePath(url.replace(/\/$/, '')); - if (url.startsWith('uploads')) { - window.open(RELATIVE_PATH + '/' + url, '_blank'); - return true; - } - return false; - }; ajaxify.start = function(url, quiet, search) { url = ajaxify.removeRelativePath(url.replace(/\/$/, ''));