/* window events */

window.onresize = windowResize;
window.onload = windowOnload;
document.onkeydown = documentKeyDown;

function windowResize(){
	sizeLayers();
	}
	
function windowOnload(){
	if ($('email_addr'))
		$('email_addr').innerHTML=decodeURIComponent(' <a href="mailto:info%40fischer-homberger.ch?subject=Kontakt Website">info%40fischer-homberger.ch</a>');
	sizeLayers();
	}
	
function documentKeyDown(){
	if (isError)
		closeError();
	if (isInfo)
		closeInfo();
	return (!( isInfo || isError ));
	}
	
/* size backgrounds */

function sizeLayers(){
	var docHeight = document.body.scrollHeight;
	var viewportHeight = document.viewport.getHeight();
	if (viewportHeight > docHeight) 
		docHeight = viewportHeight;
	else
		docHeight += 20;
	$('error_layer').style.height = docHeight+'px';
	$('info_layer').style.height = docHeight+'px';
	}
	
/* info handling */
var isInfo = 0;
var infoOnCloseFocusObj = 0;

function showInfo(infoContent,onCloseFocusObj){
	isInfo = true;
	infoOnCloseFocusObj = onCloseFocusObj;
	$('info_text').innerHTML = infoContent;
  	$('info_layer').style.display = 'block';	
  	}

function closeInfo(){
	$('info_layer').style.display = 'none';	
	if (infoOnCloseFocusObj)
		infoOnCloseFocusObj.focus();
	isInfo = 0;
	}

	
/* error handlling */

var glob_errorfield = 0;
var isError = 0;

function showError(errortext,errorfield){
	glob_errorfield = errorfield;
	isError = true;
  	$('error_text').innerHTML = errortext;
  	$('error_layer').style.display = 'block';
	}
	
	
function closeError(){
	$('error_layer').style.display = 'none';
	if (glob_errorfield)
		glob_errorfield.focus();
	glob_errorfield = 0;
	isError = 0;
	}

/* search form info */

var searchInfoDe = 
	'<i>[&nbsp;Medizin Film&nbsp;]</i>&nbsp;&nbsp;&nbsp;findet alle Seiten, die beide Wörter enthalten. Es werden auch teile von Wörtern gefunden.<br>'+
	'<i>[&nbsp;Medizin <b>or</b> Film&nbsp;]</i>&nbsp;&nbsp;&nbsp;findet alle Seiten, die eines oder beide Wörter enthalten.<br>'+
	'<i>[&nbsp;</i><b>"</b><i>Vergessene Zivilisationskrankheiten</i><b>"</b><i>&nbsp;]</i>&nbsp;&nbsp;&nbsp;findet alle Seiten, die die ganze in "" eingeschlossene Zeichenfolge enthalten.';
var searchInfoEn = 
	'<i>[medicine film]</i> finds all pages containing both words. Also parts of words match.<br>'+
	'<i>[medicine <b>or</b> film]</i> finds all pages, which contain at least one of the words.<br>'+
	'<i>[</i><b>"</b><i>ship of fools</i><b>"</b><i>]</i> finds all pages containing the whole phrase enclosed in "".';

function showSearchInfo(lang){
	if (lang=='en')
		showInfo( searchInfoEn , $('sword') );
	else
		showInfo( searchInfoDe , $('sword') );
	} 
	
/* contact form */

function validateContactForm(lang){
	var error_text = '';
	var error_field = 0;
	if ($('name').value.replace(/\s/,'') == '')
		{
		error_text = (lang=='en')?'Please enter a name.':'Bitte geben sie einen Namen an';
		error_field = $('name');
		}
	else if ($('message').value.replace(/\s|\n/,'') == '')
		{
		error_text = (lang=='en')?'Please enter a message.':'Bitte geben sie eine Nachricht ein';
		error_field = $('message');
		}
	if (error_text != '')
		{
		showError(error_text,error_field);
		return false;
		}
	return true;
	}
