 $(function(){

   $("#newsletter_subscription #newsletter_toggle").toggle(function(){
     $("#newsletter_subscription").animate({"height":"80px"},200);
     return false;
   }, function(){
     $("#newsletter_subscription").animate({"height":"19px"},200);
     return false;
   });

   $("#form_newsletter_subscription").submit(function(event){
     if (validateEmail("#newsletter_email")) {

       var from = $("#newsletter_email").val();

       $("#newsletter_processing").show();
       $("#newsletter_submit").hide();
       $("#newsletter_email").hide();
       
       $.post("mailer.php", { from: from, subject: "Bitte in die ready-made Newsletter aufnehmen!", body: "\n---- DER ABSENDER DIESER MAIL MÖCHTE DIE READY-MADE NEWSLETTER ABONNIEREN -----\n" },
          function(data){
            // on success
            $("#newsletter_processing").html(data);
            $("#newsletter_processing").css({"font-weight": "normal", "text-transform": "none", "text-align": "left"});
            $("#newsletter_subscription").animate({"height":"240px"},200);
          });
     } else {
       alert("Bitte überprüfen Sie die eingegebene E-Mail Adresse.\nSie könnte fehlerhaft sein.");
     }
     return false;
   });


   // this is for all the elements that should flip on focus
  $(".flipFocus").focus(function(){
    clearField(this);
  });
  $(".flipFocus").blur(function(){
    restoreField(this);
  });

 });


 // helper function that validates text-inputs with email addresses in them

 function validateEmail(obj){
   var emailRegexp = /^([\w]+)(\.[\w]+)*@([\w]+)(\.[\w]{2,3}){1,2}$/i;
  
  if ((emailRegexp.test($(obj).val()) == true) && ($(obj).attr("title") != $(obj).val())){
    return true;
  } else {
   	return false;
  }
 }


 
  // helper functions for all the elements that should flip on focus
 function clearField(o)
 {
 	var obj = $(o);
 	if (obj.attr('title') == obj.val())
 	{
 		obj.val("");
 		obj.css({"color":"#000"});
 	}
 }

 function restoreField(o)
 {
 	var obj = $(o);

 	if (obj.val() == "") {
     obj.val(obj.attr('title'));
     obj.css({"color":"#777"});
 	}	
 }
