var digits = "0123456789";

// non-digit characters which are allowed in phone numbers

var phoneNumberDelimiters = "()- ";

// characters which are allowed in international phone numbers

// (a leading + is OK)

var validWorldPhoneChars = phoneNumberDelimiters + "+";

// Minimum no of digits in an international phone no.

var minDigitsInIPhoneNumber = 10;



function isInteger(s)

{   var i;

    for (i = 0; i < s.length; i++)

    {   

        // Check that current character is number.

        var c = s.charAt(i);

        if (((c < "0") || (c > "9"))) return false;

    }

    // All characters are numbers.

    return true;

}

function trim(s)

{   var i;

    var returnString = "";

    // Search through string's characters one by one.

    // If character is not a whitespace, append to returnString.

    for (i = 0; i < s.length; i++)

    {   

        // Check that current character isn't whitespace.

        var c = s.charAt(i);

        if (c != " ") returnString += c;

    }

    return returnString;

}

function stripCharsInBag(s, bag)

{   var i;

    var returnString = "";

    // Search through string's characters one by one.

    // If character is not in bag, append to returnString.

    for (i = 0; i < s.length; i++)

    {   

        // Check that current character isn't whitespace.

        var c = s.charAt(i);

        if (bag.indexOf(c) == -1) returnString += c;

    }

    return returnString;

}

function checkInternationalPhone(strPhone){

var bracket=3

strPhone=trim(strPhone)

if(strPhone.indexOf("+")>1) return false

if(strPhone.indexOf("-")!=-1)bracket=bracket+1

if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false

var brchr=strPhone.indexOf("(")

if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false

if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false

s=stripCharsInBag(strPhone,validWorldPhoneChars);

return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);

}



$(document).ready(function(){

	$("#send").click(function(){					   				   

		$(".ErrorMess").hide();

		var hasError = false;

		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;

		var emailToVal = "andreea_bestmoments@yahoo.com";

		

		var emailVal = $("#email").val();

		if(emailVal == '') {

			$("#email").after('<div class="ErrorMess">Campul e-mail este gol!</div>');

			hasError = true;

		} else if(!emailReg.test(emailVal)) {	

			$("#email").after('<div class="ErrorMess">Adresa de e-mail este invalida!</div>');

			hasError = true;

		}

		

		var emailNameVal = $("#name").val();

		if(emailNameVal == '' || emailNameVal == 'Name') {

			$("#name").after('<div class="ErrorMess">Campul nume este gol.</div>');

			hasError = true;

		}

		

		var phoneVal = $("#phone").val();

		if((phoneVal == '' || phoneVal == 'Phone' || checkInternationalPhone(phoneVal)==false)) {

			$("#phone").after('<span class="ErrorMess">Campul telefon este gol.</span>');

			hasError = true;

		}



		var Comment = $("#comment").val();

		if(Comment == '') {

			$("#comment").after('<span class="ErrorMess">Campul Mesaj este gol.</span>');

			hasError = true;

		}	

		

		if(hasError == false) {

			$(this).hide();

			$.post("mail.php",

   				{ 	

   					emailTo: 'andreea_bestmoments@yahoo.com', emailFrom: emailVal, subject: "Contact", message: "Nume:"+emailNameVal+"\nTelefon:"+phoneVal+"\nMesaj:"+Comment},

   					function(data){

						$("#sendContact").slideUp("normal", function() {				   

							$("#sendContact").before('<p style="color:#8f232b;text-align:center;"><strong>Multumim pentru ca ne-ati contactat.</strong></p><p style="color:#8f232b;text-align:center;>Veti primi un raspuns in maximum 24 de ore.</p>');											

						});

   					}

				 );

		}

		return false;

	});						   

});
