/**
 * function toggleLayer
 * Öffnet oder schließt Programm-DIV-Layer
 */
function toggleLayer(id, effect, paramObject) {

	Effect.toggle(id, effect, paramObject);
	
	idPrefix = id.match(/^([a-zA-Z]+)Container_([0-9]+)$/);
	linkId = idPrefix[1]+'Link_'+idPrefix[2];

	if ($(linkId)) {
		if ($(id).getStyle('display') == 'none') {
			$(linkId).update('weniger');
			$(linkId).className = 'dateDetailsMoreInfoLinkLess';
		} else {
			$(linkId).update('mehr');
			$(linkId).className = 'dateDetailsMoreInfoLinkMore';
		}
		$(linkId).blur();
	}
}

/**
 * function selectAction
 * Schreibt eine 'action' in ein Formularfeld
 */
function selectAction(action, formFieldId) {
	if (typeof(document.getElementById(formFieldId)) != 'undefined') {
		document.getElementById(formFieldId).value= action;
	}
	return false;
}

/**
 * function initLocationDetails
 * Initialisiert Thumbnails in der Spielorte-Detailansicht
 */
function initLocationDetails() {
	var prefix = 'tn';
	
	for (i = 1; i <= 4; i++) {

		if ($(prefix+i) != null) {

			var refThumb = $(prefix+i);
			
			if (refThumb.className.indexOf('thumbSelected') == -1) {
				refThumb.setOpacity(0.5);
				Event.observe (refThumb, 'mouseover', thumbHovered);
				Event.observe (refThumb, 'mouseout', thumbUnHovered);
				Event.observe (refThumb, 'click', thumbClicked);
			}
		}
	}
}

/**
 * function thumbHovered
 * Wird bei mouseover über Thumbnail aufgerufen
 */
function thumbHovered(evt) {
	if (evt.target.className.indexOf('thumbSelected') == -1) {
		$(evt.target).setOpacity(1);
	}
}

/**
 * function thumbUnHovered
 * Wird bei mouseout über Thumbnail aufgerufen
 */
function thumbUnHovered(evt) {
	if (evt.target.className.indexOf('thumbSelected') == -1) {
		$(evt.target).setOpacity(0.5);
	}
}

/**
 * function thumbClicked
 * Wird bei click auf Thumbnail ausgeführt
 */
function thumbClicked(evt) {
	
	var refThumb = $(evt.target);

	var imgSrc = evt.target.src.replace(/thumbnails\//, '');
	var refImageContainer = $('locationDetailsImageInnerContainer');
	var elImage = document.createElement('img');
	elImage.alt = '';
	elImage.id = 'locationDetailsImage';
	var ieBuster = new Date();
	elImage.src = imgSrc+'?ieBuster='+ieBuster.getMilliseconds();
	
	refImageContainer.update('');
	refImageContainer.appendChild(elImage);
	
	$('locationDetailsImage').setOpacity(0);

	var prefix = 'tn';
	
	for (i = 1; i <= 4; i++) {
		if ($(prefix+i) != null) {
			$(prefix+i).removeClassName('thumbSelected');
		}
	}	

	refThumb.addClassName('thumbSelected');
	initLocationDetails();

	Event.observe($('locationDetailsImage'), 'load', imageFadeIn);
}

/**
 * function thumbClicked
 * Wird bei click auf Thumbnail ausgeführt
 */
function imageFadeIn(evt) {
	Effect.Appear($('locationDetailsImage'));
}

/**
 * function windowOpen
 * Öffnet ein Popup-Fenster (z.B. AGB)
 */
function windowOpen (url, nameOverride, propertiesOverride) {
	if (nameOverride) {
		windowName = nameOverride;
	}else {
		windowName = 'Kulturwald';
	}

	if (propertiesOverride) {
		windowProperties = propertiesOverride;
	}else {
		windowProperties = 'width=600, height=400, left=0, top=0, location=no, menubar=no, status=no, toolbar=no, resizable=yes, scrollbars=yes';
	}
  	windowNew = window.open(url, windowName, windowProperties);
	if (windowNew != null) {
		windowNew.focus();
	}
	
//	return false;
}
/*
 * Funktionen Interims-Website
 */
function checkForm(id_form) {
	
	var fElms = $(id_form).getElements();
	var errorMessage = '';
	var texterror = false;
	
	for(i=0; i < fElms.length; i++) {
		if(fElms[i].getAttribute('rel')) {
			var checktype	= fElms[i].getAttribute('rel');
			var checkvalue	= fElms[i].value;
			
			switch (checktype) {
					
				case 'text':
					if(!texterror && (checkvalue=='Name' || checkvalue=='Vorname' || checkvalue=='StraÃŸe / Hausnummer' || checkvalue=='PLZ / Ort')) {
						var texterror = true;
						errorMessage += 'Bitte fÃ¼llen Sie alle nÃ¶tigen Felder aus!'+"\n";
					}
					break;
					
				case 'email':
					var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
					if(!filter.test(checkvalue) || checkvalue=='Emailadresse') {
						errorMessage += 'Die Emailadresse ist leider nicht gÃ¼ltig!'+"\n";
					}
					break;
			}
		}
	}
	
	if(errorMessage!='') {
		alert(errorMessage);
		return false;
	}
	
	return true;
}
