Current File : /home/inlingua/www/templates/inlingua/javascript/wScript.js |
////////////////////////////////////////////////////////////////
//
// wScript.js 2.4.3
// erstellt durch Scholl Communications AG, 77694 Kehl, www.scholl.de
// erstellt mit Weblication� Content Management Server, www.weblication.de
//
// History:
// - 28.10.2004: Funktion changeLocationUrl fuer Framepraesenzen um nonavid und nonavidblank erweitert
//
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
//
// Anzupassende Variablen:
//
// Rahmen, in den die Seiten zu laden sind, falls kein Ziel angegeben wurde ("top" fuer Nonframe).
var frameContent = "content";
//
// Falls Cookies zur Weitergabe von NavId verwendet werden sollen (0 = aus, 1 = ein).
var useCookiesNavId = 0;
//
// Falls Cookies zur Weitergabe von PageId verwendet werden sollen (0 = aus, 1 = ein).
var useCookiesPageId = 0;
//
// Aktiviert den Debugmodus zur Fehlersuche (0 = aus, 1 = ein).
var cacheMode = 0;
//
// Aktiviert den Debugmodus zur Fehlersuche (0 = aus, 1 = ein).
var debugMode = 0;
//
// Optionen des standard Popupfensters.
var optionsPopup = "scrollbars=yes,resizable=yes,menubar=yes,location=no,width=600,height=480";
//
// Optionen des ersten Popupfensters.
var optionsPopup1 = "scrollbars=yes,resizable=yes,menubar=no,location=no,width=240,height=360";
//
// Optionen des zweiten Popupfensters.
var optionsPopup2 = "scrollbars=yes,resizable=yes,menubar=no,location=no,width=160,height=160";
//
//erscheint wenn ein Pflichtfeld nicht ausgef�llt wurde
var messageObligation = " ist ein Pflichtfeld!\n";
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
//
// Beschreibung: Browsererkennung
//
////////////////////////////////////////////////////////////////
var ns = (document.layers) ? 1 : 0;
var ie = (document.all) ? 1 : 0;
var dom = (document.getElementById) ? 1 : 0;
var mac = (navigator.platform.indexOf("Mac") != -1) ? 1 : 0;
////////////////////////////////////////////////////////////////
//
// Beschreibung: Leitet zur sprachspezifischen Startseite um
//
////////////////////////////////////////////////////////////////
function redirectLanguage(subDir){
if(subDir == "undefined" || subDir == null){
subDir = "";
}
var userLanguage = getUserLanguage();
if(userLanguage == "de"){
document.location.href = "/en/" + subDir;
}
else if(userLanguage.indexOf("en") != -1){
document.location.href = "/wEnglisch/" + subDir;
}
else{
document.location.href = "/en/" + subDir;
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Ermittelt die Sprache des Benutzers
//
// Return: Benutzersprache
//
////////////////////////////////////////////////////////////////
function getUserLanguage(){
var userLanguage;
if(navigator.language){
userLanguage = navigator.language;
}
else if(navigator.userLanguage){
userLanguage = navigator.userLanguage;
}
if(debugMode == 1){
alert(userLanguage);
}
return userLanguage
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Ermittelt den Weblication-Benutzernamen
//
// Return: Benutzername
//
////////////////////////////////////////////////////////////////
function getUserName(){
var cookieStr = document.cookie;
var userName = "";
var checkIsLogedin = /wId=WSESSIONID/;
if(checkIsLogedin.test(cookieStr) == true){
cookieStr = cookieStr.replace('%2D', '');
var checkUser = /WSESSIONID\%40([\w|\d|\-|_|;|,|.| ]+)\%40([\w|\d|\-|_]*)\%40/;
var checkUserPublic = /WSESSIONID\%40public_([\w|\d|\-|_|;|,|.| ]+)\%40([\w|\d|\-|_]*)\%40/;
var checkUserPublicAlt = /WSESSIONID\%40public_([\w|\d|\-|_|;|,|.| ]+\%2[0E][\w|\d|\-|_|;|,|.| ]+)\%40([\w|\d|\-|_]*)\%40/;
if(checkUserPublic.test(cookieStr) == true){
userName = RegExp.$1;
userLang = RegExp.$2;
}
else if(checkUserPublicAlt.test(cookieStr) == true){
userName = RegExp.$1;
userName = userName.replace(/\%20/ ,' ');
userName = userName.replace(/\%2E/ ,'.');
userLang = RegExp.$2;
}
else if(checkUser.test(cookieStr) == true){
userName = RegExp.$1;
userLang = RegExp.$2;
}
}
return userName;
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Oeffnet ein Popup-Fenster
//
////////////////////////////////////////////////////////////////
function openPopup(url){
if(debugMode == 1){
alert(url);
}
window.open(url, "popup", optionsPopup);
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Oeffnet ein Popup-Fenster vom Typ 1
//
////////////////////////////////////////////////////////////////
function openPopup1(url){
if(debugMode == 1){
alert(url);
}
window.open(url, "popup1", optionsPopup1);
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Oeffnet ein Popup-Fenster vom Typ 2
//
////////////////////////////////////////////////////////////////
function openPopup2(url){
if(debugMode == 1){
alert(url);
}
window.open(url, "popup2", optionsPopup2);
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Ruft eine neue Adresse auf
//
// Parameter: url = Adresse, die aufgerufen werden soll
//
// Parameter: target = Zielfenster, in dem die Seite angezeigt werden soll
//
// Parameter: navId = ID des Navigationspunktes
//
////////////////////////////////////////////////////////////////
function changeLocation(url, target, navId){
changeLocationUrl(url, target, navId);
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Ruft eine neue Adresse auf
//
// Parameter: url = Adresse, die aufgerufen werden soll
//
// Parameter: target = Zielfenster, in dem die Seite angezeigt werden soll
//
// Parameter: navId = ID des Navigationspunktes
//
////////////////////////////////////////////////////////////////
function changeLocationUrl(url, target, navId){
if(url == "undefined" || url == null || url == "#"){url = "";}
if(target == "undefined" || target == null){target = "";}
if(navId == "undefined" || navId == null){navId = "";}
if(debugMode == 1){
alert("url = " + url + "\ntarget = " + target + "\nnavId = " + navId);
}
if(url == ""){
return;
}
url = url.replace('NAVIDJS', navId);
if(url != ""){
if(useCookiesNavId == 1){
if(navId != ""){
document.cookie = "wNavId=" + navId + ";path=/;";
}
}
if(useCookiesPageId == 1){
var getPageId = /wPageId=(\d+)/;
if(getPageId.test(url) == true){
var wPageId = RegExp.$1;
document.cookie = "wPageId=" + wPageId + ";path=/;";
}
}
if(url == "#"){
url = document.location.href;
url = url.replace(/[\&|\?]navid=\d+/i, "");
}
if(navId != "" && target != "nonavid" && target != "nonavidblank"){
var isNavigationStatic = /wNavStat_~_/;
if(isNavigationStatic.test(url) == true){
url = url.replace(/(\.[\w|\d]+)$/, navId + "$1");
}
else{
var hasNavid = /navid=\d+/;
if(hasNavid.test(url) == false){
var hasParameters = /\?/;
if(hasParameters.test(url) == false){
url = url + '?' + 'navid=' + navId;
}
else{
url = url + '&' + 'navid=' + navId;
}
}
}
}
if(debugMode == 1){
alert("url = " + url + "\ntarget = " + target + "\nnavId = " + navId);
}
if(target == "nonavidblank"){
target = '_blank';
}
if(target == "top" || target == "_top"){
top.location.href = url;
}
else if(target == "parent" || target == "_parent"){
parent.location.href = url;
}
else if(target == "blank" || target == "_blank"){
window.open(url);
}
else if(target == "popup" || target == "_popup"){
window.open(url, "popup", optionsPopup);
}
else if(target == "popup1" || target == "_popup1"){
window.open(url, "popup1", optionsPopup1);
}
else if(target == "popup2" || target == "_popup2"){
window.open(url, "popup2", optionsPopup2);
}
else{
if(target == ""){
target = frameContent;
}
if(target == "nonavid"){
target = frameContent;
}
if(frameContent != "top"){
if(eval("top.frames['" + target + "']")){
eval("top.frames['" + target + "'].location.href = url");
}
else{
window.location.href = url;
}
}
else{
window.location.href = url;
}
}
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Wechselt ein Bild aus
//
// Parameter: picOldId = ID des Bildes, das ersetzt werden soll
//
// Parameter: picNewObj = Neues Bildobjekt das eingesetzt werden soll
//
////////////////////////////////////////////////////////////////
function changePic(picOldId, picNewObj){
if(debugMode == 1){
alert("picOldId = " + picOldId + "\npicNewObj = " + picNewObj);
}
if(document.images[picOldId]){
if(document.images[picOldId].src && picNewObj){
document.images[picOldId].src = picNewObj.src;
}
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Druckt das aktuelle Dokument
//
////////////////////////////////////////////////////////////////
function printDocument(){
if(document.all && navigator.appVersion.substring(22,23)==4) {
self.focus();
var OLECMDID_PRINT = 6;
var OLECMDEXECOPT_DONTPROMPTUSER = 2;
var OLECMDEXECOPT_PROMPTUSER = 1;
var WebBrowser = '<object id="WebBrowser1" width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
WebBrowser1.outerHTML = '';
}
else{
window.print();
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Sendet das Formular
//
// Parameter: form = Formular, das gesendet werden soll.
//
////////////////////////////////////////////////////////////////
function submitForm(form, cacheMode){
var cookieStr = "";
if(checkForm(form) == false){
return;
}
else{
if(cacheMode == 1){
cookieStr += "; path=/";
document.cookie = cookieStr;
}
form.submit();
}
}
//////////////////////////////////////////////////////////////////////////////
//
// Beschreibung: Pr�ft, ob die Plichtfelder im Formular ausgef�llt worden sind.
//
// Parameter: form = Formular, das gepr�ft werden soll.
//
//////////////////////////////////////////////////////////////////////////////
function checkForm(form){
var messageEmail = " enth�lt keine g�ltige Email Adresse!\n"; //erscheint wenn ein Pflichtfeld nicht ausgef�llt wurde
var isObligation = /\|\w*o\w*$/i; //Pflichtfeld, wenn Feldname am Schluss |o enthaelt (z.B.: "Strasse|o")
var isEmail = /\|\w*e\w*$/i; //Emailfeld wenn Feldname am Schluss |e enthaelt (z.B.: "eMail|e")
var isCache = /\|\w*c\w*$/i; //Wird fuer weitere Formulare gespeichert am Schluss |c enthaelt (z.B.: "eMail|c")
//Pflicht- und Emailfeld, wenn am Schluss |oe oder |eo (z.B.: "eMail|eo")
var checkEmail = /.*\@.*\.\w+/i;
var formElement;
var formElementNameOrig;
var elementStr;
var alertStr = "";
var radioButtonName = "";
for(var i = 0; i <= form.elements.length - 1; i++){
var formElement = form.elements[i];
if(formElement){
formElementNameOrig = formElement.name.replace(/\|\w+/, '');
if(formElement.title == ""){
elementStr = formElementNameOrig;
}
else{
elementStr = formElement.title;
}
if(formElement.type == "text" || formElement.type == "textarea" || formElement.type == "select-one" || formElement.type == "password"){
if(isObligation.test(formElement.name) == true){
if(formElement.value == ""){
alertStr += elementStr + messageObligation;
}
}
if(isEmail.test(formElement.name) == true){
if (checkEmail.test(formElement.value) == false){
alertStr += elementStr + messageEmail;
}
}
if(cacheMode == "1"){
if(isCache.test(formElement.name) == true){
if(formElement.value != ""){
cookieStr += "wFc_" + formElementNameOrig + "=" + formElement.value + ":";
}
}
}
}
else if(formElement.type == "checkbox"){
formElementNameOrig = formElement.name.replace(/\|\w+/, '');
if(isObligation.test(formElement.name) == true){
if(formElement.checked == false){
alertStr += elementStr + messageObligation;
}
}
}
else if(formElement.type == "radio"){
if(radioButtonName != formElement.name){
radioButtonName = formElement.name;
var radioButtons = document.getElementsByName(formElement.name);
formElementNameOrig = formElement.name.replace(/\|\w+/, '');
if(isObligation.test(formElement.name) == true){
var isChecked = false;
for(j = 0; j < radioButtons.length; j++){
if(radioButtons[j].checked == true){
isChecked = true
}
}
if(isChecked == false){
alertStr += elementStr + messageObligation;
}
}
}
}
}
}
if(alertStr != ""){
alert(alertStr);
return false;
}
return true;
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Initialisiert das Formular
//
// Parameter: form = Formular, das initialisiert werden soll.
//
////////////////////////////////////////////////////////////////
function initForm(form){
var isCache = /\|\w*c\w*$/i; //Wird fuer weitere Formulare gespeichert am Schluss |c enthaelt (z.B.: "eMail|c")
var formElement;
var formElementNameOrig;
var cookieStr = document.cookie;
var elementValue = "";
if(form){
for(var i = 0; i <= form.elements.length - 1; i++){
var formElement = form.elements[i];
if(formElement){
if(formElement.name){
if(isCache.test(formElement.name) == true){
if(formElement.value == ""){
formElementNameOrig = formElement.name.replace(/\|\w+/, '');
var getElementValue = eval("/wFc_" + formElementNameOrig + "\=([^\:]+)\:/");
if(getElementValue.test(cookieStr) == true){
elementValue = RegExp.$1;
formElement.value = elementValue;
}
}
}
}
}
}
}
else{
//alert("Formular wurde nicht gefunden!\n Wurde es schon geladen?");
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Startet die Suche in einem neuen Fenster
//
////////////////////////////////////////////////////////////////
function startSearch(formName){
if(formName){
var form = formName
}
else{
var form = document.frmSearch;
}
if(form.term.value == "" || form.term.value == " suchen"){
alert("Sie haben noch keinen Suchbegriff eingegeben!");
form.term.focus();
return false;
}
var win = window.open ("", "winSearch","height=440,width=540,status=no,menubar=no,scrollbars=yes");
var x = (screen.width-540)/2;
win.moveTo(x,30);
win.focus();
form.submit();
}
var submenusIdOpen = new Array(0,0,0,0,0,0,0,0,0);
////////////////////////////////////////////////////////////////
//
// Beschreibung: Zeigt einen Layer an
//
// Parameter: layerId = ID des anzuzeigenden Layers
//
////////////////////////////////////////////////////////////////
function showLayer(layerId){
if(ie){
if(document.all[layerId]){
document.all[layerId].style.visibility = 'visible';
}
}
else if(ns){
if(document.layers[layerId]){
document.layers[layerId].visibility = 'visible';
}
}
else if(dom){
if(document.getElementById(layerId)){
document.getElementById(layerId).style.visibility = 'visible';
}
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Schliest einen Layer
//
// Parameter: layerId = ID des zu schliessenden Layers
//
////////////////////////////////////////////////////////////////
function hideLayer(layerId){
if(ie){
if(document.all[layerId]){
document.all[layerId].style.visibility = 'hidden';
}
}
else if(ns){
if(document.layers[layerId]){
document.layers[layerId].visibility = 'hide';
}
}
else if(dom){
if(document.getElementById(layerId)){
document.getElementById(layerId).style.visibility = 'hidden';
}
}
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: �ffnet ein Untermen�
//
// Parameter:
//
////////////////////////////////////////////////////////////////
function openSubmenu(submenuId, submenuLevel){
closeSubmenu(submenuId, submenuLevel);
submenusIdOpen[submenuLevel] = submenuId;
showLayer(submenuId);
showLayer('submenuCloserTop');
showLayer('submenuCloserLeft');
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Schliesst ein Untermen�
//
// Parameter:
//
////////////////////////////////////////////////////////////////
function closeSubmenu(submenuId, submenuLevel){
for(var i=(submenuLevel);i<=submenusIdOpen.length;i++){
if(submenusIdOpen[i] != 0 && submenusIdOpen[i] != submenuId){
hideLayer(submenusIdOpen[i]);
}
}
//hideLayer('submenuCloserTop');
//hideLayer('submenuCloserLeft');
}
////////////////////////////////////////////////////////////////
//
// Beschreibung: Schliesst ein Untermen�
//
// Parameter:
//
////////////////////////////////////////////////////////////////
function closeSubmenuAll(){
closeSubmenu("", 1)
hideLayer('submenuCloserTop');
hideLayer('submenuCloserLeft');
}
function showans(ans,ques)
{
var ans=document.getElementById(ans)
var ques=document.getElementById(ques)
ans.className="show"
ques.className="show"
}
function hideans(ans,ques)
{
var ans=document.getElementById(ans)
var ques=document.getElementById(ques)
ans.className="hidden"
ques.className="hidden"
}
function showdiv(id)
{
for(i=1;i<=document.frm.ctr.value-1;i++)
{
var k="color" + i
document.getElementById(k).className='blue-txt'
}
document.getElementById("color" + id).className='green-txt'
}
//-----
function showans(more)
{
var more=document.getElementById(more)
more.className="show"
}
function hideans(more)
{
var more=document.getElementById(more)
more.className="hidden"
}
//------