var isIE = (navigator.appName == "Microsoft Internet Explorer");
var dirty = false;

var ukLink = "http://www.genussregionenmarketing.at/gis/grmDetailSearch.aspx?provider=google&pid=1&w=720px&h=440px&z=7"

/* Clears searchbox' default value at onfocus */

function clearDefault(el){
  if (el.defaultValue==el.value) {
    el.value = "";
  }
}

/* Hides divisions with special entry text
   first argument is entry-text (kein Eintrag)
   following argments are div-ids to check    */

function hideDiv() {
  var ctr;
  var data = '';
  var fld = hideDiv.arguments;
  for (var i=1; i<(fld.length); i++) {
    ctr = document.getElementById(fld[i]);
    if (ctr) {
      data = ctr.innerHTML;
      if (data.indexOf(fld[0]) >= 0) {
        ctr.style.visibility = 'hidden';
        ctr.style.height = '0px';
      }
    }
  }
}

function showDiv(nam, shw) {
  var ctr = document.getElementById(nam);
  if (ctr) ctr.style.visibility = (shw) ? 'visible' : 'hidden';
}

function displayDiv(nam, shw) {
  var ctr = document.getElementById(nam);
  if (ctr) ctr.style.display = (shw) ? 'block' : 'none';
}


function toggleDiv(nam) {
  var ctr = document.getElementById(nam);
  if (ctr) ctr.style.display = (ctr.style.display=='block') ? 'none' : 'block';
}

/*--------------------------------------
		nützliche Funktionen für Formulare
	--------------------------------------*/

function getValue(nam) {
	var ctr = document.getElementById(nam);
	return (ctr) ? ctr.value : '';
}

function setValue(nam, val) {
	var ctr = document.getElementById(nam);
	if (ctr) { ctr.value = val; }
}

function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}
 
function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
 
function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function setBackground(nam, dx, dy) {
	var ctr = document.getElementById(nam);
	if (ctr) { ctr.style.backgroundPosition = dx+'px '+dy+'px'; }
}

function doReload() {
	if (dirty) {
		dirty = false;
		var cmd = "window.location=window.location.href";
		window.setTimeout(cmd,1000);
	}
}
	
/*--------------------------------------
		Funktionen für Mouseover-Menü
	--------------------------------------*/

function keepDiv() { this.stay = 1; }
function freeDiv() { this.stay = 0; }
function showOvr() {
	this.ovrDiv.style.visibility = 'visible'; 
  var cmd = "hideOvr('"+this.ovrDiv.id+"',0)";
  window.setTimeout(cmd,2000);
}
function hideOvr(nam) {
	var ctr = document.getElementById(nam);
	if (ctr.stay) {
		  var cmd = "hideOvr('"+nam+"',0)";
		  window.setTimeout(cmd,1000);
	} else
		ctr.style.visibility = 'hidden'; 
}

function hoverDiv(nam, ovr) {
	var ctr = document.getElementById(nam);
	var ovd = document.getElementById(ovr);
  ctr.onmouseover = showOvr;
  ctr.ovrDiv = ovd;
  ovd.onmouseover = keepDiv;
  ovd.onmouseout = freeDiv;
}

/*--------------------------------------
		Funktionen für Geodaten-Anzeige
	--------------------------------------*/

function getWidth(){
    var de = document.documentElement;
    var width = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
    return width;
}

function getHeight(){
    var de = document.documentElement;
    var height = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight;
    return height;
}

var mapH_lst = 404;
var mapW_lst = 704;
var mapH_umk = 524;
var mapW_umk = 934;
var up_H = 540;
var up_W = 820;

var akt_c;
var akt_h;
var akt_w;

function showOverlay(W, H, C) {
	showDiv('ovr_back', 1);
  showDiv('ovr_canv', 1);
  mapPos(W, H, C);
}

function closeOverlay() {
	showDiv('ovr_back', 0);
  showDiv('ovr_canv', 0);
  doReload();
}

function mapPos(mapW, mapH, color) {
	akt_c = color;
	akt_h = mapH;
	akt_w = mapW;

	var h = getHeight();
	var w = getWidth();
  var ctr = document.getElementById('ovr_canv');
  if (ctr) {
  	var t = Math.round((h - mapH) / 2)-10;
  	var l = Math.round((w - mapW) / 2)+10;
  	if (t < 0) t = 0; if (l < 0) l = 0;
    ctr.style.height = mapH + 'px';
    ctr.style.width = mapW + 'px';
    ctr.style.top = t + 'px';
    ctr.style.left = l + 'px';
 		ctr = document.getElementById('ovr_frame');
    ctr.style.background = (color) ? color : "transparent";
  }
}

function winResize() {
	mapPos(akt_w, akt_h, akt_c);
}

function findGIS() {
	var ctr = document.getElementById('ovr_frame');
	if (ctr) {
		ctr.src = ukLink;
		showOverlay(mapW_umk, mapH_umk, 'white');
	}
}

function showGIS() {
	var param = '';
	var data = getParam("[showUid]=");
	if (data > '') {
		var uid = parseInt(data);
		param += "uid="+data+"&";
	}
	var data = getParam("[bl]=");
	if (data > '') {
		param += "bl="+data+"&";
	}
	var data = getParam("[ort]=");
	if (data > '') {
		param += "ort="+data+"&";
	}
	var data = getParam("[region]=");
	if (data > '') {
		param += "region="+data+"&";
	}
	var data = getParam("[name]=");
	if ((data > '') && (data.substr(0,4) != 'Name')) {
		param += "name="+data+"&";
	}
	var ctr = document.getElementById('ovr_frame');
	if (ctr) {
		ctr.src = "fileadmin/showMap.php?"+param;
		showOverlay(mapW_lst, mapH_lst);
	}
}

function showFrame(W, H, C) {
	showDiv('ovr_back', 1);
  showDiv('ovr_canv', 1);
  mapPos(W, H, C);
}

function showUpload(uid) {
	var lnk = 'fileadmin/pdfUpload.php?uid='+uid;
	var ctr = document.getElementById('ovr_frame');
	if (ctr) {
		dirty = true;
		ctr.src = lnk;
		showFrame(up_W, up_H, 'white');
	}
}

function getParam(param) {
	var args = unescape(window.location.search);
	var pos = args.indexOf(param);
	if (pos > 0) {
		var data = args.substr(pos+param.length);
		pos = data.indexOf("&");
		data = data.substr(0,pos);
		if (data.length) return data;
	}
	return '';
}

/*--------------------------------------
		Funktionen für das Suchformular
	--------------------------------------*/
	
var highlight = "green";

function checkForm(frm) {
	for (var i = 0; i < frm.length; ++i) {
		if (frm.elements[i].type == 'select-one') {
			frm.elements[i].style.color = (frm.elements[i].value > "") ? highlight : "black";
		}
	}
	return false;
}

function resetForm(fname) {
	var frm = document.forms[fname];
	for (var i = 0; i < frm.length; ++i) {
		if ((frm.elements[i].type == 'select-one') || (frm.elements[i].type == 'text')) {
			frm.elements[i].style.color = "black";
			frm.elements[i].value = "";
		}
	}
	frm.submit();
}

/*-----------------------------------------------
		Funktionen für die Seitenindividualisierung
	-----------------------------------------------*/

function setLogo() {
	var bl = getParam("[bl]=");
	if (bl == 'Kärnten') {
	  var ctr = document.getElementById('gw_logo');
	  if (ctr) ctr.src = "fileadmin/template/images/logo_genussland_ktn.png";
	}
}

