/** Kontaktformular **/

function inputFocus ()
{
	if(this.tagName.toLowerCase() == 'input') this.select()
	if(this.value == this.defaultValue) {
		this.value = ''
		$(this).addClass('focus')
	}
	$(this).removeClass('error')
}

function inputBlur ()
{
	if(this.value == '') {
		this.value = this.defaultValue
		$(this).removeClass('focus')
	}
}

var kontakt_status = null

function showKontakt ( show )
{
	if(kontakt_status != null) return
	if(alpha1.tweening || alpha2.tweening) {
		alpha1.stop()
		alpha2.stop()
		$('impressum').setOpacity(show ?0 :1)
		$('kontakt').setOpacity(show ?1 :0)
		return
	}
	if(!show) {
		$('email').fireEvent('blur')
		$('message').fireEvent('blur')
	}
	if((show && $('impressum').style.visibility == 'visible') ||
		(!show && $('impressum').style.visibility == 'hidden')) alpha1.start(show ?1 :0, show ?0 :1)
	if((show && $('kontakt').style.visibility == 'hidden') ||
		(!show && $('kontakt').style.visibility == 'visible')) alpha2.start(show ?0 :1, show ?1 :0)
}

function submitKontakt ()
{
	var email = $('email')
	var message = $('message')
	if(email.value == email.defaultValue) email.value = ''
	if(message.value == message.defaultValue) message.value = ''
	kontakt_status = 'sending'
	$('response').addClass('loader')
	alpha2.start(1, 0)
	alpha3.start(0, 1)
	kontaktRequest.send({'email': email.value, 'message': message.value})
}

function jsonResponse ( response )
{
	var r =	$('response')
	r.removeClass('loader')
	cleanResponse()
	var message = document.createTextNode(response.message)
	r.appendChild(message)
	var error_field = new Array()
	if(response.code == 200) window.setTimeout('resetKontakt()', 4000)
	else {
		$('email').removeClass('error')
		$('message').removeClass('error')
		for(var i in response.error) {
			var error = document.createElement('p')
			error.appendChild(document.createTextNode(response.error[i]))
			r.appendChild(error)
			if(i == 'email' || i == 'message') {
				error_field.push('\'' + i + '\'')
			}
		}
		if(response.code == 300) window.setTimeout('displayErrorKontakt(['+error_field+'])', 3000)
		if(response.code == 302) {
			var error = document.createElement('a')
			error.setAttribute('href', 'javascript:resetKontakt();')
			error.appendChild(document.createTextNode('Erneut versuchen'))
			r.appendChild(error)
		}
	}
}

function displayErrorKontakt ( fields )
{
	for(var i=0; i<fields.length; i++) $(fields[i]).addClass('error')
	cleanResponse()
	$('response').style.visibility = 'hidden'
	$('email').fireEvent('blur')
	$('message').fireEvent('blur')
	kontakt_status = null
	showKontakt(true)
}

function resetKontakt ()
{
	cleanResponse()
	$('response').style.visibility = 'hidden'
	kontakt_status = null
	$('email').removeClass('error')
	$('message').removeClass('error')
	$('email').value = ''
	$('message').value = ''
	$('email').fireEvent('blur')
	$('message').fireEvent('blur')
	showKontakt(false)
}

function cleanResponse ()
{
	$('response').innerHTML = ''
}