var SCROLL_DELAY = 10; var SITE_TAB_CONTAINER_ID = 'gh-site-select'; var LOGIN_TAB_CONTAINER_ID = 'gh-login'; var languageEnglish = new Object(); var languageDutch = new Object(); var languageFrench = new Object(); languageEnglish.ukSites = "UK Sites"; languageEnglish.beneluxSites = "Benelux Sites"; languageEnglish.frenchSites = "French Sites"; languageEnglish.selectOtherPartnerSite = "Select other partner site"; languageEnglish.closeThisPanel = "Close this panel"; languageEnglish.loginRegister = "Login / Register"; languageEnglish.username = "Username"; languageEnglish.password = "Password"; languageEnglish.forgottenPassword = "Forgotten password"; languageDutch.ukSites = "UK website"; languageDutch.beneluxSites = "Benelux website"; languageDutch.frenchSites = "French website"; languageDutch.selectOtherPartnerSite = "Slecteer andere partner site"; languageDutch.closeThisPanel = "Sluit venster"; languageDutch.loginRegister = "Inloggen / Registreren"; languageDutch.username = "Gebruikersnaam"; languageDutch.password = "Wachtwoord"; languageDutch.forgottenPassword = "Wachtwoord vergeten"; languageFrench.ukSites = "Angleterre"; languageFrench.beneluxSites = "Benelux"; languageFrench.frenchSites = "France"; languageFrench.selectOtherPartnerSite = "Autres sites partenaires"; languageFrench.closeThisPanel = "Fermer cette fenêtre"; languageFrench.loginRegister = "Login / Register"; languageFrench.username = "Username"; languageFrench.password = "Password"; languageFrench.forgottenPassword = "Forgotten password"; var loginHTML; var sitesHTML; function initiate() { this.siteID = document.siteID; this.siteURL = document.siteURL; this.imageURL = document.imageURL; this.registrationURL = document.registrationURL; this.loginFormSubmitURL = this.siteURL + 'static/signin.php'; this.forgottenPasswordURL = this.siteURL + 'static/forgotten_password.php'; languageName = document.language; switch(languageName) { case "english" : language = languageEnglish; break; case "dutch" : language = languageDutch; break; case "french" : language = languageFrench; break; } loginHTML = '

Login below to access your account. If you don\'t have a login, Register with us

'; loginHTML += '
'; loginHTML += ''; loginHTML += '
'; loginHTML += ''; loginHTML += '
'; loginHTML += '' + language.forgottenPassword + '?'; loginHTML += '
'; sitesHTML = '

' + language.ukSites + '

'; sitesHTML += ''; sitesHTML += '
'; //sitesHTML += '
  • '; sitesHTML += '

    ' + language.beneluxSites + '

    '; sitesHTML += ''; sitesHTML += '

    ' + language.frenchSites + '

    '; sitesHTML += ''; sitesHTML += '
    '; this.initiated = true; } function showHide(e) { if (!this.initiated) { initiate(); } containerElement = e.parentNode; scrollerAttribute = getScrollerAttributeName(containerElement.id); // If the current element is already being scrolled then exit scrollerObject = eval ("document." + scrollerAttribute); if (scrollerObject != null) { return; } // 1st time if (containerElement.open == null) { // 1st time containerElement.style.marginTop = "-1000px"; innerDivs = containerElement.getElementsByTagName("div"); mainDiv = innerDivs[0]; // Populate with content depending on the tab's type if (containerElement.id == "gh-login") { mainDiv.innerHTML = loginHTML; } else if (containerElement.id == "gh-site-select") { mainDiv.innerHTML = sitesHTML; } //tabHeight = containerElement.offsetHeight - mainDiv.offsetHeight; tabHeight = e.offsetHeight; mTop = -(containerElement.offsetHeight - tabHeight) + "px"; containerElement.style.marginTop = mTop; //alert ("start margin = " + mTop + ", content height = " + containerElement.offsetHeight); if (containerElement.id == SITE_TAB_CONTAINER_ID) { siteListChangeTextClosePanel(); } else if (containerElement.id == LOGIN_TAB_CONTAINER_ID) { loginChangeTextClosePanel(); } eval("document." + scrollerAttribute + " = setInterval(\"scroll('down', '" + containerElement.id + "')\", SCROLL_DELAY)"); containerElement.open = true; document.shownElement = containerElement; } else if (containerElement.open == false) { if (containerElement.id == SITE_TAB_CONTAINER_ID) { siteListChangeTextClosePanel(); } else if (containerElement.id == LOGIN_TAB_CONTAINER_ID) { loginChangeTextClosePanel(); } eval("document." + scrollerAttribute + " = setInterval(\"scroll('down', '" + containerElement.id + "')\", SCROLL_DELAY)"); containerElement.open = true; document.shownElement = containerElement; } else if (containerElement.open) { if (containerElement.id == SITE_TAB_CONTAINER_ID) { siteListChangeTextOpenPanel(); } else if (containerElement.id == LOGIN_TAB_CONTAINER_ID) { loginChangeTextOpenPanel(); } eval("document." + scrollerAttribute + " = setInterval(\"scroll('up', '" + containerElement.id + "')\", SCROLL_DELAY)"); containerElement.open = false; document.shownElement = null; } } function siteListChangeTextClosePanel() { img = document.getElementById("gh-site-select-image"); img.src = this.imageURL + 'icon_close.gif'; text = document.getElementById("gh-site-select-text"); text.firstChild.nodeValue = language.closeThisPanel; } function siteListChangeTextOpenPanel() { img = document.getElementById("gh-site-select-image"); img.src = this.imageURL + 'icon_arrows.gif'; text = document.getElementById("gh-site-select-text"); text.firstChild.nodeValue = language.selectOtherPartnerSite; } function loginChangeTextClosePanel() { img = document.getElementById("gh-login-image"); img.src = this.imageURL + 'icon_close.gif'; text = document.getElementById("gh-login-label"); text.firstChild.nodeValue = language.closeThisPanel; } function loginChangeTextOpenPanel() { img = document.getElementById("gh-login-image"); img.src = this.imageURL + 'icon_arrows.gif'; text = document.getElementById("gh-login-label"); text.firstChild.nodeValue = language.loginRegister; } function scroll(direction, parentID) { parentContainer = document.getElementById(parentID); // Get inner divs innerDivs = parentContainer.getElementsByTagName("div"); contentElement = innerDivs[0]; tabElement = innerDivs[1]; if (parentContainer.distance == null) { parentContainer.distance = 0.0; } val = parentContainer.distance; proportion = Math.sin((Math.PI / 2.0) * val) * contentElement.offsetHeight; if (direction == 'down') { pos = -contentElement.offsetHeight + proportion; } else if (direction == 'up') { pos = 0 - proportion; } s = pos + "px"; //alert ("move to: " + s + ", content height = " + containerElement.offsetHeight); parentContainer.style.marginTop = s; // Turn off scroller and reset distance if (parentContainer.distance >= 1) { scrollerAttributeName = getScrollerAttributeName(parentID); eval("clearInterval(document." + scrollerAttributeName + ")"); eval("document." + scrollerAttributeName + " = null;"); parentContainer.distance = 0.0; } else { val += 0.05; parentContainer.distance = val; } } function getScrollerAttributeName(s) { return s.replace(/-/g, "_"); }