//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
function SUC(champ) //~~ initialisation ~~ Saisir Uniquement des Chiffres
//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
{
   this.champ=champ;
   var Lui=this;
   var ie = false; /*@cc_on ie = true; @*/
   if ( ie ) {
	this.champ.onkeypress = Lui.IE;
   }
   else  { 
      this.champ.onkeyup = function(e) {
	 Lui.FF(this, e);
      }
   }
}

SUC.prototype.IE = function() {
   if ( event.keyCode<0x30 || event.keyCode>0x39 ) {
      event.returnValue= false;
   }
}

SUC.prototype.FF = function(zone,evt) {
   if ( evt.which<0x30 || evt.which>0x39 ) { 	
      zone.value=zone.value.replace(/[^0-9]/g,"");
   }
}

//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
function SUC1(champ) //~~ initialisation ~~ Saisir Uniquement des Chiffres
//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
{
   this.champ=champ;
   var Lui=this;
   var ie = false; /*@cc_on ie = true; @*/
   if ( ie ) {
      this.champ.onkeypress = Lui.IE;
   }
   else  { 
      this.champ.onkeyup = function(e) {
	 Lui.FF(this, e);
      }
   }
}

SUC1.prototype.IE = function() {
   if (event.keyCode<0x27 || (event.keyCode>0x27 && event.keyCode<0x41) || (event.keyCode>0x59 && event.keyCode<0x61) || (event.keyCode>0x79 && event.keyCode<0xE0)) {
      event.returnValue= false;
   }
}

SUC1.prototype.FF = function(zone,evt) {
   if (evt.which<0x27 || (evt.which>0x27 && evt.which<0x41) || (evt.which>0x59 && evt.which<0x61) || (evt.which>0x79 && evt.which<0xE0)) { 	
      zone.value="";
   }
}

//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
function SUC2(champ) //~~ initialisation ~~ Saisir Uniquement des Chiffres
//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
{
 this.champ=champ;
 var Lui=this;
 var ie = false; /*@cc_on ie = true; @*/
 if ( ie ) {
     this.champ.onkeypress = Lui.IE;
    }
 else  { 
     this.champ.onkeyup = function(e)
      {
       Lui.FF(this, e);
      }
    }
}

SUC2.prototype.IE=function() 

{
 if (event.keyCode>0x30 && event.keyCode<0x39 )
 {
  event.returnValue= false;
 }
}

SUC2.prototype.FF=function(zone,evt)

{
 if (evt.which>0x30 && evt.which<0x39)
 { 	
  	zone.value="";
 }

}


/*************** Test de l'adresse mail tapé page contact*****************/
function isEmail(email,lang) { 
   // var reg = /^[a-zA-Z0-9]+[a-z0-9._-]*@[a-z0-9_-a-z0-9_.a-z0-9]{2,}[.][a-z]{2,3}$/
	var val=email.value;
   //var reg = /[^\[\]()<>@\.,;:\\"\s]+(\.[^\[\]()<>@\.,;:\\"\s]+)*@[^\[\]()<>@\.,;:\\"\s]+(\.[^\[\]()<>@\.,;:\\"\s]+)+\s*$/;
	//var regexp = new RegExp("^[a-zA-Z0-9_\\-\\.]{3,}@[a-zA-Z0-9\\-_]{2,}\\.[a-zA-Z]{2,4}$", "g");
	var regexp = new RegExp("^[a-zA-Z0-9_\\-\\.]{3,}@[a-zA-Z0-9_\\-\\.]+\\.[a-zA-Z]{2,4}$", "g");
   if(!regexp.test(val)) {
		(lang=='fr')? msg = "Il y a une erreur de saisie." : msg = "An error while typing.";
		alert(msg);
		email.focus();
		return false;
		}
	return true;
   //return (reg.test (email));
}

function is_Email (email) { 
   var val=email;
   var regexp = new RegExp("^[a-zA-Z0-9_\\-\\.]{3,}@[a-zA-Z0-9_\\-\\.]+\\.[a-zA-Z]{2,4}$", "g");
   if(!regexp.test(val)) {
      return false;
   }
   return true;
}

function testEmail (email, lg){
   var is_email = isEmail (email);
   if (!is_email) {		
      if(lg == 'fr')
	 alert ('E-mail incorrect.');
      else
	 alert ('The mail address is not correct.');
   }

   return is_email;
}

var regex_name = '[^\\[\\]()<>@;:\\*\\+\\"\\s0-9\\{\\}\\\\]';

var test_name = {
   'en': 'The name is not correct.',
   'fr': 'Nom incorrect.',
   'reg' : '^\\s*(' + regex_name + '+|\\s*)+$'
};
var test_email = {
   'en': 'The mail address is not correct.',
   'fr': 'Email incorrect.',
   'reg': '^\\s*[\\w-]+(\\.\\w+)*@\\w+(\\.\\w+)+\\s*$'
}
var test_firstname = {
   'en': 'The first name is not correct.',
   'fr': 'Prénom incorrect.',
   'reg' : '^\\s*(' + regex_name + '+|\\s*)+$'
}
var test_address = {
   'en': 'The address is not correct.',
   'fr': 'Adresse incorrecte.',
   'reg' : '\\S+'
}
var test_city = {
   'en': 'The city is not correct.',
   'fr': 'Ville incorrecte.',
   'reg' : '^\\s*(' + regex_name + ')+(' + regex_name + '|\\s|[0-9])+$'
}
var test_zip = {
   'en': 'The ZIP is not correct.',
   'fr': 'Code postal incorrect.',
   'reg' : '^\\s*[0-9]+\\s*$'
}
var test_phone = {
   'en' : 'The phone is not correct.',
   'fr' : 'Numéro de téléphone incorrect.',
   'reg' : '\\s*\\+?[0-9\\s()]+\\s*$'
}
var test_prjtitle = {
   'en' : 'The project title is empty.',
   'fr' : 'Veuillez mettre le titre du projet.',
   'reg' : '^\\s*\\w(' + regex_name + '|\\s|[0-9])+$'
}
var test_description = {
   'en' : 'You should describe the project.',
   'fr' : 'Veuillez mettre la description du projet.',
   'reg' : '\\S+'
}

function test_field (field_id, reg, lg) {
   var field = document.getElementById (field_id);
   var regex = new RegExp (reg);
   var result = regex.test (field.value);

   if (!result) {
      alert (reg);
   }

   return result;
}

function validateForm (lg) {
   if (document.quoteForm.devis_1demand.checked) {
      return true;
   }

   var result;
   // result = test_field ('devis_email', test_email['reg'], lg);
   result = test_field ('devis_name', test_name['reg'], lg);

   return false;
}

function validateContact (lang) {
   var emailOK, nomOK, paysOK, prenomOK, telOK, messageOK;
   emailOK = false;
   nomOK = false;
   //paysOK = false;
   prenomOK = false;
   //telOK = false;
   messageOK = false;

   var inEmail = document.getElementById ('email');
   var inNom = document.getElementById ('nom');
   //var inPays = document.getElementById ('pays');
   var inPrenom = document.getElementById ('prenom');
   //var inTel = document.getElementById ('tel');
   var inMessage = document.getElementById ('message_txt');

   emailOK = is_Email (inEmail.value);
   nomOK = is_alpha (inNom.value);
   //paysOK = is_alpha (inPays.value);
   prenomOK = is_alpha (inPrenom.value);
   //telOK = is_integer (inTel.value);
   if(inMessage.value == ''){
	inMessage.style.backgroundColor = "#FF0000";
	document.getElementById ('err_msg').innerHTML = '&nbsp;Veuillez v&eacute;rifier ce champ';
   }else{
	inMessage.style.backgroundColor = "white";
	document.getElementById ('err_msg').innerHTML = '';
   }

   if(!emailOK){
	inEmail.style.backgroundColor = "#FF0000";
	document.getElementById ('td_email').innerHTML = 'Veuillez v&eacute;rifier ce champ';
   }else{
	inEmail.style.backgroundColor = "white";
	document.getElementById ('td_email').innerHTML = '';
   }

   if(!nomOK){
	inNom.style.backgroundColor = "#FF0000";
	document.getElementById ('td_nom').innerHTML = 'Veuillez v&eacute;rifier ce champ';
   }else{
	inNom.style.backgroundColor = "white";
	document.getElementById ('td_nom').innerHTML = '';
   }

    if(!prenomOK){
	inPrenom.style.backgroundColor = "#FF0000";
	document.getElementById ('td_prenom').innerHTML = 'Veuillez v&eacute;rifier ce champ';	
   }else{
	inPrenom.style.backgroundColor = "white";
	document.getElementById ('td_prenom').innerHTML = '';
   }
  
   /*inEmail.style.backgroundColor = (emailOK) ? "white" : "#FF0000";
   inNom.style.backgroundColor = (nomOK) ? "white" : "#FF0000";
   //inPays.style.backgroundColor = (paysOK) ? "white" : "#FFDAB9";
   inPrenom.style.backgroundColor = (prenomOK) ? "white" : "#FF0000";
   //inTel.style.backgroundColor = (telOK) ? "white" : "#FFDAB9";*/

   var formCheck = emailOK && nomOK && prenomOK;
	//document.getElementById ('message').innerHTML = 'Veuillez v&eacute;rifier les saisies dans les champs en rouge';
	//document.getElementById ('err_msg').innerHTML = '   Veuillez v&eacute;rifier les saisies dans le champ';
   return formCheck;
}


/*********************************************************************************/
function is_alphanum(value)
{
re = /\W/
return !re.test(value)
}

function is_alpha(value)
{
//re = /[^A-Za-z]/
re = /^(\W*[A-Za-z]+\W*)+$/
return re.test(value)
}

function is_integer(value)
{
//re = /[^ 0-9\+]/
re = /^[\+]?(\s|[0-9])+$/
return re.test(value)
}

function test_alphanum(value,lang)
{
	(lang=='fr')? msg = "Il y a une erreur de saisie." : msg = "An error while typing.";
	if(!is_alphanum(value)){ alert(msg);input.focus();input.select();}
}

function test_alpha(value,lang)
{
	var msg = "";
	(lang=='fr')? msg = "Il y a une erreur de saisie." : msg = "An error while typing.";
	var checkAlpha = is_alpha (value);
	if (!checkAlpha) { alert(msg);input.focus();input.select();}
	return checkAlpha;
}

function test_numeric(input,lang)
{
	(lang=='fr')? msg = "Il y a une erreur de saisie." : msg = "An error while typing.";
	var checkNumeric = is_integer (input);
	if (!checkNumeric){ alert(msg);input.focus();input.select();}
	return checkNumeric;
}

/********************************************************/
/***Traitement de screenshots qui défilent*****************/
var Timer;
var Pas = 3; // vitesse défilement texte
var Img = 1; // le numéro de l'image à afficher
var End = 5; // le numéro de la dernière image car IDEO n'y est pas encore
/*
* Img=1 => Irina ; Img=2 => Solidom ; Img=3 => Compras ; Img=4 => MSTA ; Img=5 => HMB ; Img=6 => IDEO
*/
var path_img = "wp-content/themes/Ideoservices/images/screenshot/";
//Disséquer l'URL pour connaitre si un screenshot a été selectionné
var url = window.location.href;
var qparts = url.split("?");
if (qparts.length != 0)
{
	// Then find the querystring, everything after the ?
	var query = qparts[1];
	// Split the query string into variables (separates by &s)
	var vars = query.split("&");

	// Initialize the value with "" as default
	var values = "";

	// Iterate through vars, checking each one for varname
	for (i=0;i<vars.length;i++)
	{
		// Split the variable by =, which splits name and value
		var parts = vars[i].split("=");

		// Check if the correct variable
		if (parts[0] == 'screen')
		{
			// Load value into variable
			values = parts[1];

			// End the loop
			break;
		}
	}
		if(values != ""){
			Img = parseInt(values);
		}
}
function type_site(Img,lang){
	
	if(document.getElementById){
		Objet = document.getElementById("type_site" );
	}
	else{
		Objet = document.all["type_site"];
	}
	
/*
* Img=1 => Irina ; Img=2 => Solidom ; Img=3 => Compras ; Img=4 => MSTA ; Img=5 => HMB ; Img=6 => IDEO
*/
	if(lang == "fr"){
		switch(Img){
			case 1:
			Objet.value="Site portail";
			break;
			case 2:
			Objet.value="Site de communication";
			break;
			case 3:
			Objet.value="Site e-commerce";
			break;
			case 4:
			Objet.value="Application web";
			break;			
			case 5:
			Objet.value="Site portail";
			break;		
			case 6:
			Objet.value="Site e-commerce";
			break;
			default:
			Objet.value="Site portail";
			break;
		}
	}else{
		switch(Img){
			case 1:
			Objet.value="Portal site";
			break;
			case 2:
			Objet.value="Exchange site";
			break;
			case 3:
			Objet.value="E-commerce site";
			break;
			case 4:
			Objet.value="Web application";
			break;
			case 5:
			Objet.value="Portal site";
			break;
			case 6:
			Objet.value="E-commerce site";
			break;
			default:
			Objet.value="Portal site";
			break;
		}
	}
	
}
function first_screen(lang){
	if (Img >= 1 && Img <= 9){
		document.images['vue'].src=path_img+'0'+Img+'.jpg';
		document.images['vue'].alt='0'+Img;
	}else{
		document.images['vue'].src=path_img+Img+'.jpg';
		document.images['vue'].alt=Img;
	}
	type_site(Img,lang);
}

function changeImage(value,lang) { // si on avance value = 1, si on recule value = -1

    Img = Img + value ;
    if (value == 1) {
		if (Img > End)
            Img = 1; // si on dépasse la dernière image, on revient au début
    }
    else {
        if (Img < 1)
            Img = End; // si on dépasse la première image (en reculant), on passe à la dernière
    }
    if (Img >= 1 && Img <= 9){
        document.images['vue'].src=path_img+'0'+Img+'.jpg'; // si c'est <= 9 on met un 0 devant
		document.images['vue'].alt='0'+Img;
	}
    else{
        document.images['vue'].src=path_img+Img+'.jpg'; // sinon on affiche le numéro
		document.images['vue'].alt=Img;
	}
	type_site(Img,lang);
}

function imageClicked(lang) {
	if(document.getElementById){
		Objet = document.getElementById("desc" );
	}
	else{
		Objet = document.all["desc"];
	}
	
    Img = document.images['vue'].alt;
	p=parseInt(Img)+18;	//les id des descriptions sur WP commencent par 19, donc 18 car la premiere image est 1
	
    Objet.href='?p='+p+'&page=4&screen='+Img+'&lang_pref='+lang;
}
