diff --git a/APPL/Shared/Shared.inc b/APPL/Shared/Shared.inc index b6723c6ad3..d4a09e4886 100644 --- a/APPL/Shared/Shared.inc +++ b/APPL/Shared/Shared.inc @@ -447,8 +447,6 @@ var shared = { var matched = waarde.match(new RegExp(strre, "gi")); if (matched != null) { - var prs_key = -1; - var prs_name = ""; for (var i = 0; i < matched.length; i++) { var groups = matched[i].match(new RegExp(strre, "i")); // Zonder 'g'lobal-flag @@ -1228,7 +1226,7 @@ safe = { } } - // Checking for [mention] prs_key | prs_name [/mention] as used in notestamp + // Checking for [mention] prs_key | prs_name [/mention] as used in notes strre = "\\[(mention)\\](\\d+)\\|(.+)\\[\\/(?:\\1)\\]"; var matched = waarde.match(new RegExp(strre, "gi")); if (matched != null) diff --git a/APPL/Shared/default.xsl b/APPL/Shared/default.xsl index bc5495b960..ccc0658a93 100644 --- a/APPL/Shared/default.xsl +++ b/APPL/Shared/default.xsl @@ -123,21 +123,20 @@ // Checking for [link] url (|optionaltext) [/link] // or [url] url (|optionaltext) [/url] var strre = "\\[(link|url)\\](.*?)\\[\\/(?:\\1)\\]"; - var strLinkre = "^((ftp|http|https):\\/\\/|(mailto|tel):)"; - var re = new RegExp(strre, "gi"); - var allowedLinkRegex = new RegExp(strLinkre, "gi"); - var matched = waarde.match(re); + var allowedLinkRegex = new RegExp("^((ftp|http|https):\\/\\/|(mailto|tel):)", "i"); // S("allowedLinkRegex") + var matched = waarde.match(new RegExp(strre, "gi")); if (matched != null) { var url = ""; var label = ""; for (var i = 0; i < matched.length; i++) { - if (matched[i].match(re)) // om RegExp.$2 te bepalen + var groups = matched[i].match(new RegExp(strre, "i")); // Zonder 'g'lobal-flag + if (groups) { - // RegExp.$1 = "link" of "url" (wordt verder niet gebruikt) - // RegExp.$2 = url (|optionaltext) - var result = RegExp.$2.split("|"); + // groups[1] = "link" of "url" (wordt verder niet gebruikt) + // groups[2] = url (|optionaltext) + var result = groups[2].split("|"); if (result.length > 0) { var safe_url = safe.htmlattr(result[0]); @@ -158,6 +157,24 @@ } } + // Checking for [mention] prs_key | prs_name [/mention] as used in notes + // Deze strippen we ipv parsen, je bent het immers zelf + strre = "\\[(mention)\\](\\d+)\\|(.+)\\[\\/(?:\\1)\\]"; + var matched = waarde.match(new RegExp(strre, "gi")); + if (matched != null) + { + for (var i = 0; i < matched.length; i++) + { + var groups = matched[i].match(new RegExp(strre, "i")); // Zonder 'g'lobal-flag + if (groups) + { // groups[1] = "mention" (wordt verder niet gebruikt) + // groups[2] = prs_key + // groups[3] = prs_name + safehtml = safehtml.replace(safe.html(matched[i]), "@" + safe.html(groups[3])); + } + } + } + for (var i = 0; i < safepairs.length; i++) { var code = safepairs[i]; @@ -1660,7 +1677,7 @@ END:VCALENDAR - + @@ -2055,7 +2072,7 @@ END:VCALENDAR - + @@ -3175,7 +3192,7 @@ END:VCALENDAR - + @@ -3607,7 +3624,7 @@ END:VCALENDAR - +