/*-------------------------------------------------------------------

Espace Dynamique templates engine

Jazotel plugin

Javascript functions

---------------------------------------------------------------------

20070522 - ESPACE DYNAMIQUE - ADH V1.00

---------------------------------------------------------------------*/

// Global variables

var d = document;

var bNavNS = ((navigator.appName.substring(0, 3) == "Net") ||

	(navigator.userAgent.indexOf("Opera") > 0)); // Netscape/Opera or IE;



var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

var PDFFile = '';

/*-------------------------------------------------------------------

// Base64 code from Tyler Akins -- http://rumkin.com

---------------------------------------------------------------------*/

function Encode64(input) {

	if (input.length == 0) return input;

   var output = "";

   var chr1, chr2, chr3;

   var enc1, enc2, enc3, enc4;

   var i = 0;



   do {

      chr1 = input.charCodeAt(i++);

      chr2 = input.charCodeAt(i++);

      chr3 = input.charCodeAt(i++);



      enc1 = chr1 >> 2;

      enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);

      enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);

      enc4 = chr3 & 63;



      if (isNaN(chr2)) {

         enc3 = enc4 = 64;

      } else if (isNaN(chr3)) {

         enc4 = 64;

      }



      output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + 

         keyStr.charAt(enc3) + keyStr.charAt(enc4);

   } while (i < input.length);

   return output;

}

/*-------------------------------------------------------------------

---------------------------------------------------------------------*/

function InitJazotel() {

	if (window.XMLHttpRequest) // FF 

		xhrObj = new XMLHttpRequest(); 

	else if(window.ActiveXObject) // IE 

		xhrObj = new ActiveXObject('Microsoft.XMLHTTP'); 

	else { // XMLHttpRequest non supporté

		alert('Votre navigateur ne supporte pas le fonctionnement asynchrone...'); 

		return; 

	}

}

/*-------------------------------------------------------------------

ADH - 20070522

---------------------------------------------------------------------*/

function ReadPDF(FileName) {

	d.getElementById('FileName').value = FileName;

	window.open('tForm.html', '', 'width=600,height=450,dialog=yes,modal=yes');

}

/*-------------------------------------------------------------------

ADH - 20070522

---------------------------------------------------------------------*/

function BpSend() {

	var Path = 'Pdf/' + window.opener.document.getElementById('FileName').value;

	if (!TestFields()) return;

	SendMail();

 	window.opener.location.href = Path;

	window.close();

}

/*-------------------------------------------------------------------

ADH - 20070522

---------------------------------------------------------------------*/

function BpAbort() {

	window.close();

}

/*-------------------------------------------------------------------

20070523

---------------------------------------------------------------------*/

function TestFields() {

	if (

		(d.getElementsByName("eMail")[0].value == "")

		) {

		alert("Merci de saisir une adresse email");

		return false;

	}

	var reg = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/

	if (reg.exec(d.getElementsByName("eMail")[0].value) == null) {

		alert("Merci de saisir une adresse email valide");

		return false;

	}

	return true;

}

/*-------------------------------------------------------------------

20070524

---------------------------------------------------------------------*/

function SendMail() {

	if (!InitXHR()) return false;

	var Data = '';

	Data += '?Arg[0][0]=' + 'Prenom' + '&Arg[0][1]=' + Encode64(d.getElementsByName('FirstName')[0].value);

	Data += '&Arg[1][0]=' + 'Nom' + '&Arg[1][1]=' + Encode64(d.getElementsByName('Name')[0].value);

	Data += '&Arg[2][0]=' + 'Societe' + '&Arg[2][1]=' + Encode64(d.getElementsByName('Firm')[0].value);

	Data += '&Arg[3][0]=' + 'Telephone' + '&Arg[3][1]=' + Encode64(d.getElementsByName('Phone')[0].value);

	Data += '&Arg[4][0]=' + 'eMail' + '&Arg[4][1]=' + Encode64(d.getElementsByName('eMail')[0].value);

	var Str = d.getElementsByName('Message')[0].value;

	if (Str.length > 250) Str = Str.substr(0, 250);

	var Message = Encode64(Str);

	Data += '&Arg[5][0]=' + 'Message' + '&Arg[5][1]=' + Message;

	Str = (d.getElementsByName('Contact')[0].checked) ? 'Oui' : 'Non';

	Data += '&Arg[6][0]=' + 'Contact' + '&Arg[6][1]=' + Encode64(Str);

	

	xhrObj.open('GET', 'Plugins/Jazotel/SendMail.php' + Data, false);

	xhrObj.send(null);

	var Resp = '';

	if (xhrObj.readyState == 4) {	

		Resp = xhrObj.responseText;

		return true;

	}

	else {

		return false;

	}

}

/*-------------------------------------------------------------------

---------------------------------------------------------------------*/

function InitXHR() {

	if (window.XMLHttpRequest) // FF 

		xhrObj = new XMLHttpRequest(); 

	else if(window.ActiveXObject) // IE 

		xhrObj = new ActiveXObject('Microsoft.XMLHTTP'); 

	else { // XMLHttpRequest non supporté

		alert('Votre navigateur ne supporte pas le fonctionnement asynchrone...'); 

		return false; 

	}

	return true;

}

