document.getElementsByClassName = function(className, tagName)
{
 var elementsByClassName = [];
 if (this.getElementsByTagName)
 {
  var elements = (tagName) ? this.getElementsByTagName(tagName) : this.all || this.getElementsByTagName('*');
  var nrOfElements = elements.length;
  for (var i = 0; i < nrOfElements; i++)
  {
   var element = elements[i];
   var elementClassName = element.className;
   var elementHasClassName = false;
   if (className == elementClassName)
   {
    elementHasClassName = true;
   }
   else if (elementClassName.indexOf(' ') != -1)
   {
    var elementClassNames = elementClassName.split(' ');
    var nrOfClassNames = elementClassNames.length;
    for (var k = 0; k < nrOfClassNames; k++)
    {
     if (className == elementClassNames[k])
     {
      elementHasClassName = true;
      break;
     }
    }
   }
   if (elementHasClassName)
   {
    elementsByClassName.push(element);
   }
  }
 }
 return elementsByClassName;
};
if (!Array.prototype.push)
{
 Array.prototype.push = function()
 {
  var nrOfArguments = arguments.length;
  for (var i = 0; i < nrOfArguments; i++)
  {
   this[this.length] = arguments[i];
  }
  return this.length;
 };
}
var EventBroadcaster = new Object();
EventBroadcaster.init = function(obj)
{
 obj._listeners = new Array();
 obj.broadcastMessage = this._broadcastMessage;
 obj.addListener = this._addListener;
 return obj;
};
EventBroadcaster._broadcastMessage = function(method)
{
 var listeners = this._listeners;
 var i = listeners.length;
 while (i--)
 {
  var listener = listeners[i];
  if (listener[method])
  {
   listener[method]();
  }
 }
};
EventBroadcaster._addListener = function(obj)
{
 this._listeners.push(obj);
 return true;
};
var onloadHandler = (window.onload) ? window.onload : function() { };
window.onload = function()
{
 onloadHandler();
 this.broadcastMessage('onload');
};
EventBroadcaster.init(window);
var GoButton = new Object();
window.addListener(GoButton);
GoButton.onload = function()
{
 if (document.getElementById)
 {
  var button = document.getElementById('go');
  if (button)
  {
   button.onmouseover = function()
   {
    this.className = 'over';
   };
   button.onmouseout = function()
   {
    this.className = '';
   };
  }
 }
};
var SearchForm = new Object();
window.addListener(SearchForm);
SearchForm.onload = function()
{
 if (document.getElementById)
 {
  var form = document.getElementById('search');
  if (form)
  {
   form.onsubmit = function()
   {
    if (!form.searchbox.value)
    {
     alert('Bitte geben Sie einen Suchbegriff ein.');
     form.searchbox.focus();
     return false;
    }
   };
  }
 }
};
function slideShow(direction){
 if(direction=="back"){
  if (activeImage>0){
   activeImage--
  }
 }else if(direction=="forward"){
     if (activeImage<slideImages.length-1){
   activeImage++
     }
 }else{
   activeImage=direction;
 }
 document.getElementById("slideshow").src = slideImages[activeImage];
 document.getElementById("slideshow").setAttribute("alt", slideImages_text[activeImage]);
 if(document.getElementById(("directImage" + activeImage))){
  var siblings = document.getElementById(("directImage" + activeImage)).parentNode.getElementsByTagName("a")
  for(i=0;i<siblings.length;i++){
   siblings[i].className = "slideImageNumber"
  }
  document.getElementById(("directImage" + activeImage)).className = "slideImageNumberAct"
 }
}
function initialiseSlideshow(){
 if(slideImages.length!=0 || slideImages.length!=""){
        if(document.getElementById('allSlideImages'))document.getElementById('allSlideImages').innerHTML = slideImages.length;
        if(document.getElementById('slideshow')){
            document.getElementById('slideshow').src = slideImages[0];
            document.getElementById('slideshow').setAttribute("alt", slideImages_text[0]);
        }
  var ImageNavContent = "";
  for(i=0;i<slideImages.length;i++){
   temp = i+1;
   ImageNavContent+= "<a href='javascript:slideShow(" + i + ");' id='directImage" + i + "'";
   if(i==0){
    ImageNavContent+= " class='slideImageNumberAct' ";
   }else{
    ImageNavContent+= " class='slideImageNumber' ";
   }
   ImageNavContent+= ">" + temp + "</a>";
   if((i+1)!=slideImages.length) ImageNavContent+= " | ";
  }
  if(document.getElementById('ImageNav'))document.getElementById('ImageNav').innerHTML = ImageNavContent;
  if(slideImages.length==1) document.getElementById('slideShowNavigation').style.display = "none";
 }else{
  document.getElementById('slideShowNavigation').style.display = "none";
 }
}
function viewBigImage(){
    window.open("?bildnr="+slideImages_id[activeImage]+"&bildtitel="+slideImages_text[activeImage]+"&bildtyp=referenz","preview","width=560,height=373,menubar=no,status=no,toolbar=no");
}
function previewOpen(breite,hoehe){
    var maximalBreite=screen.availWidth-10;
    var maximalHoehe=screen.availHeight-10;
    if(!breite)breite=550;
    if(!hoehe)hoehe=363;
    breite+=10;
    hoehe+=10;
    if(breite>maximalBreite)breite=maximalBreite;
    if(hoehe>maximalHoehe)hoehe=maximalHoehe;
    window.open("","preview","width="+breite+",height="+hoehe+",menubar=no,status=no,toolbar=no");
}