
/*
*Wird aufgerufen wenn ein User über das Kontaktformular 
Kontakt mit dem Anwalt/der Kanzlei aufnehmen möchte
*/
function submitData()
{
	
	// /*
	// Überprüfung, ob allle Pflichtfelder ausgefüllt sind
	// */
	if(checkForm())
	{
		doAsyncWebRequest("logContactAndMail.php", "mail");
		
		resetForm('contact');
		
		var modalPopupBehavior = $find('modalDialogBehavior');
		modalPopupBehavior.hide();
	}    
}

function send2Friend()
{

	var regEx = new RegExp('^([\\w\\d\\-\\.]+)@{1}(([\\w\\d\\-]{1,67})|([\\w\\d\\-]+\\.[\\w\\d\-]{1,67}))\\.(([a-zA-Z\\d]{2,4})(\\.[a-zA-Z\\d]{2})?)$');
	
	var sender = trim($get("send2friend_sender_name").value);
	var mediaId = $get("send2friend_media_id").value;
	var mail = $get("send2friend_mail").value;
	var message = $get("send2friend_message").value;
	var topic = $get("send2friend_topic").value;
	
	var senderError = $get("send2friend_sender_name_error");
	var mailError = $get("send2friend_mail_error");
	var mailValidationError = $get("send2friend_mail_validation_error");
	
	if(sender == "")
	{
		senderError.style.display = "block";
		return;
	}
	else
	{
		senderError.style.display = "none";
	}
	/*Überprüfen, ob eine gültige E-Mail-Adresse eingegeben wurde*/
	if(mail == "")
	{
		mailError.style.display = "block";
		return;
	}
	else if(!mail.match(regEx))
	{
		mailError.style.display = "none";
		mailValidationError.style.display = "block";
		return;
	}
	else
	{
		mailError.style.display = "none";
		mailValidationError.style.display = "none";		
	}
	/*Versenden der Nachricht*/
	var webRequest = new Sys.Net.WebRequest();
	webRequest.set_url("send2Friend.php");
	webRequest.set_httpVerb("Post");
	var body = "mediaID=" + mediaId +"&emailTo=" + mail + "&emailText=" + message + "&sender=" + sender + "&topic=" + topic;
	webRequest.set_body(body);
	webRequest.get_headers()["Content-Length"] = body.length;
	webRequest.invoke();	
	
	/*
	Dialog komplett zurücksetzen und wieder schließen
	*/
	resetForm('send2friend');
	var modalPopupBehavior = $find('send2friendDialogBehavior');
	modalPopupBehavior.hide();
}

function send2FriendEmbedded()
{

	var regEx = new RegExp('^([\\w\\d\\-\\.]+)@{1}(([\\w\\d\\-]{1,67})|([\\w\\d\\-]+\\.[\\w\\d\-]{1,67}))\\.(([a-zA-Z\\d]{2,4})(\\.[a-zA-Z\\d]{2})?)$');
	
	var sender = trim($get("send2friend_sender_name").value);
	var mediaId = $get("send2friend_media_id").value;
	var mail = $get("send2friend_mail").value;
	var message = $get("send2friend_message").value;
	var topic = $get("send2friend_topic").value;
	
	var mailError = $get("send2friend_mail_error");
	var senderError = $get("send2friend_sender_name_error");
	var mailValidationError = $get("send2friend_mail_validation_error");
	
	if(sender == "")
	{
		senderError.style.display = "block";
		return;
	}
	else
	{
		senderError.style.display = "none";
	}
	/*Überprüfen, ob eine gültige E-Mail-Adresse eingegeben wurde*/
	if(mail == "")
	{
		mailError.style.display = "block";
		return;
	}
	else if(!mail.match(regEx))
	{
		mailError.style.display = "none";
		mailValidationError.style.display = "block";
		return;
	}
	else
	{
		mailError.style.display = "none";
		mailValidationError.style.display = "none";
		senderError.style.display = "none";
	}
	/*Versenden der Nachricht*/
	var webRequest = new Sys.Net.WebRequest();
	webRequest.set_url("send2Friend.php");
	webRequest.set_httpVerb("Post");
	var body = "mediaID=" + mediaId +"&emailTo=" + mail + "&emailText=" + message + "&sender=" + sender + "&topic=" + topic ;
	webRequest.set_body(body);
	webRequest.get_headers()["Content-Length"] = body.length;
	webRequest.invoke();	
	
	/*
	Dialog komplett zurücksetzen und wieder schließen
	*/
	resetForm('send2friend');
	var modalPopupBehavior = $get('send2friend');
	modalPopupBehavior.style.display = 'none'
}

function closeForm(formId)
{
	var form = $get(formId);
	form.style.display = 'none';
	resetForm(formId);
}

/*
Wird aufgerufen, wenn der Kontakt über die Webakte
hergestellt werden soll. Die Kontaktaufnahme wird dann
serverseitig mitgeloggt
*/
function log()
{
	doAsyncWebRequest("logContact.php", "webakte");
}

/*
Ruft das angegebene Skript asynchron auf
*/
function doAsyncWebRequest(scriptName, contactType)
{
		var userId = $get("contact_user_id").value;
		var mediaId = $get("contact_media_id").value;
		
		var name = $get("contact_sender_name");
		var email = $get("contact_mail");
		var topic = $get("contact_topic");
		var message = $get("contact_message");
		

	
		var webRequest = new Sys.Net.WebRequest();
		//webRequest.add_completed(OnWebRequestCompleted);
		webRequest.set_url(scriptName);
		webRequest.set_httpVerb("Post");
		var body = "media_id=" + mediaId +"&user_id=" + userId + "&contact_type=" + contactType;
		
		/*Falls eine E-Mail versendet werden soll, sind jetzt die Daten der ausgefüllten
		Felder hinzuzufügen.
		*/
		if(name)
		{
			body = body + "&sender_name=" + name.value; 
		}
		
		if(email)
		{
			body = body + "&email=" + email.value; 
		}
		
		if(topic)
		{
			body = body + "&topic=" + topic.value; 
		}
		
		if(message)
		{
			body = body + "&message=" + message.value; 
		}
		
		/*
		Setzen der Request-Infos und abschicken
		*/
		webRequest.set_body(body);
		webRequest.get_headers()["Content-Length"] = body.length;
		webRequest.invoke();
}


function resetForm(prefix)
{
	document.getElementById(prefix + '_mail_error').style.display = 'none';
	document.getElementById(prefix + '_text_error').style.display = 'none';
	document.getElementById(prefix + '_sender_name_error').style.display = 'none';
	document.getElementById(prefix + '_mail_validation_error').style.display = 'none';	
	
	document.getElementById(prefix + '_mail').value = "";
	document.getElementById(prefix + '_message').value = "";
	document.getElementById(prefix + '_sender_name').value = "";
	document.getElementById(prefix + '_topic').value = "";
}


/*Überprüfung der Eingabefelder
*/
function checkForm()
{
		var regEx = new RegExp('^([\\w\\d\\-\\.]+)@{1}(([\\w\\d\\-]{1,67})|([\\w\\d\\-]+\\.[\\w\\d\-]{1,67}))\\.(([a-zA-Z\\d]{2,4})(\\.[a-zA-Z\\d]{2})?)$');
		var result = true;
		var mailError = document.getElementById('contact_mail_error');
		var textError = document.getElementById('contact_text_error');
		var nameError = document.getElementById('contact_sender_name_error');
		var mailValidationError = document.getElementById('contact_mail_validation_error');	
		
		var eMail = document.getElementById('contact_mail');
		var text = document.getElementById('contact_message');
		var name = document.getElementById('contact_sender_name');

		if(eMail.value == "")
		{
			mailError.style.display = "block";
			result = false;
		}
		else if(!eMail.value.match(regEx))
		{
			mailError.style.display = "none";
			mailValidationError.style.display = "block";
			result = false;
		}
		else
		{
			mailError.style.display = "none";
			mailValidationError.style.display = "block";
		}
		
		if(text.value == "")
		{
			textError.style.display = "block";
			result = false;
		}
		else
		{
			textError.style.display = "none";
		}
		
		if(name.value == "")
		{
			nameError.style.display = "block";
			result = false;
		}
		else
		{
			nameError.style.display = "none";
		}
		

		return result;
}
	
	
	function trim (str) {
    return str.replace(/ +/g, ' ').replace(/^\s+/g, '').replace(/\s+$/g, '');
}
