/**
 * JavaScript for LIGA
 *
 */

// Setzt Fokus auf Eingabefeld in der Suchmaske
function setFocus() {
  document.Suchformular2.suchbegriff.focus();
  document.Suchformular2.suchbegriff.select();
}

//Ruft das Druckmenu in der Druckversion auf
function DruckMenu () {
  window.print ();
}

//Neues Fenster fuer Druckversionen
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  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=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

//Layer
//layer ein und ausblenden nach 7 sekunden
var timeobject = window.setTimeout("", 1);

function zeitlimit(){
    window.clearTimeout(timeobject);
    timeobject=window.setTimeout('allelayeraus()',10000);
    //window.clearTimeout(timeobject2);
    //timeobject2=window.setTimeout('MM_swapImgRestore()',10000);
}

function allelayeraus(){
    MM_showHideLayers ('glossarLayer','','hide');
    MM_swapImgRestore();
    //self.focus()
}

// Glossar-Layer
function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'block':(v='hide')?'none':v; }
    obj.display=v; }
}

// Layer switch Scene
function MM_showHideScenes() { //v3.0
  var i,p,v,obj,args=MM_showHideScenes.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'block':(v='hide')?'none':v; }
    obj.display=v; }
}

//Funktionen stellt Position des Wortes fest und passt Layer an
var BV=parseFloat(navigator.appVersion.indexOf("MSIE")>0?navigator.appVersion.split(";")[1].substr(6):navigator.appVersion);
var BN=navigator.appName;
var IsWin=(navigator.userAgent.indexOf('Win')!=-1);
var IsMac=(navigator.userAgent.indexOf('Mac')!=-1);
var OP=(navigator.userAgent.indexOf('Opera')!=-1&&BV>=4)?true:false;
var NS=(BN.indexOf('Netscape')!=-1&&(BV>=4&&BV<5)&&!OP)?true:false;
var SM=(BN.indexOf('Netscape')!=-1&&(BV>=5)||OP)?true:false;
var IE=(BN.indexOf('Explorer')!=-1&&(BV>=4)||SM)?true:false;

if(!eval(frames['self'])) {
    frames.self = window;
    frames.top = top;
}

var mFrame;
mFrame = eval(frames['self']);


function RelativePlaceLayer(mName, imgName, relX, relY) {

    var Image = mFrame.document.images[imgName];
    var Elem = imgName;

    if(IE)
        if(BV>=5)
            var Menu = mFrame.document.getElementById(mName);
        else
            var Menu = mFrame.document.all[mName];
    if(NS)
        var Menu = mFrame.document.layers[mName];
    if(!Menu) {
        return false;
    }

    if(IE) {
        Menu = Menu.style;
    }

    if (NS) {
        Menu.w = Menu.clip.width;
        Menu.h = Menu.clip.height;
    }

    // Do some MAGIC...
    var pW = GetWidthHeight()[0] + GetLeftTop()[0];
    var pH = GetWidthHeight()[1] + GetLeftTop()[1];

    var x = GetImgXY(Elem)[0] + relX;
    var y = GetImgXY(Elem)[1] + relY;

    if(IE) {
        Menu.left = (parseInt(Menu.width)>pW)?pW - parseInt(Menu.width):x + "px";
        Menu.top =  (parseInt(Menu.height)>pH)?pH - parseInt(Menu.height):y + (OP?"":"px");
    }
    if(NS) {
        x = (x+Menu.w>pW)?pW - Menu.w:x;
        y = (y+Menu.h>pH)?pH - Menu.h:y;
        //alert("x:"+x+" y:"+y);
        Menu.moveToAbsolute(x,y);
    }
    return true;
}

function GetImgXY(imgObj) {
    //IE,NS,SM,OP
    //This function returns the x,y coordinates of an object.

    var x;
    var y;

    if(IE)  {
        x = getOffset(imgObj)[0];
        y = getOffset(imgObj)[1];
    } else  {
        x = imgObj.x;
        y = imgObj.y;
    }

    return [x, y];
}

function GetImgWH(imgObj) {
    //IE,NS,SM,OP
    //This function returns the width and height of an image.

    return [parseInt(imgObj.width), parseInt(imgObj.height)];
}

function getOffset(imgObj) {
    //IE,NS,SM,OP
    //This function returns the horizontal and vertical offset of an object.

    x = imgObj.offsetLeft;
    y = imgObj.offsetTop;
    ce =imgObj.offsetParent;
    while (ce!=null)    {
        y += ce.offsetTop;
        x += ce.offsetLeft;
        ce = ce.offsetParent;
    }
    return [x,y];
}

function GetLeftTop(f) {
    //IE,NS,SM,OP
    //This function returns the scroll bars position on the menus frame.

    if(!f) f = mFrame;
    if(IE)
        return [OP?0:SM?f.scrollX:f.document.body.scrollLeft,OP?0:SM?f.scrollY:mFrame.document.body.scrollTop];
    if(NS)
        return [f.pageXOffset,f.pageYOffset];
}

function GetWidthHeight(f) {
    //IE,NS,SM,OP
    //This function returns the width and height of the menus frame.

    if(!f) f = mFrame;
    if(IE&&!SM)
        return [f.document.body.clientWidth,f.document.body.clientHeight];
    if(NS||SM)
        return [f.innerWidth,f.innerHeight];
}

/**
 * toggle box (slide up/down)
 */ 
function toggleBox(id) {
    $(id).click(function(){
        $(id+"Box").slideToggle(1000);
        $(id).toggleClass("open");
        $(id).toggleClass("close");
      });
}
function jRelPos(id, relObj, x, y)
{
	var pos = $(relObj).position();
	$("#"+id).css("left",pos.left - x);
	$("#"+id).css("top",pos.top - y);
}

function showGlossar(layerId, element) {
	//allelayeraus();
	jRelPos(layerId, element, 50, 25);
    $('#'+layerId).show();
}

