/*  ***************************************
tossi.js

JavaScript für www.alextossi.de mit folgenden
Funktionen: 

1. Umwandeln von spamsicheren E-Mail-Adressen in klickbare
mailto-Adressen

1. Funktionalität der Referenz-Galerien: Öffnen des grossen
Bildes bei Klick auf Thumb


Datum: Mai 2009
Autor: Michael Raith
Mail:  info@raith.it
Web:   http://www.raith.it 

*************************************** */





var email_class = 'emailad'; // css Klasse des die E-Mail-Adressen umgebenden tags zB <span>
var email_at = '[at]'; // Trennzeichen statt '@'

window.onload = function () {
	
	// ...checken, ob JavaScript aktiv ist 
	if (!document.getElementById || !document.createTextNode) {return;}
	
	// ...checken, ob Elemente mit spamsicheren E-Mail-Adressen auf der Seite sind	
	var elems = helpers.getElementsByClass(email_class);
	
	// wenn Ja: Umwandeln in klickbare mailto-Adressen
	if (elems) {
			eMail.convertAddresses(elems);			
	}
	
	if (document.getElementById('map')) {				
		myMap.loadMap();		
	}	
	
	else {return;}
}

eMail = {		
	
	// für jedes Element die E-Mail-Adresse in mailto-Links umwandeln
	convertAddresses:function(elems){		
		for(var i = 0; i < elems.length; i++) {
			var email = elems[i];
			var address= email.firstChild.data;
			var address = address.replace(email_at,'@');
			email.innerHTML = '<a href="mailto:'+address+'">'+address+'</a>';
		}
		return;
	}

}


gallery = {	
	
	showImg:function(img, desc) {	
	
		// Bildbeschreibung ausgeben - falls vorhanden
		var imgdesc="";
		if(desc !== undefined) {var imgdesc = desc;}	
		// Pfad zur Ladeanzeige
		var loading = '<img style="border: none; position: absolute; right: 200px; top: 150px;" src="media/img/layout/loading.gif" />';
		// Pfad zum neuen Bild
		var path = '<img src="'+img+'" /><span id="desc">'+imgdesc+'</span>';			
		
		// Text ausblenden
		$('#reftext').fadeOut('fast');
		
		// Aktuelles Bild ausblenden
		$('#imagedetail').fadeOut('slow', function(){			
			
			
			
			// Ladeanzeige hinzufügen
			$('#content').append(loading);
			
			// Bild vorladen
			var image = document.createElement('img');
			image.src = img;		
		
			// Bild geladen:
			image.onload = function(){	
					
				// Ladeanzeige entfernen
				$('#content img').fadeOut('fast', function() { $(this).remove();} );
				
				// Bild austauschen und einblenden
				$('#imagedetail').html(path);
				$('#imagedetail').fadeIn('slow');	
				
				// Text wieder einblenden
				$('#reftext').fadeIn('fast');
															  
			};												
		
		});
		
		return false; // verhindern dass nach Ausführung noch dem Link gefolgt wird												
	}	
               
}



helpers = {
	
	// Alle Elemente mit einer bestimmten CSS-Klasse in einem Array speichern und zurück geben
	getElementsByClass:function(name) {
		
		var elements = new Array();
		var allElems = document.getElementsByTagName('*');
		for (var i = 0; i < allElems.length; i++) {
			var thisElem = allElems[i];
			if (thisElem.className && thisElem.className == name) {
				elements.push(thisElem);
			}
		}
		if(elements.length > 0) {
			return elements;
		}
		else return false;
	}	
	
}

// Alle externen Links in neuem Fenster öffnen (jQuery)
$(document).ready(function() {	
	$('a[href^="http://"]').attr({target: "_blank"});	
});


