// JavaScript Document

var dcount = 0;		//Debug Counter
var slideTimer;

function mydebug(debugstring){
	if(!document.all && !(typeof(console) == 'undefined'))
	{	console.log(dcount++ +' | ' + debugstring);
		}	
	}

mydebug("drin")

/* Presets */

speed_in=3000;
speed_out=1000;
speed_scroll=3000;


/* FUNKTIONEN */

//Referenz-Selektoren binden & Abhängig vom elem-href entsprechende Klasse per Click schalten
function bindRefSelector(jObj)
{
	var klasse;	//lokale Variable definieren (!)
	
	//aktueller Klassenname generieren anhand href des Selektor-Links
	klasse = jObj.attr('href').substring(1,10);
	
	if(jObj.attr('href')!="#r_all")
	{
		jObj.click(function()
		{
			clearTimeout(slideTimer)				//Einfahren abbrechen
			
			//Rahmen der Auswahl zurück
			$('.reflist_item').css({
				'border-color':'#000000',
				'opacity':0.6
				})
			
			$('#refselector a').removeClass('active');			//aktive-Anzeige deaktivieren
					
			//Rahmen der Auswahl färben
			$('.'+klasse).css({
				'border-color':'#FFCC33',
				'opacity':1
				})
			
			//active setzen
			jObj.addClass('active')					//aktiv-Anzeige aktivieren
			jObj.blur();
			
			})//click
		}//if
	else
	{
		clearTimeout(slideTimer)					//Einfahren abbrechen
		
		//Spezial: alle anzeigen
		jObj.click(function()
		{
			//alle ausblenden
			$('.reflist_item').css({
				'border-color':'#000000',
				'opacity':1
				})
			
			$('#refselector a').removeClass('active');	//aktive-Anzeige deaktivieren
			
			jObj.addClass('active')
			jObj.blur()
			
			//refreshSB2();							//SlimBox Refreshen
		})
	}
}//Referenz-Selektoren binden ende

//Alle Referenzen anzeigen
function showAllRefs(){
	$("[class^=r_]").show(speed_in)
	}

function bindM(){
	$('#reflist_base').masonry({
		// options
		itemSelector : '.reflist_item'
		})
	mydebug('bound masonry')
	}


/* Dothemagic */

$(document).ready(function () {
	
	
	
	//title für lightbox-images in der Referenzliste retten nach 
	$("a[rel^='lightbox']").each(
		function(){
			$(this).attr('desctitle',$(this).attr('title'))
			})
	
	//SlimBox2 binden
	bindSB2("");
	
	//Masonry binden
	bindM()
	
	/*TipTip*/
	//binden (entfernt title-Tag ;))
	$(".help, .tiptip, a.ref").tipTip({
		maxWidth: "200px",
		edgeOffset: 7,
		marginTop: 40,
		fadeIn: 200,
		fadeOut: 200
		});
	$("#refselector a").tipTip({
		maxWidth: "200px",
		edgeOffset: 3,
		marginTop: 40,
		defaultPosition : 'top',
		fadeIn: 200,
		fadeOut: 200
		});


	/*RefSelector*/
	$('#refselector').mouseenter(function(){
		clearTimeout(slideTimer)				//Einfahren abbrechen
		$(this).stop().animate({
			right: '-5px'
			},800);
		});
	$('#refselector_switch').click(function(){
		$('#refselector').stop().animate({
			right: '-500px'
			},300);
		});
	$('#refselector').mouseleave(function(){
		mydebug('timer aktiviert')
		slideTimer = setTimeout(function(){		//Mausverlassen verursacht einfahren
			
			$('#refselector').stop().animate({
				right: '-500px'
				},3000);
			
			},2000)//delay gestlegen
		
		});

	/*Aktionen binden*/
	$('#refselector a').each(
		function(i){
			bindRefSelector($(this));
			}
		)
	
	/*RefList-Elemente vergroeszern wenn noetig  */
	$('.reflist_item').each(function(){
			//Elente drin in umgebenden DIV hängen
			//Testen, ob umgebung kleiner als innen ist
			//ja: klasse für hover-effekt anhängen
		})
	
	/*CallBack anzeigen*/
	$('#callback, #callbackbutton')
		.bind("mouseenter", function(){
		//reingegangen
		mydebug('callback');

		$('body').stop().animate(
			{"margin-top":0},400)	
		})
		.bind("mouseleave", function(){		//rausgegangen
			$('body').stop().animate(
				{"margin-top":-40},400)
	})
	
	
	/*callback-form*/
	
	$('#callback_numbername')
	.bind('focusin focusout', function(){
		
		$(this).toggleClass('active');
		

		if(this.value == this.defaultValue){
			this.value="";
			}else
				if(this.value=="")
					{this.value = this.defaultValue}
		})//bind numbername

	.bind('keypress',function(){
		
		if((this.value != this.defaultValue) && (this.value.length >2)){
			$(this).css({
					'color':'#000',
					'background-color':'#fff',
					'background-image':'none'
					});
			$('#callback_submit').removeAttr('disabled');
			}
		
		})
	
	$('#callback_submit')
	.bind('focusin focusout', function(){
		$(this).toggleClass('active');					   
		})//bind submit
	
});

