$(function() {

	/* Accordion */
	$('.accordion-h2').each(function() {
		var elements = $(this).children('div')
		elements.each(function() {
			var element = $(this)
			var h2 = element.children('h2')
			var content = element.children().not('h2')
			element.data('expand', function() {
				element.removeClass('collapsed')
				element.addClass('expanded')
			})
			element.data('collapse', function() {
				element.removeClass('expanded')
				element.addClass('collapsed')
			})
			h2.click(function() {
				if (element.hasClass('expanded')) {
					element.data('collapse')()
				} else {
					element.data('expand')()
				}
			})
		})
		elements.addClass('collapsed')
		var hash = window.location.hash
		if (hash) {
			var name = hash.substring(1)
			var a = $('a[name=' + name + ']')
			var current = a.parent()
			if (current) {
				current.data('expand')()
			} else {
				$(elements[0]).data('expand')()
			}
		} else {
			$(elements[0]).data('expand')()
		}
	})

	/* Teaser */
	$('#teaser-switcher').each(function() {
		var teasers = $(this).children('div')
		var cycleActive = true
		var cycleDelay = 10000
		function show(hash) {
			var index = parseInt(hash.split('-')[1]) - 1
			teasers.hide()
			$(teasers[index]).show()
		}
		teasers.each(function() {
			var teaser = $(this)
			teaser.find('.teaser-next, .teaser-prev').click(function() {
				cycleActive = false
				show($(this).attr('href'))
				return false
			})
		})
		teasers.hide()
		$(teasers[0]).show()
		// cycle teasers
		function cycle() {
			if (cycleActive) {
				var current = teasers.filter(':visible')
				show(current.find('.teaser-next').attr('href'))
				window.setTimeout(cycle, cycleDelay)
			}
		}
		window.setTimeout(cycle, cycleDelay)
	})

	/* Fancybox */
	$('a.img').fancybox()

})

