//function string.trim supprime les espaces en début et fin de chaine
String.prototype.trim = function()
{ return this.replace(/(^\s*)|(\s*$)/g, ""); }




function popup(w, h, page, name)
{	
	var scroll = 'auto';
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;

	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',noresizable';
	win = window.open(page, name, winprops);
	if (parseInt(navigator.appVersion) >= 4)
		win.window.focus();
}


function popup2(w, h, page, name)
{	
	var scroll = 'auto';
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;

	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=yes,noresizable';
	win = window.open(page, name, winprops);
	if (parseInt(navigator.appVersion) >= 4)
		win.window.focus();
}


//arrondi la valeur a n chiffre apres la virgule
function arrondi(valeur, n)
{
	return Math.round(Math.pow(10,n)*valeur)/Math.pow(10,n);
}

function checkmail(email)
{
	validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
    if (email.search(validRegExp) == -1) 
		return false;
	else 
		return true; 

  var place = email.indexOf("@",1);
  var point = email.indexOf(".",place+1);
  if ((place > -1)&&(email.length >2)&&(point > 1))
    return true;
  else
    return false;


//var re=/^[a-z\d]+((\.|-|_)[a-z\d]+)*@((?![-\d])[a-z\d-]{0,62}[a-z\d]\.){1,4}[a-z]{2,6}$/gi;
//return (email.match(re)==email)&&(email.substr(email.lastIndexOf("@")).length<=256);

}

function checkdate(unedate)
{
	var ok;
	alphanum = "0123456789";
	if (unedate.length==10) {
		for (increment=0; increment<unedate.length; increment++) {
			ok = false;
			if (increment==2 || increment==5)
			{
				if (unedate.charAt(increment) == "/") ok = true;	
			}
			else
				for (position=0; position<alphanum.length; position++)
					if (unedate.charAt(increment) == alphanum.charAt(position)) ok = true;

			if (!ok) return false;
		}
		return ok;
	}
	else return false;
}


function checkdate_v2(unedate)
{
	var ok;
	alphanum = "0123456789";
	if (unedate.length==10) {
		for (increment=0; increment<unedate.length; increment++) {
			ok = false;
			if (increment==4 || increment==7)
			{
				if (unedate.charAt(increment) == "/") ok = true;	
			}
			else
				for (position=0; position<alphanum.length; position++)
					if (unedate.charAt(increment) == alphanum.charAt(position)) ok = true;

			if (!ok) return false;
		}
		return ok;
	}
	else return false;
}


function checkcaractere(chaine, alphanum)
{
	var ok;

	if (chaine.length >0)
	{
		for (increment=0; increment<chaine.length; increment++)
		{
			ok = false;
			for (position=0; position<alphanum.length; position++)
				if (chaine.charAt(increment) == alphanum.charAt(position)) ok = true;

			if (!ok) return false;
		}
		return ok;
	}
	else return false;
}

function checkupload(chaine, param)
{
	var multimedia = new Array ('swf','jpg','gif','jpeg','png','avi','mpg','mpeg', 'mp3', 'wma', 'wav');
	var office = new Array('doc','xls','ppt');
	var pdf = new Array('pdf');
	var ok = false;
	var verif = new Array;

	if (chaine.length>0) {
		if (chaine.indexOf('.')!="-1" && (chaine.indexOf('/')!="-1" || chaine.indexOf('\\')!="-1"))
		{
			if (param == "[normal]" || param == "") return true;
			if (param == "[multimedia]")
				verif = multimedia;
			if (param == "[office]")
				verif = office;
			if (param == "[pdf]")
				verif = pdf;
			if (param.substr(0,6) == "[perso")
				var verif = param.substr(7,param.length-9).split(",");

			test = chaine.substr(chaine.length-4,4).toLowerCase();
			for (position=0; position<verif.length; position++)
				if (test == "."+verif[position]) ok = true;
			
			return ok;
		}
		else return false;
	}
	else return false;
}




function message(chaine)
{
	parent.ABDpied.msgalert.innerHTML = chaine;
}

function check(chaine, param)
{
	var ok, alphanum;

	if (param.substr(0,13)== "SAISIE_UPLOAD")
	{
		param2 = param.substr(14, param.length-14);
		param = param.substr(0,14);
	}


	switch (param)
	{
		case (param = "NOM_SERVEUR") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "NOM_USER") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_éèêëàäâîïôöùüûùñç";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "NOM_HOST") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789.";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "NOM_BASE") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_éèêëàäâîïôöùüûùñç ";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "NOM_CHAMPS") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_éèêëàäâîïôöùüûùñç'. ";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SELECT") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_éèêëàäâîïôöùüûùñç'.?:!*+=$£µ%#@, ";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "EXTENTION") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789éèêëàäâîïôöùüûùñç,";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_TXT") :
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_éèêëàäâîïôöùüûùñç'.?:!*+=$£µ%#@,&()=+°#{[|\^]}$£¤*§;/<> ";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_TXT2") : //ACCEPTE CHAINE VIDE
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789-_éèêëàäâîïôöùüûùñç'.?:!*+=$£µ%#@,&()=+°#{[|\^]}$£¤*§;/<> ";
			if (chaine.length==0) return true;
			else return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_ENTIER") :
			alphanum = "0123456789-";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_QUANTITE") :
			alphanum = "0123456789";
			return checkcaractere(chaine, alphanum);
			break;
			
		case (param = "SAISIE_ENTIER2") : //ACCEPTE CHAINE VIDE
			alphanum = "0123456789-";
			if (chaine.length==0) return true;
			else return checkcaractere(chaine, alphanum);
			break;

		case (param = "SAISIE_ARRONDI") :
			alphanum = "0123456789-+.";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_ARRONDI2") : //ACCEPTE CHAINE VIDE
			alphanum = "0123456789-+.";
			if (chaine.length==0) return true;
			else return checkcaractere(chaine, alphanum);
			break;

		case (param = "SAISIE_FLOAT") :
			alphanum = "0123456789-+Ee.";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_FLOAT2") : //ACCEPTE CHAINE VIDE
			alphanum = "0123456789-+Ee.";
			if (chaine.length==0) return true;
			else return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_NOMBRE") :
			alphanum = "0123456789";
			return checkcaractere(chaine, alphanum);
			break;
		case (param = "SAISIE_TEL") :
			alphanum = "0123456789+ ";
			return checkcaractere(chaine, alphanum);
			break;

		case (param = "SAISIE_MAIL") : //SAISIE OBLIGATOIRE
			return checkmail(chaine);
			break;
		case (param = "SAISIE_MAIL2") : //ACCEPTE LA CHAINE VIDE
			if (chaine.length==0) return true
			else return checkmail(chaine);
			break;

		case (param = "SAISIE_DATE") : //SAISIE OBLIGATOIRE
			return checkdate(chaine);
			break;
		case (param = "SAISIE_DATE2") : //ACCEPTE LA CHAINE VIDE
			if (chaine.length==0) return true
			else return checkdate(chaine);
			break;
		case (param = "SAISIE_DATE3") : //SAISIE OBLIGATOIRE DATE V2
			return checkdate_v2(chaine);
			break;
		case (param = "SAISIE_DATE4") : //ACCEPTE LA CHAINE VIDE DATE V2
			if (chaine.length==0) return true
			else return checkdate_v2(chaine);
			break;

		case (param = "SAISIE_UPLOAD") :  //SAISIE OBLIGATOIRE
			return checkupload(chaine, param2);
			break;
		case (param = "SAISIE_UPLOAD2") :    // ACCEPTE LA CHAINE VIDE
			if (chaine.length==0) return true
			else return checkupload(chaine, param2);
			break;

		default:
			alphanum = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz";
			break;

	}
	

}

function gestion_msg(msg)
{
	message("&nbsp;");

	if (msg == "base_ajout_pb") message("Impossible de créer le projet, problème de connexion");
	if (msg == "base_ajout_pb2") message("Impossible de créer le projet, le nom du projet existe déjà");
	if (msg == "base_modif_pb") message("Impossible de modifier le projet, problème de connexion");
	if (msg == "base_ajout") message("Projet ajouté");
	if (msg == "base_modif") message("Projet modifié");
	if (msg == "base_suppr") message("Projet supprimé");
	if (msg == "base_conf") message("Projet configurée");

	if (msg == "table_ajout") message("Table créee");
	if (msg == "table_suppr") message("Table supprimée");
	if (msg == "table_copie") message("Table copiée");
	if (msg == "table_vider") message("Table vidée");
	if (msg == "table_importcsv") message("Fichier CSV importé");
	if (msg == "table_dedoublonner") message("Table dédoublonnée");
	if (msg == "table_conf") message("Table configurée");

	if (msg == "fichier_pb") message("Impossible d'ouvrir le fichier");

	if (msg == "error_connexion") message("Impossible de se connecter à la base");
	

	
}


function textenrichi(nom)
{
	popup(800,600,'../plugins/editeur/edit.php?champs='+nom);
}

function calendrier(nom, type)
{
	popup(300,220,'../plugins/calendrier/index.php?type='+type+'&champs='+nom);
}

function copyright()
{
	copy = "Pierre-Alexandre MONIN\n";
	copy += "MPA Création Numérique\n";
	copy += "Téléphone : 06 13 24 36 68\n";
	copy += "Mail : contact@mpacreation.com\n";
	copy += "Web : www.mpacreation.com\n";
	copy += "Code source protégé\n";
	copy += "Copyright 2007\n";

	alert(copy);
}


function rollon(obj)
{
	document[obj].src = eval(obj + "_on.src");
	
}

function rolloff(obj)
{
	document[obj].src = eval(obj + "_off.src");
}
