You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltaspike.apache.org by ta...@apache.org on 2015/08/08 12:05:37 UTC
deltaspike git commit: DELTASPIKE-968 refactored
Repository: deltaspike
Updated Branches:
refs/heads/master f7c0f1b3f -> 3b355587a
DELTASPIKE-968 refactored
Project: http://git-wip-us.apache.org/repos/asf/deltaspike/repo
Commit: http://git-wip-us.apache.org/repos/asf/deltaspike/commit/3b355587
Tree: http://git-wip-us.apache.org/repos/asf/deltaspike/tree/3b355587
Diff: http://git-wip-us.apache.org/repos/asf/deltaspike/diff/3b355587
Branch: refs/heads/master
Commit: 3b355587a07d6a97d5a01ce4a82d67a616512f0a
Parents: f7c0f1b
Author: Thomas Andraschko <ta...@apache.org>
Authored: Sat Aug 8 12:05:24 2015 +0200
Committer: Thomas Andraschko <ta...@apache.org>
Committed: Sat Aug 8 12:05:24 2015 +0200
----------------------------------------------------------------------
.../resources/deltaspike/windowhandler.js | 46 ++++++++------------
1 file changed, 17 insertions(+), 29 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/3b355587/deltaspike/modules/jsf/impl/src/main/resources/META-INF/resources/deltaspike/windowhandler.js
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/resources/META-INF/resources/deltaspike/windowhandler.js b/deltaspike/modules/jsf/impl/src/main/resources/META-INF/resources/deltaspike/windowhandler.js
index b90a1e7..3e55f7e 100644
--- a/deltaspike/modules/jsf/impl/src/main/resources/META-INF/resources/deltaspike/windowhandler.js
+++ b/deltaspike/modules/jsf/impl/src/main/resources/META-INF/resources/deltaspike/windowhandler.js
@@ -100,10 +100,16 @@ window.dswh = window.dswh || {
for (var i = 0; i < links.length; i++) {
var link = links[i];
- if (storeWindowTreeEnabled) {
+ if (dswh.strategy.CLIENTWINDOW.isHrefDefined(link) === true) {
if (!link.onclick) {
link.onclick = function() {
- dswh.strategy.CLIENTWINDOW.storeWindowTree();
+ if (storeWindowTreeEnabled) {
+ dswh.strategy.CLIENTWINDOW.storeWindowTree();
+ }
+ if (tokenizedRedirectEnabled) {
+ dswh.strategy.CLIENTWINDOW.tokenizedRedirect(this);
+ return false;
+ }
return true;
};
} else {
@@ -117,34 +123,16 @@ window.dswh = window.dswh || {
//ie handling added
evt = evt || window.event;
- return dswh.strategy.CLIENTWINDOW.storeWindowTree() && oldonclick.bind(this)(evt);
- };
- })();
- }
- }
- }
-
- if (tokenizedRedirectEnabled && dswh.strategy.CLIENTWINDOW.tokenizedRedirectRequired(link) === true) {
- if (!link.onclick) {
- link.onclick = function() {
- dswh.strategy.CLIENTWINDOW.tokenizedRedirect(this);
- return false;
- };
- } else {
- // prevent double decoration
- if (!("" + link.onclick).match(".*tokenizedRedirect.*")) {
- //the function wrapper is important otherwise the
- //last onclick handler would be assigned to oldonclick
- (function storeEvent() {
- var oldonclick = link.onclick;
- link.onclick = function(evt) {
- //ie handling added
- evt = evt || window.event;
-
var proceed = oldonclick.bind(this)(evt);
if (typeof proceed === 'undefined' || proceed === true) {
- dswh.strategy.CLIENTWINDOW.tokenizedRedirect(this);
- return false;
+ if (storeWindowTreeEnabled) {
+ dswh.strategy.CLIENTWINDOW.storeWindowTree();
+ }
+
+ if (tokenizedRedirectEnabled) {
+ dswh.strategy.CLIENTWINDOW.tokenizedRedirect(this);
+ return false;
+ }
}
return proceed;
};
@@ -156,7 +144,7 @@ window.dswh = window.dswh || {
}
},
- tokenizedRedirectRequired : function(link) {
+ isHrefDefined : function(link) {
// skip link without href
if (link.href && link.href.length > 0) {
return true;