questlab/www/analytics/plugins/Overlay/templates/startOverlaySession.twig
2016-04-10 18:55:57 +02:00

50 lines
No EOL
1.8 KiB
Twig

<html><head><title></title></head><body>
<script type="text/javascript">
function handleProtocol(url) {
if ({% if isHttps %}true{% else %}false{% endif %}) {
return url.replace(/http:\/\//i, "https://");
} else {
return url.replace(/https:\/\//i, "http://");
}
}
function removeUrlPrefix(url) {
return url.replace(/http(s)?:\/\/(www\.)?/i, "");
}
if (window.location.hash) {
var match = false;
var urlToRedirect = window.location.hash.substr(1);
var urlToRedirectWithoutPrefix = removeUrlPrefix(urlToRedirect);
var knownUrls = {{ knownUrls|raw }};
for (var i = 0; i < knownUrls.length; i++) {
var testUrl = removeUrlPrefix(knownUrls[i]);
if (urlToRedirectWithoutPrefix.substr(0, testUrl.length) == testUrl) {
match = true;
if (navigator.appName == "Microsoft Internet Explorer") {
// internet explorer loses the referrer if we use window.location.href=X
var referLink = document.createElement("a");
referLink.href = handleProtocol(urlToRedirect);
document.body.appendChild(referLink);
referLink.click();
} else {
window.location.href = handleProtocol(urlToRedirect);
}
break;
}
}
if (!match) {
var idSite = window.location.href.match(/idSite=([0-9]+)/i)[1];
window.location.href = "index.php?module=Overlay&action=showErrorWrongDomain"
+ "&idSite=" + idSite
+ "&url=" + encodeURIComponent(urlToRedirect);
}
}
else {
window.location.href = handleProtocol("{{ mainUrl|e('js') }}");
};
</script>
</body></html>