var slideId = 1;
var slideCount = 0;
var slideTimeout;

function setSlideButton(id) {
	$('#slider .choose a').removeClass('active');	
	$('#slide' + id + '-button').addClass('active');	
}

function nextSlide() {

	if ((slideId+1) > slideCount) {
		nextSlideId = 1;
	}
	else {
		nextSlideId = slideId+1;
	}	
	setSlideButton(nextSlideId);
	
	slideId = nextSlideId;
	
	$('#slide' + slideId + '-button').click();	
}	

function prevSlide() {

	if ((slideId-2) < 0) {
		nextSlideId = slideCount;
	}
	else {
		nextSlideId = slideId-1;
	}	
	
	setSlideButton(nextSlideId);
	
	slideId = nextSlideId;
	
	$('#slide' + slideId + '-button').click();
}	
	
$(document).ready(function () {

	$.getJSON(
		"http://api.flickr.com/services/feeds/photos_public.gne?id=45466669@N08&lang=en-us&format=json&jsoncallback=?",
		function(data){
        	$.each(data.items, function(i,item){
        		
        		if (i < 6) {
	        		$("<a />").html(
	        			$("<img/>").attr("src", item.media.m.replace('_m', '_s')).attr("alt", item.title)
	        		).click(function() {
	    				window.open(item.link);
	    				return false;
	    			}).attr('href', item.link).attr("title", item.title).appendTo("#gallery .photos");
        		}
        	});
        	startData();
    	}
    	
	);	
	
	
	if ($.browser.msie && $.browser.version.substr(0,1)<7) {
		$('.page').each(function() {
			$(this).css({'background': ''});
		}); 
		$('.decal').each(function() {
			$(this).css({'background': ''});
		}); 		
		$('#main').css({'width': '100%', 'background': ''});
	}
	
	slideTimeout = setInterval("nextSlide()", 5000);
	
	var elem_width = $('#over-ons').width();
	var window_width = $.clientCoords().width;
	var margin =  parseInt("-" + Math.round((window_width-1200)/2));
	
	if (isNaN(margin)) {
		margin = 40;
	}


	$('#slider .description').blindUp2('', "swing");
	
	$('#slider .slide').each(
		function() {
			slideCount = slideCount+1;
		}
	);
	
	$("#eggclick").fancybox({
		'titlePosition'		: 'inside',
		'transitionIn'		: 'none',
		'transitionOut'		: 'none',
		'hideOnContentClick': false,
		'overlayOpacity'    : 0.5,
		'overlayColor'		: '#000'

	});
	
	jQuery(function( $ ){
		$.localScroll.defaults.axis = 'xy';
		
		$.localScroll.hash({
			queue:true,
			duration:1500,
			offset: {top:0, left: margin}
		});
		
		$('.normal').localScroll({
			queue: true,
			duration: 2000,
			hash: true,
			axis: 'yx',
			stop: false,
			onBefore:function( e, anchor, $target ){
				$('#menu').blindToggle2Left(100);
			},
			onAfter:function( anchor, settings ){
			},
			offset: {top:0, left: margin}
		});
		
		$('.topNav').localScroll({
			queue: false,
			duration: 2000,
			hash: true,
			stop: false,
			onBefore:function( e, anchor, $target ){
			},
			onAfter:function( anchor, settings ){
			},
			offset: {top:0, left: margin}
		});		

		$('.special').localScroll({
			queue: true,
			stop: true,
			duration: 10000,
			hash: true,
			onBefore:function( e, anchor, $target ){
			},
			onAfter:function( anchor, settings ){
			}
		});	
		
		$('#slider').localScroll({
			target: '#slideBox',
			queue:false,
			duration:500,
			hash:false,
			onBefore:function( e, anchor, $target ){
				// The 'this' is the settings object, can be modified
				$(e.id).addClass('active');
			},
			onAfter:function( anchor, settings ){
				// The 'this' contains the scrolled element (#content)
			}
		});			
	});		
	
	$('#slider .choose a').click(
		function() {
			clearInterval(slideTimeout);
			slideTimeout = setInterval("nextSlide()", 5000);
		}
	);
	
	$('#slider .choose a').click(
		function() {
			$('#slider .choose a').each(
				function() {
					$(this).removeClass('active');		
				}
			);
			$(this).addClass('active');
			slideId = parseInt($(this).attr('id').replace('slide', '').replace('-button', ''));
			clearInterval(slideTimeout);
			slideTimeout = setInterval("nextSlide()", 5000);
		}
	);	
	
	$('#slider .slide').hover(
			function() {
				$(this).find('.description').blindDown2(1300, "easeOutBounce");
				clearInterval(slideTimeout);
			},
			function() {
				$(this).find('.description').blindUp2(1300, "easeOutBounce");
				slideTimeout = setInterval("nextSlide()", 5000);
			}
	);	
	
	$('#menu').click(
		function() {
			$(this).blindToggle2(300);
		},
		function() {
			$(this).blindToggle2(200);
		}
	);
	$('a').each(function() {
		if ($(this).attr('rel') == 'external') {
			$(this).click(function() {
				window.open($(this).attr('href'));
				return false;
			});
		}
	});
	
	$('.collumn a').each(function() {
		if (!stristr($(this).attr('href'), 'mailto:')) {
			$(this).click(function() {
				window.open($(this).attr('href'));
				return false;
			});
		}
	});	
	
});		
$.clientCoords = function() {
	var dimensions = {width: 0, height: 0};
	if (document.documentElement) {
		dimensions.width = document.documentElement.offsetWidth;
		dimensions.height = document.documentElement.offsetHeight;
	} 
	else{
		if (window.innerWidth && window.innerHeight) {
			dimensions.width = window.innerWidth;
			dimensions.height = window.innerHeight;
		}
	}
	return dimensions;
}
function switchItem(element, section, id) {
	$('#' + section + ' .text').each(
			function() {
				$(this).hide();
			}
	);
	$('#' + section + ' .items li a').each(
			function() {
				$(this).removeClass('active');
				Cufon.refresh('#' + section + ' .items li a');
			}
	);	
	element.className = 'active';
	$('#' + section + '-item-' + id).show();
	element.blur();
	Cufon.refresh('#' + section + ' .items li a');	
}

function switchPerson(element, id) {
	$('#person-' + activePerson).find('.description').blindToggleLeft(300, "swing", function() {
		$('#person-' + activePerson).hide();
		$('#person-' + id).show();
		$('#person-' + id).find('.description').blindToggleRight(1300, "easeOutBounce");
		$('#mensen .list li a').each(function() {
			$(this).removeClass('active');
		});
		element.className = 'active';
		element.blur();
		activePerson = id;	
	});
}

function switchElevatorTab(element, id) {
	$('#subcontent-' + activeElevatorTab).hide();
	$('#subcontent-' + id).show();
	$('#lift-content .tabs li a').each(function() {
		$(this).removeClass('active');
	});
	element.className = 'active';
	element.blur();
	activeElevatorTab = id;		
}

jQuery.fn.blindToggle = function(speed, easing, callback) {
  var w = this.width() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
  return this.animate({marginLeft: parseInt(this.css('marginLeft')) <0 ? 0 : -w}, speed, easing, callback);  
};
jQuery.fn.blindToggleLeft = function(speed, easing, callback) {
  var w = this.width() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
  return this.animate({marginLeft:  -w}, speed, easing, callback);  
};
	
jQuery.fn.blindToggleRight = function(speed, easing, callback) {
  var w = this.width() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
  return this.animate({marginLeft: 0}, speed, easing, callback);  
};	

jQuery.fn.blindToggle2 = function(speed, easing, callback) {
  var w = this.width() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
  return this.animate({marginLeft: parseInt(this.css('marginLeft')) > -122 ? -122 : 0}, speed, easing, callback);
};
	
jQuery.fn.blindToggle2Left = function(speed, easing, callback) {
  var w = this.width() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
  return this.animate({marginLeft: -122 }, speed, easing, callback);
};	

jQuery.fn.blindToggle2Right = function(speed, easing, callback) {
  var w = this.width() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
  return this.animate({marginLeft: 0}, speed, easing, callback);
};			

jQuery.fn.blindUpToggle = function(speed, easing, callback) {
	var h = this.height() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
	return this.animate({marginTop: parseInt(this.css('marginTop')) <0 ? 0 : -h}, speed, easing, callback);
};

jQuery.fn.blindUp2 = function(speed, easing, callback) {
	var h = this.height() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
	return this.animate({marginTop: 0}, speed, easing, callback);
};

jQuery.fn.blindDown2 = function(speed, easing, callback) {
	var h = this.height() + parseInt(this.css('paddingLeft')) + parseInt(this.css('paddingLeft'));
	return this.animate({marginTop: -h}, speed, easing, callback);
};

function focusField(element, value) {
	element.className = 'textfield active';
	if (element.value == value) {
		element.value = '';
	}
}

function blurField(element, value) {
	if (element.value == '') {
		element.value = value;
		element.className = 'textfield inactive';
	}
}

function stristr (haystack, needle, bool) {
    var pos = 0;
 
    haystack += '';
    pos = haystack.toLowerCase().indexOf( (needle+'').toLowerCase() );    
    if (pos == -1) {
        return false;
    } 
    else {
        if (bool) {
            return haystack.substr( 0, pos );       
        } 
        else {
            return haystack.slice( pos );
        }
    }
}

Cufon.replace('h1', {fontFamily: 'din1'});

Cufon.replace('#over-ons .items li a', {fontFamily: 'din2'});

Cufon.replace('#mensen h2', {fontFamily: 'din1'});
Cufon.replace('#mensen .description div', {fontFamily: 'din2'});
Cufon.replace('#mensen .list li a', {fontFamily: 'din2'});
Cufon.replace('#mensen .list li a strong', {fontFamily: 'din1'});

Cufon.replace('.elevatorbutton', {fontFamily: 'din2'});
Cufon.replace('#contact button', {fontFamily: 'din2'});
Cufon.replace('#perma .rss', {fontFamily: 'din2'});
Cufon.replace('.author a', {fontFamily: 'din2'});