/**********************************************************************************
*   $Id$
*
*  Allgemeine JavaScript Funktionen
*
*********************************************************************************/
function picshow(picid) {
  document.getElementById(picid).style.visibility = "visible";
}

function pichide(picid) {
  document.getElementById(picid).style.visibility = "hidden";
}

function setpos(id, posx, posy){
 
  /*alert('wid:'+wid+' old:'+posx+' new:'+leftpos);*/
  leftpos = getLeftPos( posx, posy )
  document.getElementById(id).style.top = posy + 'px';
  document.getElementById(id).style.left = leftpos + 'px';
}

function getLeftPos( posx, posy )
{
 if (navigator.appName == "Netscape" && document.layers != null){ wid = window.innerWidth; }
  if (document.all != null){ wid = document.body.clientWidth; }
  else { wid = window.innerWidth; }
  if (wid > 935)
  	leftpos = ((wid - 935) / 2 ) + posx;
  else
  	leftpos = posx;
  	
  return leftpos;
}

function mContact( dom, user , view, subject ){

var tSubject = subject;

tSubject = tSubject.replace( /&auml;/,'ae' );
tSubject = tSubject.replace( /&ouml;/,'oe' );
tSubject = tSubject.replace( /&uuml;/,'ue' );
tSubject = tSubject.replace( /&Auml;/,'Ae' );
tSubject = tSubject.replace( /&Ouml;/,'Oe' );
tSubject = tSubject.replace( /&Uuml;/,'Ue' );
tSubject = tSubject.replace( /&szlig;/,'ss' );
   
if ((view.length == 0) || (view.indexOf('@')+1)) {
	document.write("<a href=" + "'mai" + "lto:" + user + "@" + dom + "?subject=" + tSubject + "'>" + user + "@" + dom + "</a>"); 
	}
	else  {
	document.write("<a href=" + "'mai" + "lto:" + user + "@" + dom + "?subject=" + tSubject + "'>" + view + "</a>"); 
	}
}
//Variablen
var aktWappen = 0;
//Funktionen fuer die Wappenanzeige
function hideWappen( id ){
if( id != 0 )
	document.getElementById(id).style.visibility ="hidden";
}

function showWappen( id ){
aktWappen = id;
document.getElementById(id).style.visibility ="visible";		
}

function changeWappen( close_id, open_id ){
if( close_id != open_id){
	hideWappen( close_id );
	showWappen( open_id );
	}
}

//Funktionen fuer die Wappenpositionierung

function Coord(/*in: Number*/ x, /*in: Number*/ y){
  this.x = (!x)?0:x;
  this.y = (!y)?0:y; 
}
//Funktion holt aktuelle Mausposition
function getMouseXY(ev) {

  var pos = new Coord(0,0);
  if(ev){
	  if(ev.pageX){
	    pos.x = ev.pageX;	
	    pos.y = ev.pageY;
	  } 
  }
  else if(window.event && window.event.clientX) {
    var isStrictMode = document.compatMode 
        && document.compatMode != 'BackCompat' ? true : false;
    var scrollX = isStrictMode ? 
        document.documentElement.scrollLeft : document.body.scrollLeft;
    var scrollY	= isStrictMode ? 
        document.documentElement.scrollTop : document.body.scrollTop;
    pos.x = window.event.clientX + scrollX;
    pos.y = window.event.clientY + scrollY;    
  } 
  return pos;
}
//Variablendefinition

var allowMove = true;
var posImgSizeW  = 20;  // PosImageSizeWidth/Height ist das Offset f?r das Bild der Anzeige,
var posImgSizeH = 20;  // das f?r den Koordinatenwert innerhalb Karte abgezogen werden muss

//Funktion zum setzen der Dummyimagegr?sse f?r genaue Positionierung
function setDummyImageSize( xSize, ySize ) {
  posImgSizeW = xSize;
  posImgSizeH = ySize;
} 

//Funktion errechnet das Offset fuer die Position in der Karte
function getPosInMap(ev){
var pos = new Coord(0,0);
  pos = getMouseXY(ev);
  lPos = getLeftPos( pos.x, pos.y );
  lDif = lPos - pos.x;
  pos.x = pos.x - lDif - posImgSizeW;
return pos;
}

// Im Positionierungsmodus Drag'n'Drop aktiv/inaktiv
function enableMove() {
	if( allowMove ) allowMove = false;
	else allowMove = true; 
 }

function getMapPos(ev){
	var tmpCoord = getPosInMap(ev);
	
	if( allowMove){	
	if(tmpCoord.y < 540  && tmpCoord.x > 190 && tmpCoord.x < 935 ){
		document.getElementById('actxcoord').value = tmpCoord.x - posImgSizeW;
		document.getElementById('actycoord').value = tmpCoord.y - posImgSizeH;	
		}
	}
}

function setCursorImg(ev){
 var tmpCoord = getMouseXY(ev);

 	 if(tmpCoord.y < 540  && tmpCoord.x > 350 && tmpCoord.x < 1080 && allowMove){
		document.getElementById('image').style.left = tmpCoord.x - posImgSizeW;
	 	document.getElementById('image').style.top = tmpCoord.y - posImgSizeH; 
	 	document.getElementById('image').style.position = "absolute";
	 
	 	showWappen('image');
 	}  
}

//Funktion zum festellen von Fenstergr?ssen?nderung des Browsers
function WinReload() {
    location.href = location.href;
}
//Mozillaueberwachung initialisieren  //IE-Init steht in main.inc.php inerhalb des <body>-Tags
if ( window.innerWidth ) {
  window.onresize = WinReload; 
}

//Funktion fuer Sortierung der dbLists
function SortList( formName, toSortColumn, toSortType, oldSortColumn ) {
 var sortForm = document.forms[formName];
 
 if( oldSortColumn == toSortColumn ) {
	 if( toSortType == "ASC" ) toSortType = "DESC";
	 else toSortType = "ASC";
 }
 sortForm.sortColumn.value = toSortColumn;
 sortForm.sortType.value = toSortType;
 sortForm.submit();
}

function SortListByUser( formName ){
 var sortForm = document.forms[formName]; 
 sortForm.submit();
}
//Funktionen zum Einblenden des bewegten DIV-Elements
var g_divElem;
var g_divElemUL;
var g_maxWidth;
var g_tmpWidth;
var g_startWidth;

function sizeDiv(){	

	if( g_tmpWidth < g_maxWidth ){				
			g_tmpWidth += 5;	
			g_divElem.style.width = g_startWidth + g_tmpWidth;			
			window.setTimeout("sizeDiv()", 4 );			
		}
	else 
	{		
		g_divElemUL.style.visibility = "visible";
		g_divElemUL.style.zindex = 99;
	}
}

function showDiv(){
		g_divElemUL.style.visibility = "visible";
		g_divElemUL.style.zindex = 99;
}

function showDivSizing(divName, startWidth, maxWidth, divElemUL){
	if(divName && maxWidth ){
	//BenutzerCtrl ausblenden (wegen IE Anzeigefehler)
	 tmpCtrl = document.getElementById( "uCtrl" );
	 tmpCtrl.style.visibility = "hidden";
	 g_divElem = document.getElementById( divName );
	 g_divElemUL = document.getElementById( divElemUL );	 
	 g_maxWidth = maxWidth;
	 g_tmpWidth = 0;
	 g_startWidth = startWidth;	 
	 g_divElem.style.visibility = "visible";
	 g_divElemUL.style.visibility = "hidden";
	 //sizeDiv();
	 showDiv();
	}
}

function hideDiv(){
	if( g_divElem && g_divElemUL ){
		g_divElem.style.visibility = "hidden";
		g_divElemUL.style.visibility = "hidden";
		//BenutzerCtrl wieder einblenden
 	  tmpCtrl = document.getElementById( "uCtrl" );
	  tmpCtrl.style.visibility = "visible";
	}
}

