function bildpopup(source, title, alt)
{
  	var undefined;

  	if(alt == undefined)
		alt = 'Bild';

  	if(title == undefined)
  		title = 'Bildvorschau';

  	windowObj = window.open('','','width=100,height=100,scroll=no,resizable=no,toolbars=no,menubar=no,location=no,status=no');

	with (windowObj)
	{
	   	focus();
	   	document.open();
		document.write(
			'<!DOCTYPE html' + "\n" +
     		' PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"' + "\n" + 
    		' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' + "\n" + 
			'<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">' + "\n" + 
  			'<head>' + "\n" +  	
			'<title>' + title + '</title>' + "\n" + 
			'<meta http-equiv="Content-type" content="text/html; charset=utf-8" />' + "\n" + 
			'<meta name="author" content="M.Sc., B.Sc. R. Kuntze" />' + "\n" + 
			'<meta name="robots" content="noindex, nofollow" />' + "\n" + 
			'<meta name="keywords" content="Gallery" />' + "\n" + 
			'<meta name="description" content="Gallery - Administration" />' + "\n" + 
			'<meta name="generator" content="Gallery" />' + "\n" + 	
			'<base href="' + opener.document.getElementsByTagName("base")[0].getAttribute("href") + '" />' + "\n" + 
			'<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.ico" />' + "\n" + 		
			'<link rel="stylesheet" href="./lib/module_layout.css" type="text/css" />' + "\n" + 
 			'</head>' + "\n" +
 			'<body style="margin:10px; padding:0px" onload="opener.resizeWindow(document.images[0].width, document.images[0].height)">' + "\n" +
 			'<div>' + "\n" +
 			'<a href="#" onclick="self.close(); return false;">' +
	   		'<img style="border: 1px solid black" src="' + source + '" alt="' + alt + '" /></a>' + "\n" +
			'</div>' + "\n" +
 			'</body>' + "\n" +
 			'</html>'			 
		);
	   	document.close();
	}
}

function vidpopup(source, title, width, height)
{
  	var undefined;
 
  	if(title == undefined)
  		title = 'Videovorschau';

  	windowObj = window.open('','','width=100,height=100,scroll=no,resizable=no,toolbars=no,menubar=no,location=no,status=no');

	with (windowObj)
	{
	   	focus();
	   	document.open();
		document.write(
			'<!DOCTYPE html' + "\n" +
     		' PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"' + "\n" + 
    		' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' + "\n" + 
			'<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">' + "\n" + 
  			'<head>' + "\n" +  	
			'<title>' + title + '</title>' + "\n" + 
			'<meta http-equiv="Content-type" content="text/html; charset=utf-8" />' + "\n" + 
			'<meta name="author" content="M.Sc., B.Sc. R. Kuntze" />' + "\n" + 
			'<meta name="robots" content="noindex, nofollow" />' + "\n" + 
			'<meta name="keywords" content="Gallery" />' + "\n" + 
			'<meta name="description" content="Gallery - Administration" />' + "\n" + 
			'<meta name="generator" content="Gallery" />' + "\n" + 	
			'<base href="' + opener.document.getElementsByTagName("base")[0].getAttribute("href") + '" />' + "\n" + 
			'<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.ico" />' + "\n" + 		
			'<link rel="stylesheet" href="./lib/page_layout.css" type="text/css" />' + "\n" + 
 			'</head>' + "\n" +
 			'<body style="margin:10px; padding:0px" onload="opener.resizeWindow(' + width + ', ' + height + ')">' + "\n" +
 			'<div>' + "\n" +
 			'<script type="text/javascript" src="./module/EventArchive/lib/ufo.js"></script>' + "\n" +
            '<p id="flvplayer"></p>' + "\n" +
      		'<script type="text/javascript">' + "\n" +
      		' /*<![CDATA[*/' + "\n" +
			'var FO = {	movie:"./module/EventArchive/lib/flvplayer.swf?file=./' + source + '",' + "\n" +
			'width:"' + width + '",height:"' + height + '",majorversion:"7",build:"0",bgcolor:"#fff",' + "\n" +
			'flashvars:"showdigits=false&autostart=true&showfsbutton=false&repeat=false" };' + "\n" +
			'UFO.create( FO, "flvplayer");' + "\n" +
      		' /*]]>*/' + "\n" +
      		'</script>' + "\n" +
			'</div>' + "\n" +
 			'</body>' + "\n" +
 			'</html>'			 
		);
	   	document.close();
	   	
	   	// IE-Fix
	   	location.reload();
	}
}

function resizeWindow(x, y)
{
	// neue Lösung mit Hilfe des Prototype-Frameworks (getWindowSize), die Browserunabhängig exakt(!) skaliert
	windowObj.resizeTo(x, y);
	var array = getWindowSize(windowObj);
	var newX = x + (x - array[0]) + 20;
	var newY = y + (y - array[1]) + 20;
	windowObj.resizeTo(newX, newY);
	windowObj.moveTo((screen.width/2)-(newX/2), (screen.height/2)-(newY/2));
}

function getWindowSize(w) 
{
    var array = [];

    w = w ? w : window;
    array.width = array[0] = w.innerWidth || (w.document.documentElement.clientWidth || w.document.body.clientWidth);
    array.height = array[1] = w.innerHeight || (w.document.documentElement.clientHeight || w.document.body.clientHeight);

    return array;
}

function setFontSize(name, value) {
        setCookie(name, value, null, '/');
        var idelement = document.getElementsByTagName("body")[0];
        idelement.style.fontSize = value + "em";
}

function actualFontsize(name) {
        value = getCookie(name);
        if (value && value != 0) {
	        var idelement = document.getElementsByTagName("body")[0];
	        idelement.style.fontSize = value + "em";
        }
}

function setCookie(name, value, domain, path, expires, secure)
{
  // Cookie setzen (wird später im TypoScript ausgelesen)
  var cook = name + "=" + unescape(value);
   cook += (domain) ? "; domain=" + domain : "";
   cook += (expires) ? "; expires=" + expires : "";
   cook += (path) ? "; path=" + path : "";

   cook += (secure) ? "; secure" : "";
   document.cookie = cook;
}

function getCookie(name) 
{
   var i=0;  //Suchposition im Cookie
   var suche = name + "=";
   while (i < document.cookie.length) 
   {
      if (document.cookie.substring(i, i + suche.length) == suche) 
	  {
         var ende = document.cookie.indexOf(";", i + suche.length);
         if(ende == -1)
         	ende = document.cookie.length;
         var cook = document.cookie.substring(i + suche.length, ende);
         return unescape(cook);
      }
      i++;
   }
   return "";
}

function AddToFavorites(url, title)
{
	if ((navigator.appName == "Microsoft Internet Explorer") &&
	(parseInt(navigator.appVersion) >= 4))
	{
		window.external.AddFavorite(url,title)
	}
	else
	{
		var FavText = "Fügen Sie die Seite bitte mit den Tasten STRG+D zu ihren Favoriten hinzu.";
		alert(FavText);
	}
}


function page_checkForm(formID)
{
	var necessary = document.getElementById(formID)['necessary'].value;
    var temp = new Array();
    var ok = true;
    var formularerror = '';
    var errorfields = new Array();
    
    temp = necessary.split(';');
	var i = 0;
		
    for (var n = 0; n < temp.length; n++)
    {
    	var type = document.getElementById(formID)[temp[n]].type;
    	
		if(type == undefined)
		{
			var radioerror = true;
			for (var k = 0; k < document.getElementById(formID)[temp[n]].length; k++)
			{						
				if(document.forms[formID][temp[n]][k].checked){
					radioerror = false;
				}								
			}
			
			if(!radioerror)
				for (var k = 0; k < document.getElementById(formID)[temp[n]].length; k++)
					document.getElementById(formID)[temp[n]][k].style.border = '0px';
			else
			{
	            ok = false;
	        	errorfields[i++] = temp[n];
				for (var k = 0; k < document.getElementById(formID)[temp[n]].length; k++)
					document.getElementById(formID)[temp[n]][k].style.border = '1px solid #f00';
			}
		}     
		else if(type == 'checkbox')    
		{
			if(document.getElementById(formID)[temp[n]].checked)
			{
				document.getElementById(formID)[temp[n]].style.border = '0px';				
			}
			else
			{
	            ok = false;
	        	errorfields[i++] = temp[n];
				document.getElementById(formID)[temp[n]].style.border = '1px solid #f00';				
			}				
		}
		else
		{       	
	        if(document.getElementById(formID)[temp[n]].value == '')
	        {
	            ok = false;
	        	errorfields[i++] = temp[n];
				document.getElementById(formID)[temp[n]].style.border = '1px solid #f00';
	        }		
	   		else
				document.getElementById(formID)[temp[n]].style.border = '1px solid #ccc';
		}
	}

    if(document.getElementById(formID)['eMail'].value != '')
    {
		var Kontrolle = /^[_\.0-9A-Za-z-]+@([0-9A-Za-z\-]+\.)+[a-z]{2,4}$/;
	    if(!Kontrolle.exec(document.getElementById(formID)['eMail'].value))
        {
        	ok = false;
        	if(document.getElementById(formID)['eMail-Mieter-1'])
        	{
        		errorfields[i++] = 'eMail-Mieter-1';
				document.getElementById(formID)['eMail-Mieter-1'].style.border = '1px solid #f00';
        	}
        	else
        	{
        		errorfields[i++] = 'eMail';
				document.getElementById(formID)['eMail'].style.border = '1px solid #f00';
        	}
        }
    }

    if(ok)
		document.getElementById(formID).submit();
	else
	{
		var error = '';
		for (var j = 0; j < errorfields.length; j++)
    	{	
    		error += errorfields[j];
    		if(j < (errorfields.length-1))
    			error += ', ';
    	}
    	if(errorfields.length > 1)
    		formularerror = 'Die markierten Felder (%1) beinhalten keine oder fehlerhafte Eingaben.';
    	else
    		formularerror = 'Das markierte Feld (%1) beinhaltet keine oder eine fehlerhafte Eingabe.';    		
    		
    	document.getElementById('page_form_error').innerHTML = formularerror.replace('%1', error);
        document.getElementById('page_form_error').style.display = 'block';
    }
}

function verifyCompatibleBrowser(){
    this.ver=navigator.appVersion
    this.dom=document.getElementById?1:0
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
    this.ie4=(document.all && !this.dom)?1:0;
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;

    this.ns4=(document.layers && !this.dom)?1:0;
    this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5)
    return this
}
bw=new verifyCompatibleBrowser()


var speed=50

var loop, timer

function ConstructObject(obj,nest){
    nest=(!nest) ? '':'document.'+nest+'.'
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
    this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
    this.up=MoveAreaUp;this.down=MoveAreaDown;
    this.MoveArea=MoveArea; this.x; this.y;
    this.obj = obj + "Object"
    eval(this.obj + "=this")
    return this
}
function MoveArea(x,y){
    this.x = x;
	this.y = y;
    this.css.left = this.x + 'px';
    this.css.top = this.y + 'px';
}

function MoveAreaDown(move){	
	if(this.y>-this.scrollHeight+objContainer.clipHeight){
    this.MoveArea(0,this.y-move)
    if(loop) setTimeout(this.obj+".down("+move+")",speed)
	}
}
function MoveAreaUp(move){
	if(this.y<0){
    this.MoveArea(0,this.y-move)
    if(loop) setTimeout(this.obj+".up("+move+")",speed)
	}
}

function PerformScroll(speed){
	if(initialised){
		loop=true;
		if(speed>0) objScroller.down(speed)
		else objScroller.up(speed)
	}
}

function CeaseScroll(){
    loop=false
    if(timer) clearTimeout(timer)
}
var initialised;
function InitialiseScrollableArea(){
    objContainer=new ConstructObject('news_content_wrapper')
    objScroller=new ConstructObject('news_content','news_content_wrapper')
    objScroller.MoveArea(0,0)
    objContainer.css.visibility='visible'
    initialised=true;
}
