// Selektiertes Gebiet
var mapselection	= false;
var openedNews		= false;

// Ajax Loading Image

loadImage     = new Image();
loadImage.src = 'g/loading.gif';

ausgabenHeader = new Object;
ausgabenHeader.active = '';
ausgabenHeader.j = 'Rhein-Hunsrück';
ausgabenHeader.al = 'Linz';
ausgabenHeader.an = 'Neuwied';
ausgabenHeader.ca = 'Andernach';
ausgabenHeader.z = 'Mainz';
ausgabenHeader.l = 'Nahe';
ausgabenHeader.u = 'Kirn';
ausgabenHeader.e = 'Oeffentlicher Anzeiger';
ausgabenHeader.d = 'Mittelmosel';
ausgabenHeader.cm = 'Mayen';
ausgabenHeader.b0 = 'Koblenz';
ausgabenHeader.rl = 'Bad Ems; Lahnstein';
ausgabenHeader.rd = 'Diez';
ausgabenHeader.f = 'Westerwälder Zeitung';
ausgabenHeader.hb = 'Betzdorf';
ausgabenHeader.ha = 'Altenkirchen';
ausgabenHeader.k = 'Bad Neuenahr-Ahrweiler';

if (document.images) var pp = new Array();

preload('g/map_empty.gif','g/map_al.gif','g/map_an.gif','g/map_b0.gif',
'g/map_ca.gif','g/map_cm.gif','g/map_d.gif','g/map_e.gif',
'g/map_f.gif','g/map_ha.gif','g/map_hb.gif','g/map_j.gif','g/map_k.gif',
'g/map_l.gif','g/map_rd.gif','g/map_rl.gif','g/map_u.gif','g/map_z.gif');


//
// AJAX Functions
//
var AJAX =
{	
	createXMLHttpRequest: function() {
		var xmlHttp = null;
		// Mozilla, Opera, Safari sowie Internet Explorer 7
		if (typeof XMLHttpRequest != 'undefined') {
			xmlHttp = new XMLHttpRequest();
		}
		if (!xmlHttp) {
			// Internet Explorer 6 und &auml;lter
			try {
				xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				try {
	    		xmlHttp  = new
					ActiveXObject("Microsoft.XMLHTTP");
				} catch(e) {
	   			xmlHttp  = null;
				}
			}
		}
		return xmlHttp;
	}
}

function AXgetRegioNews(what)
{
	openedNews=false;
	while (hiddenAxContainer.childNodes.length)
	{
		hiddenAxContainer.removeChild(hiddenAxContainer.childNodes[0]);
	}
	document.getElementById('ajaxPlaceNews').scrollTop = 0;
	document.getElementById('ajaxPlaceNews').innerHTML = '<p><img src="g/loading.gif" alt="Daten werden geladen."/></p>';
	var AReq = AJAX.createXMLHttpRequest();
	if (what=="liste") {
		try { AReq.open("GET","index_long.htm", false); } catch (e) { alert('Error'); return 0; }
	} else {
		try { AReq.open("GET",what.toUpperCase()+"/t/index.htm", false); } catch (e) { alert('Error'); return 0; }
	}
	AReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	AReq.setRequestHeader('If-Modified-Since', 'Thu, 1 Jan 1970 00:00:00 GMT'); AReq.setRequestHeader('Cache-Control','no-cache'); 
	try { AReq.send(null); } catch(e) { }
	if (AReq.readyState == 4) {
		if (AReq.status == 200) {
			document.getElementById('ajaxPlaceHead').firstChild.data = (what=="liste") ? 'Übersicht' : 'RZ Lokalteil '+ausgabenHeader.active;
			document.getElementById('ajaxPlaceNews').innerHTML = AReq.responseText;
		} else {
			document.getElementById('ajaxPlaceHead').firstChild.data = 'RZ Lokalteil '+ausgabenHeader.active;
			document.getElementById('ajaxPlaceNews').innerHTML = '<p>Keine Meldungen vorhanden.</p>';
		}
	}
}


function getRt(id,url) {
	if (openedNews!==false)	{
		var myObj = document.getElementById('rtnews'+openedNews);
		while (myObj.hasChildNodes()) myObj.removeChild(myObj.childNodes[0]);
		while (hiddenAxContainer.childNodes.length) {
			myObj.appendChild(hiddenAxContainer.childNodes[0].cloneNode(true));
			hiddenAxContainer.removeChild(hiddenAxContainer.childNodes[0]);
		}
	}
	var AReq = AJAX.createXMLHttpRequest();
	try { AReq.open("GET", url, false); } catch (e) { alert('error'); }
	AReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	AReq.setRequestHeader('If-Modified-Since', 'Thu, 1 Jan 1970 00:00:00 GMT'); AReq.setRequestHeader('Cache-Control','no-cache'); 
	try { AReq.send(null); } catch(e) { }	

	if (AReq.readyState == 4) {
		if (AReq.status == 200) {
			var myObj = document.getElementById('rtnews'+id);
			for (var i=0;i<myObj.childNodes.length;i++) {
				hiddenAxContainer.appendChild(myObj.childNodes[i].cloneNode(true));
			}
			var text = AReq.responseText;
			text+='<a href="javascript:closeRt();" class="meldungeinklappen"></a>';
			myObj.innerHTML = text;
			document.getElementById('ajaxPlaceNews').scrollTop = myObj.offsetTop-document.getElementById('rtnews0').offsetTop;
			openedNews = id;
		} else {
			alert('Bei dem Request der Datei '+url+' ist ein Problem aufgetreten. Status: '+AReq.status );
		}
	}
}


function getRtASYNC(id,url) {		// nicht mehr benutzt, umgestellt auf GET und synchronen Betrieb, jo 27.10.2008
	if (openedNews!==false)	{
		var myObj = document.getElementById('rtnews'+openedNews);
		while (myObj.hasChildNodes()) myObj.removeChild(myObj.childNodes[0]);
		while (hiddenAxContainer.childNodes.length) {
			myObj.appendChild(hiddenAxContainer.childNodes[0].cloneNode(true));
			hiddenAxContainer.removeChild(hiddenAxContainer.childNodes[0]);
		}
	}
	var AReq = AJAX.createXMLHttpRequest();
	try { AReq.open("POST", url, true); } catch (e) { alert('error'); }
	AReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

	AReq.onreadystatechange = function() {
		if (AReq.readyState == 4) {
			if (AReq.status == 200) {
				var myObj = document.getElementById('rtnews'+id);
				for (var i=0;i<myObj.childNodes.length;i++) {
					hiddenAxContainer.appendChild(myObj.childNodes[i].cloneNode(true));
				}
				var text = AReq.responseText;
				text+='<a href="javascript:closeRt();" class="meldungeinklappen"></a>';
				myObj.innerHTML = text;
				document.getElementById('ajaxPlaceNews').scrollTop = myObj.offsetTop-document.getElementById('rtnews0').offsetTop;
				openedNews = id;
			} else {
				alert('Bei dem Request der Datei '+url+' ist ein Problem aufgetreten. Status: '+AReq.status );
			}
		}
	}
	
	try { AReq.send(null); } catch(e) { }	
}

function closeRt() {
	var myObj = document.getElementById('rtnews'+openedNews);
	while (myObj.hasChildNodes()) myObj.removeChild(myObj.childNodes[0]);
	while (hiddenAxContainer.childNodes.length) 	{
		myObj.appendChild(hiddenAxContainer.childNodes[0].cloneNode(true));
		hiddenAxContainer.removeChild(hiddenAxContainer.childNodes[0]);
	}
	// document.getElementById('ajaxPlaceNews').scrollTop = myObj.offsetTop-document.getElementById('rtnews0').offsetTop;
	openedNews = false;
}

//
// Popup initialization
//
var popx   = 0;
var popy   = 0;
var popact = 0;
var popdir = 1; // 0:left  1:right  2:center  3:auto  4:fixed
var popxf  = 0;
var popyf  = 0;

var popobj = null;
var popok  = false;

//
// Popup configuration
//
var popwidth   = 160;
var border     = 1;
var offsetx    = 20;
var offsety    = -66;
var minpopx    = 165;
var maxpopx    = 600;
var minpopy    = 328;
var maxpopy    = 743;

function preload(){
  if (document.images){
    var max=arguments.length;
    var off=pp.length;
    for (cnt=0; cnt<max; cnt++){
      pp[cnt+off]     = new Image();
      pp[cnt+off].src = arguments[cnt];
    };
  };
};

var Ktime   = null;
var Kactive = null;

function Kover(what){
  if (!bok || Kactive == what || mapselection == what) return;
  Ktime = setTimeout('Kshow("'+what+'")',50);
  return false;
};

function Kout(what){
  if (!bok || mapselection == what) return;
  if (Ktime) clearTimeout(Ktime);
  Ktime = null;
  Kactive = null;
  swapImage('overlay','g/map_empty.gif');
  return false;
};

function Kshow(what){
  swapImage('overlay','g/map_'+what+'.gif');
  Kactive = what;
};

function KSelect(what) {
	mapselection = what;
   if (what!='liste') swapImage('overlayselectedimg','g/map_'+what+'.gif');
	ausgabenHeader.active = ausgabenHeader[what];
	AXgetRegioNews(what);
	return false
};

function swapImage(name,src){
  if ((document.images)&&(document[name])&&(pp)){
  var ppl=pp.length;
    for(var cnt=0;cnt<ppl;cnt++)
      if((pp[cnt].src.indexOf(src)!=-1)&&(pp[cnt].complete)){
        document[name].src=pp[cnt].src;
        break;
      };
    document[name].src=src;
  };
};


function auto(title, text) { return text?dtc(3, title, text):dts(3, title) };

function dts(direction, text) {
  if (!popok) return false;
  // offsety = -133;
  txt = '<TABLE WIDTH="'+popwidth+'" BORDER="0" CELLPADDING="'+(border+2)+'" CELLSPACING="0" CLASS="mappop"><TR><TD CLASS="mapcaption">'+unescape(text)+'</TD></TR></TABLE>'
  popdir = direction;
  writeObj(popobj, txt);
  return dt_show();
};
function dtsf(x, y, text) {
  popxf = x;
  popyf = y;
  dts(4, text);
};

function dtc(direction, title, text) {
  if (!popok) return false;
  // offsety = -133;
  txt = '<TABLE WIDTH="'+popwidth+'" BORDER="0" CELLPADDING="'+border+'" CELLSPACING="0" CLASS="mappop"><TR><TD><TABLE WIDTH="100%" BORDER="0" CELLPADDING="2" CELLSPACING="0"><TR><TD CLASS="mapcaption">'+unescape(title)+'</TD></TR></TABLE><TABLE WIDTH="100%" BORDER="0" CELLPADDING="2" CELLSPACING="0"><TR><TD CLASS="maptext">'+unescape(text)+'</TD></TR></TABLE></TD></TR></TABLE>'
  popdir = direction;
  writeObj(popobj, txt);
  return dt_show();
};
function dtcf(x, y, title, text) {
  popxf = x;
  popyf = y;
  dts(4, title, text);
};

function dt_show() {
  if (bok) {
    if (!popact) {
      move();
      popact = 1;
      showObj(popobj);
    };
  };
  return false;
};

function dt_hide() {
  if (bok) {
    if (popact) {
      popact = 0;
      hideObj(popobj);
    };
  };
  return false;
};

function nopop() { return dt_hide() };

function getObj(name) {
  if (ns4) return document[name]
  else if (ie4) return document.all[name]
  else if (dom) return document.getElementById(name);
};

function writeObj(obj,text) {
  if (ns4) {
    var doc = obj.document;
    doc.open();
    doc.write(text);
    doc.close();
  } else {
    obj.innerHTML = text;
  };
};

function showObj(obj) {
  if (ns4) obj.visibility = "show"
  else obj.style.visibility = "visible";
};

function hideObj(obj) {
  if (ns4) obj.visibility = "hide"
  else obj.style.visibility = "hidden";
};

function moveObj(obj,x,y) {
  if (ns4) {
    obj.left = x;
    obj.top = y;
  } else {
  	x = x+'px';
  	y = y+'px';
    obj.style.left = x;
    obj.style.top = y;
  };
};

function sizeObj(obj,w,h) {
  if (ns4) {
    obj.width = w;
    obj.height = h;
  } else {
    obj.style.width = w;
    obj.style.height = h;
  };
};

function clipObj(obj,x1,y1,x2,y2) {
  if (ns4) {
    obj.clip.left = x1;
    obj.clip.top = y1;
    obj.clip.right = x2;
    obj.clip.bottom = y2;
  } else {
    obj.style.clip = 'rect('+y1+','+x2+','+y2+','+x1+')';
  };
};

function getheightObj(obj){
  if (ns4) {
    return obj.clip.bottom;
  } else {
    return obj.offsetHeight;
  };
};

function mouseMove(e) {
  if (ns4) {popx=e.pageX; popy=e.pageY;}
  else if (ie4) {popx=event.x; popy=event.y;}
  else if (ie5 || (dom&&ie)) {popx=event.clientX+document.documentElement.scrollLeft; popy=event.clientY+document.documentElement.scrollTop;}
  else if (dom) {popx=e.pageX; popy=e.pageY;}
  if (popact) move();
  return true;
};

function move() {
  if (bok) {
    if (popdir == 4){
      moveObj(popobj, popxf, popyf);
    } else if (popdir == 3){
      newx = popx+offsetx;
      if (newx < minpopx) newx = minpopx;
      if (newx+popwidth > maxpopx) newx = maxpopx-popwidth;
      newy = popy+offsety;
      if (newy < minpopy) newy = minpopy;
      if (newy+getheightObj(popobj) > maxpopy) newy = popy-(offsety/2)-getheightObj(popobj);
      moveObj(popobj, newx, newy);
    } else if (popdir == 2) moveObj(popobj, popx+offsetx-(popwidth/2), popy+offsety);
    else if (popdir == 1) moveObj(popobj, popx+offsetx, popy+offsety);
    else if (popdir == 0) moveObj(popobj, popx-(offsetx/2)-popwidth, popy+offsety);
  };
};

//
// Browser Detection
//
var ie  = false;
var ns4 = false;
var dom = true;
var ie4 = false;
var ie5 = false;
var ope = false;
var moz = false;
var bok = true;

function init_inlinefunc(){
	ie  = (document.all)?true:false;
	ns4 = (document.layers)?true:false;
	dom = (document.getElementById)?true:false;
	ie4 = (document.all && !dom)?true:false;
	ie5 = (dom && navigator.userAgent.indexOf('MSIE 5')>0);
	ope = (dom && navigator.userAgent.indexOf('Opera')>0);
	moz = (dom && navigator.userAgent.indexOf('Gecko')>0);
	bok = ns4 || ie4 || dom;
	if (bok) {
	   popobj = getObj('popDiv');
	   popok = true;
	   document.onmousemove = mouseMove;
	   if (ns4) document.captureEvents(Event.MOUSEMOVE);
	}
	hiddenAxContainer = document.createElement('div');
// Meldung der vorausgewählten Ausgabe wird automatisch geladen. jo 13.7.08 
	try {
		var qs=location.search.substr(1);
		if (qs) {
			var regEx = /\/([A-Z,0-9]{1,2})$/;
		   regEx.exec(qs);
		   if (RegExp.$1) setTimeout("KSelect(RegExp.$1.toLowerCase())",200);
		  }
	} catch(e) { }
}


