﻿/***** Faites découvrir Planet à vos amis ****/

var prenom1;
var email1;

var prenom2;
var email2;

var message;

var invitationErreur;
var empty1;
var empty2;

/***** Fonction principale d'envoi des invitations *****/
function CheckInvitationSend()
{
    invitationErreur = 0;
    empty1 = true;
    empty2 = true;
    if(CheckInvitationForm())
        SendInvitation();
    else
        InvitationAlert();
    return false;
}

/***** Envoyer l'invitation à 1 ou 2 contacts ****/
function SendInvitation()
{   
    if(empty1 == true)
    {
        RegisterInvitationOmnitureTag(email2);
        window.location = '/Account/Invitation.ashx?n=1&prenom1=' + prenom2 + '&mail1=' + email2 + '&message=' + message + '&returnUrl=' + window.location.href;
    }
    if(empty2 == true)
    {
        RegisterInvitationOmnitureTag(email1);
        window.location = '/Account/Invitation.ashx?n=1&prenom1=' + prenom1 + '&mail1=' + email1 + '&message=' + message + '&returnUrl=' + window.location.href;
    }
    else
    {
        RegisterInvitationOmnitureTag(email1 + ' and ' + email2);
        window.location = '/Account/Invitation.ashx?n=2&prenom1=' + prenom1 + '&mail1=' + email1 + '&prenom2=' + prenom2 + '&mail2=' + email2 +'&message=' + message + '&returnUrl=' + window.location.href;
    }
}

/***** Register Invitation Omniture Tag ******/
function RegisterInvitationOmnitureTag(email)
{
    var s = s_gi(OmnitureReportSuite);
    s.linkTrackVars = 'eVar28,events';
    s.linkTrackEvents = 'event12';
    s.events = 'event12';
    s.eVar28 = 'invite friend : ' + email;
    s.tl(this, 'o', 'Invitation Sent');
}


/***** Afficher une erreur lorsque les champs ne sont pas valides *****/
function InvitationAlert()
{
    if(invitationErreur == -1)
	{
		alert("L'adresse email de votre premier contact n'est pas valide.");
	}
	else if(invitationErreur == -2)
	{
		alert("L'adresse email de votre deuxième contact n'est pas valide.");
	}
	else if(invitationErreur == -3)
	{
	    alert("Les adresses email de vos contacts ne sont pas valides.");
	}
	else if(invitationErreur == -4)
	{
	    alert("Vous devez specifier au moins un destinataire!");
	}
	else if(invitationErreur == -5)
	{
	    alert("Vous devez specifier un destinataire pour champs emails remplis!");
	}
}

/***** Vérification des champs *****/
function CheckInvitationForm() 
{
    var error = false;
    
    empty1 = IsFieldEmpty($("#prenom1"))
    empty2 = IsFieldEmpty($("#prenom2"))
    
    /* Si les 2 champs prénoms sont vides */
    if(empty1 && empty2)
    {
        error = true;
        /* Si des emails sont remplies sans prénoms associés*/
        if(!IsFieldEmpty($("#email1")) || !IsFieldEmpty($("#email2")))
            invitationErreur = -5;
        else invitationErreur = -4;
    }

    /* Si le prénom1 est rempli */
    if(!empty1)
    {
        /* Vérification de l'email */
        if(!CheckInvitationEmail($("#email1")))
        {
            error = true;
            invitationErreur = -1;
        }
    }

    /* Si le prénom2 est rempli */
    if(!empty2) 
    {
        /* Vérification de l'email */
        if(!CheckInvitationEmail($("#email2")))
        {
            error = true;
            if(invitationErreur == -1)
                invitationErreur = -3;
            else invitationErreur = -2;
        }
    }
    if(error)
    {
        return false;
    }
    else
    {
        prenom1 = $("#prenom1").val();
        email1 = $("#email1").val();
        prenom2 = $("#prenom2").val();
        email2 = $("#email2").val();
        message = $("#commentaire").val();
        return true;
    }
}

/***** Vérifie si un champ est vide *****/
function IsFieldEmpty(field)
{
	// is empty ?
	if($(field).val() == '')
	{
		return true;
	}
	else return false;
}

/***** vérifie que l'adresse email est bien formée *****/
function CheckInvitationEmail(field)
{
	// is empty ?
	if(IsFieldEmpty(field))
	{
		setError($(field));
		return false;
	}
	// is valid ? (for emails)
	else
	{
		var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		
		if (!(emailPattern.test($(field).val())))
		{
			setError($(field));
			return false;
		}
		else
		{
			eraseError($(field));
			return true;
		}
	}
}


