From 51d51c61550ea0179434bdcd7bdc2fafa90267d1 Mon Sep 17 00:00:00 2001 From: Stanislas Rolland <typo3@sjbr.ca> Date: Thu, 28 Jun 2012 14:28:09 -0400 Subject: [PATCH] [BUGFIX] RTE link insertion issues with IE9 Problem: inRange method not supported by standard range object used with IE9. Solution: Use standards-based method with IE9 Note: Thanks to Johannes Pfeiffer Change-Id: Iccf230e6103e72953e49eb1a4dde967f3e65a5b7 Releases: 4.7, 6.0 Resolve: #38300 Reviewed-on: http://review.typo3.org/12422 Reviewed-by: Stanislas Rolland Tested-by: Stanislas Rolland --- .../rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js b/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js index 8055323465ec..e88edc94a874 100644 --- a/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js +++ b/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js @@ -285,7 +285,7 @@ HTMLArea.TYPO3Link = Ext.extend(HTMLArea.Plugin, { } if (HTMLArea.classesAnchorSetup) { var range = this.editor.getSelection().createRange(); - if (!Ext.isIE) { + if (!(Ext.isIE6 || Ext.isIE7 || Ext.isIE8)) { this.cleanAllLinks(node, range, false); } else { this.cleanAllLinks(node, range, true); @@ -316,7 +316,7 @@ HTMLArea.TYPO3Link = Ext.extend(HTMLArea.Plugin, { setLinkAttributes: function(node, range, cur_target, cur_class, cur_title, imageNode, addIconAfterLink, additionalValues) { if (/^a$/i.test(node.nodeName)) { var nodeInRange = false; - if (!Ext.isIE) { + if (!(Ext.isIE6 || Ext.isIE7 || Ext.isIE8)) { this.editor.focus(); nodeInRange = HTMLArea.DOM.rangeIntersectsNode(range, node); } else { @@ -347,7 +347,7 @@ HTMLArea.TYPO3Link = Ext.extend(HTMLArea.Plugin, { } else { if (!Ext.isOpera) { node.removeAttribute('class'); - if (Ext.isIE) { + if (Ext.isIE6 || Ext.isIE7 || Ext.isIE8) { node.removeAttribute('className'); } } else { @@ -411,7 +411,7 @@ HTMLArea.TYPO3Link = Ext.extend(HTMLArea.Plugin, { cleanAllLinks: function(node, range, keepLinks) { if (/^a$/i.test(node.nodeName)) { var intersection = false; - if (!Ext.isIE) { + if (!(Ext.isIE6 || Ext.isIE7 || Ext.isIE8)) { this.editor.focus(); intersection = HTMLArea.DOM.rangeIntersectsNode(range, node); } else { -- GitLab