From 50a787d97dd18be567652a09daa6998368158764 Mon Sep 17 00:00:00 2001 From: brettp Date: Thu, 28 Apr 2011 21:20:47 +0000 Subject: Fixes #3408. During token refresh, only touching hrefs that contain __elgg_ts and __elgg_token to avoid changing selector-only hrefs since fragment-only hrefs are normalized by the browser. Not sure how this didn't show up until now. git-svn-id: http://code.elgg.org/elgg/trunk@9049 36083f99-b078-4883-b0ff-0f9b5a30f544 --- js/lib/security.js | 4 ++-- js/lib/ui.js | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/js/lib/security.js b/js/lib/security.js index fa0a6f7ef..486347b88 100644 --- a/js/lib/security.js +++ b/js/lib/security.js @@ -21,8 +21,8 @@ elgg.security.setToken = function(json) { $('[name=__elgg_ts]').val(json.__elgg_ts); $('[name=__elgg_token]').val(json.__elgg_token); - //also update all links - $('[href]').each(function() { + // also update all links that contain tokens and time stamps + $('[href*="__elgg_ts"][href*="__elgg_token"]').each(function() { this.href = this.href .replace(/__elgg_ts=\d*/, '__elgg_ts=' + json.__elgg_ts) .replace(/__elgg_token=[0-9a-f]*/, '__elgg_token=' + json.__elgg_token); diff --git a/js/lib/ui.js b/js/lib/ui.js index 16f1f969c..85ca8caf1 100644 --- a/js/lib/ui.js +++ b/js/lib/ui.js @@ -36,6 +36,7 @@ elgg.ui.init = function () { elgg.ui.toggles = function(event) { event.preventDefault(); + // @todo might want to switch this to elgg.getSelectorFromUrlFragment(). var target = $(this).toggleClass('elgg-state-active').attr('href'); $(target).slideToggle('medium'); -- cgit v1.2.3