/* **************************************************
   *                                                *
   *    Copyright © 2006-2010 by Dominic Griesel    *
   *                                                *
   ************************************************** */



// Browser herausfinden
var is_ie, is_nc, is_moz, is_opera, is_saf;
findBrowsers();
var supportsFade = (is_ie || is_moz);
/*var userAgent=navigator.userAgent.toLowerCase();
var is_opera= ((document.getElementById && !document.all) || window.opera)
var is_saf=((userAgent.indexOf('applewebkit') !=-1) ||(navigator.vendor=='Apple Computer, Inc.'));
var is_webtv=(userAgent.indexOf('webtv') !=-1);
var is_ie=((userAgent.indexOf('msie') !=-1) &&(!is_opera) &&(!is_saf) &&(!is_webtv));
var is_ie4=((is_ie) &&(userAgent.indexOf('msie 4.') !=-1));
var is_moz=((navigator.product=='Gecko') &&(!is_saf));
var is_kon=(userAgent.indexOf('konqueror') !=-1);
var is_ns=((userAgent.indexOf('compatible')==-1) &&(userAgent.indexOf('mozilla') !=-1) &&(!is_opera) &&(!is_webtv) &&(!is_saf));
var is_ns4=((is_ns) &&(parseInt(navigator.appVersion)==4));
var is_mac=(userAgent.indexOf('mac') !=-1);*/

var queryString = new Array();
var search = location.search;
if (search != "") search = search.substr(1, search.length-1);
var parts = search.split("%26");
for (i = 0; i < parts.length; i++)
{
	if (parts[i].indexOf("=") > -1)
	{
		queryString[parts[i].split("=")[0]] = parts[i].split("=")[1];
	}
	else
	{
		queryString[parts[i]] = "";
	}
}

function findObj(n, d)
{
var i,x;
if(!d) d=document;
if(!(x=d[n])&&d.all)
  x=d.all[n];
for (i=0;!x&&i<d.forms.length;i++)
  x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++)
  x=findObj(n,d.layers[i].document);
if(!x && d.getElementById)
  x=d.getElementById(n);
return x;
}

function fadeIn(id, time)
{
    var speed = Math.round(time/100);
    var obj = findObj(id);
    var opac = getOpacity(obj);
    if (opac==-1 && obj.className=="opacity0")
    {
        setOpacity(id, 0);
        opac=0;
    }
    
    
    var number=0;
    for (op=opac; op <= 99; op++)
    {
        setTimeout("setOpacity('" +id+ "', " +op+ ")", (speed*number));
        number++;
    }
    //Mozilla-Flacker-Bug
    setTimeout("setOpacity('" +id+ "', 99.9)", (speed*number));
    
}



function fadeOut(id, time)
{
    var speed = Math.round(time/100);
    var obj = findObj(id);
    var opac = getOpacity(obj);
    if (opac==-1 && obj.className!="opacity0")
    {
        setOpacity(id, 99.9);
        opac=100;
    }
    
    var number=0;
    for (op=opac; op >= 0; op--)
    {
        setTimeout("setOpacity('" +id+ "', " +op+ ")", (speed*number));
        number++;
    }
}

function setOpacity(id, op)
{
    var obj = findObj(id);
    var x = op/100;
    obj.style.opacity = x;
    obj.style.MozOpacity = x;
    obj.style.KhtmlOpacity = x;
    obj.style.filter = "alpha(opacity=" + op + ")";
}

function getOpacity(obj)
{
    var ret;
    if (obj.style.opacity)
    {
        ret = obj.style.opacity * 100;
    }
    else if (obj.style.MozOpacity)
    {
        ret = obj.style.MozOpacity * 100;
    }
    else if (obj.style.KhtmlOpacity)
    {
        ret = obj.style.KhtmlOpacity * 100;
    }
    else
    {
        ret=-1;
    }
    
    if (ret == 99.9) ret=100;
    return ret;
}

function findBrowsers()
{
    if (document.ids) is_nc = true;
    else if (document.all && !document.getElementById) is_ie = true;
    else if (window.opera && !document.createElement) is_opera = true;
    else if (window.opera && window.getComputedStyle) is_opera = true;
    else if (window.opera && document.compatMode) is_opera = true;
    else if (window.opera && document.releaseEvents) is_opera = true;
    else if (window.getSelection && window.atob) is_moz = true;
    else if (window.getSelection && !document.compatMode) is_moz = true;
    else if (window.clipboardData && document.compatMode) is_ie = true;
    else if (window.clipboardData) is_ie = true;
    else if (document.getElementById && !document.all) is_opera = true;
    else if (document.images && !document.all) is_moz = true;
    
    var userAgent = navigator.userAgent.toLowerCase();
    is_saf = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == 'Apple Computer, Inc.'));
    
}

//
// getPageScroll()
// Returns array with x,y page scroll values.
// Core code from - quirksmode.org
//
function getPageScroll(){

  var yScroll;

  if (self.pageYOffset) {
    yScroll = self.pageYOffset;
  } else if (document.documentElement && document.documentElement.scrollTop){  // Explorer 6 Strict
    yScroll = document.documentElement.scrollTop;
  } else if (document.body) {// all other Explorers
    yScroll = document.body.scrollTop;
  }

  arrayPageScroll = new Array('',yScroll);
  return arrayPageScroll;
}



//
// getPageSize()
// Returns array with page width, height and window width, height
// Core code from - quirksmode.org
// Edit for Firefox by pHaez
//
function getPageSize(){

  var xScroll, yScroll;

  if (window.innerHeight && window.scrollMaxY) {
    xScroll = document.body.scrollWidth;
    yScroll = window.innerHeight + window.scrollMaxY;
  } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
    xScroll = document.body.scrollWidth;
    yScroll = document.body.scrollHeight;
  } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
    xScroll = document.body.offsetWidth;
    yScroll = document.body.offsetHeight;
  }

  var windowWidth, windowHeight;
  if (self.innerHeight) { // all except Explorer
    windowWidth = self.innerWidth;
    windowHeight = self.innerHeight;
  } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
    windowWidth = document.documentElement.clientWidth;
    windowHeight = document.documentElement.clientHeight;
  } else if (document.body) { // other Explorers
    windowWidth = document.body.clientWidth;
    windowHeight = document.body.clientHeight;
  }

  // for small pages with total height less then height of the viewport
  if(yScroll < windowHeight){
    pageHeight = windowHeight;
  } else {
    pageHeight = yScroll;
  }

  // for small pages with total width less then width of the viewport
  if(xScroll < windowWidth){
    pageWidth = windowWidth;
  } else {
    pageWidth = xScroll;
  }


  arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
  return arrayPageSize;
}



if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function (elt /*, from*/) {
        var len = this.length;

        var from = Number(arguments[1]) || 0;
        from = (from < 0)
         ? Math.ceil(from)
         : Math.floor(from);
        if (from < 0)
            from += len;

        for (; from < len; from++) {
            if (from in this &&
          this[from] === elt)
                return from;
        }
        return -1;
    };
}

String.prototype.endsWith = function (str) {
    return this.length >= str.length && this.lastIndexOf(str) + str.length == this.length
}
