/***fe9901
 * File:         main.js
 * Language:     JavaScript
 * Author:       chemmedia
 * Date:         30.06.20021
 ***/


preloadFlag = false;

function resetPicDiv() {
  varPicDiv = document.getElementById("picDiv");
  if (varPicDiv != undefined) varPicDiv.style.display = "none";
}

function newImage(arg) {
  if (document.images) {
    rslt = new Image();
    rslt.src = arg;
    return rslt;
  }
}

function preloadImages() {
  if (document.images) {
    //menu_1 = newImage("images/jalousie_sel.gif'.'");
    //menu_2 = newImage("images/lamellen_sel.gif'.'");
    //menu_3 = newImage("images/rollo_sel.gif'.'");
    //menu_4 = newImage("images/plissee_sel.gif'.'");
    //menu_5 = newImage("images/markisen_sel.gif'.'");
    //menu_6 = newImage("images/insekten_sel.gif'.'");

    preloadFlag = true;
  }
}

function changeImages(_imgname, _source) {
  if (document.images && preloadFlag) {
    if (IsBrowser.ns5 || IsBrowser.ie5 || IsBrowser.ie4 || IsBrowser.ns4 || IsBrowser.op3) {
      document[_imgname].src = _source;
    }
  }
}

function openZoom(name, title, zoomx, zoomy, params) {
  if (typeof zoomx == 'undefined') {
    zoomx = 200;
  }
  if (typeof zoomy == 'undefined') {
    zoomy = 200;
  }
  if (typeof title == 'undefined') {
    title = 'begegnungen';
  }
  zoom = window.open(name, title, "width="+zoomx+", height="+zoomy+", innerheight="+zoomx+", innerwidth="+zoomy+", dependent=yes, toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes"+", "+params);
  zoom.focus();
}

function openRemark(name) {
  zoom = window.open(name, "bemerkungen", "width=780, height=400, innerheight=780, innerwidth=450, dependent=no, toolbar=yes, location=no, directories=no, status=yes, menubar=yes, scrollbars, resizable=yes");
  zoom.focus();
}

function openColors(name, param) {
  document.forms[0].colorselection.value = param;

  colors = window.open(name, "farben", "width=780, height=400, innerheight=780, innerwidth=450, dependent=no, toolbar=yes, location=no, directories=no, status=yes, menubar=yes, scrollbars, resizable=yes");
  colors.focus();
}

function openPopup(name, title, width, height) {
  if (!width) {
    width  = "780";
  }
  if (!height) {
    height = "400";
  }

  cond  = "width=" + width + ", ";
  cond += "height=" + height + ", ";
  cond += "innerheight=" + height + ", ";
  cond += "innerwidth=" + width + ", ";
  cond += "dependent=no, toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars, resizable=yes";

  myWindow = window.open(name, title, cond);
  myWindow.focus();
}

function checkBox(cbname) {
  if ((cbname == '') || (cbname == undefined)) return;
  if (document.getElementsByName(cbname)[0].value == '') {
    document.getElementsByName(cbname)[0].checked = false;
  } else {
    document.getElementsByName(cbname)[0].checked = true;
  }
}

// zeigt imgPath anhand der Mausposition in einem div an
function picDivShow(ev, imgPath, imgDesc) {
  document.onmousemove = picDivMove;

  var abstand = 30;

  var varLeftMargin = 0;
  varPicDivImg = document.getElementById("picDivImg");
  varPicDivImg.src = imgPath;
  varPicDivDesc = document.getElementById("picDivDesc");
  if (document.getElementById("main_Box")) varLeftMargin = document.getElementById("main_Box").offsetLeft;

  if (imgDesc != '') {
    varPicDivDesc.style.display = "";
    varPicDivDesc.innerHTML     = imgDesc;
  } else {
    varPicDivDesc.style.display = "none";
    varPicDivDesc.innerHTML     = "";
  }
  varPicDiv = document.getElementById("picDiv");
  varPicDiv.style.display = "";

  // Positionierung
  picDivMove(ev);
}

// versteckt div wieder
function picDivHide() {
  varPicDiv = document.getElementById("picDiv");
  varPicDiv.style.display = "none";

  document.onmousemove = null;
}

function picDivMove(e) {
  var abstand = 30;

  var varLeftMargin = 0;
  if (document.getElementById("main_Box")) varLeftMargin = document.getElementById("main_Box").offsetLeft - abstand;

  var varPicDiv = document.getElementById("picDiv");

  x = (document.all) ? window.event.x + document.body.scrollLeft : e.pageX;
  y = (document.all) ? window.event.y + document.body.scrollTop  : e.pageY;

  if (varPicDiv != null) {
    varPicDiv.style.left = (x + abstand) + "px";
    // netscape
    if ((varLeftMargin != 0) && (window.event == null)){ varPicDiv.style.left = (x - varLeftMargin) + "px";}
    var varPicDivImg = document.getElementById("picDivImg");
    if ((varPicDivImg != null) && (varPicDivImg.height != null)) {
      height = varPicDivImg.height;
      varPicDiv.style.top  = (y - height / 2) + "px";
    }
  }
}

function addImageDescShow(ev, el, top, left, width) {
  var container = document.getElementById(el);
  container.style.display = "";
  var varLeftMargin = 0;
  if (document.getElementById("main_Box")) varLeftMargin = document.getElementById("main_Box").offsetLeft;

  if (window.event == null) {
    // netscape
    container.style.left = ev.pageX + left;
    container.style.top  = ev.pageY + top;
  } else {
    // IE
    container.style.left = event.clientX + document.body.scrollLeft + left;
    container.style.top  = event.clientY + document.body.scrollTop  + top;
  }

  if (varLeftMargin != 0) container.style.left = parseInt(container.style.left) - varLeftMargin;

  if ((typeof width != 'undefined') && (width != '')) container.style.width = width;
}

// versteckt addImageDesc
function addImageDescHide(ev, el) {
  var container = document.getElementById(el);
  container.style.display = "none";
}

// setzt in item das neue Ziel mit url und dem Wert von param
function setInput(url, uparam, uparam2, param, param2) {
  // param
  if (param != null) {
    // es gibt 2 Parameter!
    value  = document.getElementsByName(param)[0].value;

    if ((value != null) && (value == '')) {
      url   += "&" + uparam + "=";
    } else {
      url   += "&" + uparam + "=" + value;
    }
    // param2
    value  = document.getElementsByName(param2)[0].value;
    if ((value != null) && (value == '')) {
      url   += "&" + uparam2 + "=";
    } else {
      url   += "&" + uparam2 + "=" + value;
    }
  } else {
    // es gibt nur einen Parameter
    value  = document.getElementsByName(uparam2)[0].value;

    if ((value != null) && (value == '')) {
      url   += "&" + uparam + "=";
    } else {
      url   += "&" + uparam + "=" + value;
    }
  }
  return url;
}

function submitInput(url) {
  window.location.href = url;
}

function setAmount(uparam, param) {
  alert(window.location.href);
  setInput(window.location.href, uparam, param);
}

var innerPopUpsVisible  = new Array();

function positionEl(elContainerID, elID, top, left, right) {
  elContainer = document.getElementById(elContainerID);
  if (elContainer == null) {
    return;
  }
  if (top    == undefined) top   = 0;
  if (left   == undefined) left  = 0;
  if (right  == undefined) right = 0;
  if (right != 0) right += elContainer.offsetWidth;
  el = document.getElementById(elID);
  el.style.top  = offsetTop(elContainer)  + top  + "px";
  el.style.left = offsetLeft(elContainer) + left + right + "px";
}

function offsetTop(el) {
  var ot = el.offsetTop;
  while ((el = el.offsetParent) != null) { ot += el.offsetTop; }
  return ot;
}

function offsetLeft(el) {
  var ol = el.offsetLeft;
  while ((el = el.offsetParent) != null) { ol += el.offsetLeft; }
  return ol;
}

function openInnerPopUp(elContainerID, elID, top, left, right) {
  positionEl(elContainerID, elID, top, left, right);
  el = document.getElementById(elID);
  el.style.display = "";
  el.style.zIndex  = 100;
  el.style.visibility = 'visible';
  innerPopUpsVisible.push(elID);
}

function hideInnerPopUps() {
  while(innerPopUpsVisible.length > 0) {
    el = document.getElementById(innerPopUpsVisible.pop());
    el.style.display = "none";
  }
}

document.onclick = hideInnerPopUps;

function openTooltip(elContainerID, elID, top, left, right) {
  positionTooltipEl(elContainerID, elID, top, left, right);
  el = document.getElementById(elID);
  el.style.display = "";
  el.style.zIndex  = 100;
  el.style.visibility = 'visible';
  innerPopUpsVisible.push(elID);
}

function positionTooltipEl(elContainerID, elID, top, left, right) {
  elContainer = document.getElementById(elContainerID);
  if (elContainer == null) {
    return;
  }
  if (top    == undefined) top   = 0;
  if (left   == undefined) left  = 0;
  if (right  == undefined) right = 0;
  if (right != 0) right += elContainer.offsetWidth;
  el = document.getElementById(elID);
  el.style.top  = offsetTop(elContainer)  + top  + "px";
  el.style.left = offsetLeft(elContainer) - (offsetLeft(elContainer) - elContainer.offsetLeft) + left + right + "px";
}

function isValidRalCode(code) {
  gueltig = 0;

  if ((value < 1000) || (value == '')) {
    gueltig = 0;
  }
  if ((value >= 1000) && (value <= 1037)) {
    gueltig = 1;
  }
  if ((value >= 2000) && (value <= 2013)) {
    gueltig = 1;
  }
  if ((value >= 3000) && (value <= 3033)) {
    gueltig = 1;
  }
  if ((value >= 4001) && (value <= 4012)) {
    gueltig = 1;
  }
  if ((value >= 5000) && (value <= 5026)) {
    gueltig = 1;
  }
  if ((value >= 6000) && (value <= 6036)) {
    gueltig = 1;
  }
  if ((value >= 7000) && (value <= 7048)) {
    gueltig = 1;
  }
  if ((value >= 8000) && (value <= 8029)) {
    gueltig = 1;
  }
  if ((value >= 9001) && (value <= 9023)) {
    gueltig = 1;
  }

  return gueltig;
}

function submitTheForm(e) {
  var keyCode = (navigator.appName == "Netscape") ? e.which : e.keyCode;
  if (keyCode == 13) {
    document.theForm.submit();
  }
}

function getKey(e) {
  if (!e) e = window.event;
  if (e.which)   return e.which;
  if (e.keyCode) return e.keyCode;

  return null;
}
