//utils.js : librairie javascript

var charge=1;
var tabwin=new Array();
var indwin=0;

<!--******************************************** PASS_OUBLI() ************************************************-->
function pass_oubli()
{
	if(charge==1)
	{
		if(!ouverte('PASS_OUBLI'))
		{
			hauteur=200;
			largeur=500;
			posw=(screen.width-largeur)/2;
			posh=(screen.height-hauteur)/2;

			tabwin[indwin++]=window.open('/docs/php/affiche.php?ecrantpl=get_pass','PASS_OUBLI', 'left='+posw+',top='+posh+',width='+largeur+',height='+hauteur+',menubar=no,scrollbars=no,status=no,resizable=no,directories=no,location=no,toolbar=no');
		}
	}
}

<!--******************************************** OUVERTE() ************************************************-->
function ouverte(pnomfenetre)
{
	for(i=0;i<tabwin.length;i++)
	{
		if(tabwin[i].closed==false && tabwin[i].name==pnomfenetre)
		{
			tabwin[i].focus();
			return true;
		}
	}
	return false;
}

function afficher_cacher_div(ident, mode)
{
	if(document.getElementById(ident)!=null)
	{
		if(mode==='inverser')
		{
			mode=document.getElementById(ident).style.display=='block';
			mode = ! mode;
		}
		if(mode)
		{
			document.getElementById(ident).style.display='block';
		}else{
			document.getElementById(ident).style.display='none';
		}
	}
}
function afficher_cacher_span(ident, mode)
{
	if(document.getElementById(ident)!=null)
	{
		if(mode==='inverser')
		{
			mode=document.getElementById(ident).style.display=='none';
		}
		if(mode)
		{
			document.getElementById(ident).style.display='inline';
		}else{
			document.getElementById(ident).style.display='none';
		}
	}
}


function afficher_seulement(ident, valeur)
{
	afficher_cacher_div(ident+'_garder', 0);
	afficher_cacher_div(ident+'_envoyer', 0);
	afficher_cacher_div(ident+'_supprimer', 0);
	afficher_cacher_div(ident+'_importer', 0);
	afficher_cacher_div(ident+'_video', 0);
	afficher_cacher_div(ident+'_photo', 0);
	afficher_cacher_div(ident+'_photoexterne', 0);
	afficher_cacher_div(ident+'_0', 0);
	afficher_cacher_div(ident+'_1', 0);
	
	afficher_cacher_div(ident+'_'+valeur, 1);
}



//##################### ERREUR #########################

var prefixe_erreur_txt='Impossible de mener à bien l\'operation : '+"\n";
function is_txtVide(ident)
{
	return document.getElementById(ident)==null || document.getElementById(ident).value=='';
}

function is_mail(chaine)
{
	var i=0;
	var n=chaine.length;
	while( i<n && chaine.charAt(i)!='@')
	{
		i++;
	}
	if(i==0 || i >= (n-1)){return false;}
	i++;
	i++;
	while( i<n && chaine.charAt(i)!='.')
	{
		i++;
	}
	if(i==0 || i >= (n-1))
	{
		return false;
	}
	return true;
}
function is_codePostal(chaine)
{
	var i=0;
	while(i<5 && chaine.charAt(i)>=0 && chaine.charAt(i)<=9)
	{
		i++;
	}
	return i==5 && i==chaine.length;
}


function is_annee(chaine)
{
	var i=0;
	while(i<4 && chaine.charAt(i)>=0 && chaine.charAt(i)<=9)
	{
		i++;
	}
	return i==4 && i==chaine.length;
}

function is_prix(chaine)
{
	var i=0;
	var n=chaine.length;
	while(i<n && ( (chaine.charAt(i)>=0 && chaine.charAt(i)<=9) || (chaine.charAt(i)=='.' || chaine.charAt(i)==',' ) ) )
	{
		i++;
	}
	return i==n;
}

function is_integer(chaine)
{
	var i=0;
	var n=chaine.length;
	while(i<n && chaine.charAt(i)>=0 && chaine.charAt(i)<=9 )
	{
		i++;
	}
	return i==n;
}


function is_telephone(chaine)
{
	var i=0;
	while(i<10 && chaine.charAt(i)>=0 && chaine.charAt(i)<=9)
	{
		i++;
	}
	return i==10 && chaine.charAt(0)==0;
}

function is_repertoire(chaine)
{
	var i=0;
	var n=chaine.length;
	while(i<n && ( (chaine.charAt(i)>=0 && chaine.charAt(i)<=9) || (chaine.charAt(i)>='a' && chaine.charAt(i)<='z') || (chaine.charAt(i)>='A' && chaine.charAt(i)<='Z')) )
	{
		i++;
	}
	return i==n;
}

function idValue(ident)
{
	if(document.getElementById(ident)==null)
	{
		return '';
	}else{
		return document.getElementById(ident).value;
	}
}

function verif_creationAuteur()
{
	//return boolean et affiche un message si besoin est
	var okPourEnvoi=true;
	var EnvoiMsgErreur="";
	
	if(okPourEnvoi && is_txtVide("pseudo") )
	{
		EnvoiMsgErreur="Vous devez choisir un pseudo";
		okPourEnvoi=false;
		document.location='#'+'pseudo';
	}
	if(okPourEnvoi && ( is_txtVide("pass1") || (idValue("pass1")).length<3) )
	{
		EnvoiMsgErreur="Vous devez choisir un mot de passe de 3 caracteres minimum";
		okPourEnvoi=false;
		document.location='#'+'pass1';
	}
	if(okPourEnvoi && idValue("pass1")!=idValue("pass2") )
	{
		EnvoiMsgErreur="Les mots de passes ne sont pas identique";
		okPourEnvoi=false;
		document.location='#'+'pass1';
	}
	if(okPourEnvoi && (is_txtVide("mail") || ! is_mail( idValue("mail") ) ) )
	{
		EnvoiMsgErreur="Vous devez indiquer une adresse email valide";
		okPourEnvoi=false;
		document.location='#'+'mail';
	}
	if(okPourEnvoi && is_txtVide("grp_nom") )
	{
		EnvoiMsgErreur="Vous devez choisir un nom de groupe";
		okPourEnvoi=false;
		document.location='#'+'grp_nom';
	}
	if(okPourEnvoi && is_txtVide("grp_dir") )
	{
		EnvoiMsgErreur="Vous devez choisir un raccourci pour le nom de votre groupe";
		okPourEnvoi=false;
		document.location='#'+'grp_dir';
	}
	if(okPourEnvoi && ! is_repertoire(idValue("grp_dir")) )
	{
		EnvoiMsgErreur="Le raccourci pour le nom de votre groupe ne doit pas contenir autre chose que des lettres simples ou des chiffres : azAZO9";
		okPourEnvoi=false;
		document.location='#'+'grp_dir';
	}
	if(okPourEnvoi && is_txtVide("nom") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre nom";
		okPourEnvoi=false;
		document.location='#'+'nom';
	}
	if(okPourEnvoi && is_txtVide("prenom") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre prenom";
		okPourEnvoi=false;
		document.location='#'+'prenom';
	}
	if(okPourEnvoi && ( is_txtVide("tel") || ! is_telephone(idValue("tel")) ) )
	{
		EnvoiMsgErreur="Vous devez renseigner votre numéro de telephone valide";
		okPourEnvoi=false;
		document.location='#'+'tel';
	}
	if(okPourEnvoi && is_txtVide("adr1") && is_txtVide("adr2"))
	{
		EnvoiMsgErreur="Vous devez renseigner votre adresse";
		okPourEnvoi=false;
		document.location='#'+'adr1';
	}
	if(okPourEnvoi && ( is_txtVide("cdpostal")  || ! is_codePostal(idValue("cdpostal")) ) )
	{
		EnvoiMsgErreur="Vous devez renseigner votre code postal valide";
		okPourEnvoi=false;
		document.location='#'+'cdpostal';
	}
	if(okPourEnvoi && is_txtVide("ville") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre ville";
		okPourEnvoi=false;
		document.location='#'+'ville';
	}
	if(okPourEnvoi && is_txtVide("pays") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre pays";
		okPourEnvoi=false;
		document.location='#'+'pays';
	}
	if(okPourEnvoi && ! document.getElementById('contrat').checked )
	{
		EnvoiMsgErreur="Vous devez accepter les conditions du contrat pour pouvoir continuer";
		okPourEnvoi=false;
		document.location='#'+'contrat';
	}
	
	if(! okPourEnvoi && EnvoiMsgErreur!="")
	{
		alert(prefixe_erreur_txt+EnvoiMsgErreur);
	}
	return okPourEnvoi;
	
}


function verif_modifierContact()
{
	//return boolean et affiche un message si besoin est
	var okPourEnvoi=true;
	var EnvoiMsgErreur="";
	
	if(okPourEnvoi && is_txtVide("pseudo") )
	{
		EnvoiMsgErreur="Vous devez choisir un pseudo";
		okPourEnvoi=false;
		document.location='#'+'pseudo';
	}
	if(okPourEnvoi && ( ! is_txtVide("pass1") && (idValue(pass1)).length<3) )
	{
		EnvoiMsgErreur="Vous devez choisir un mot de passe de 3 caracteres minimum";
		okPourEnvoi=false;
		document.location='#'+'pass1';
	}
	if(okPourEnvoi && idValue("pass1")!=idValue("pass2") )
	{
		EnvoiMsgErreur="Les mots de passes ne sont pas identique";
		okPourEnvoi=false;
		document.location='#'+'pass1';
	}
	if(okPourEnvoi && (is_txtVide("mail") || ! is_mail( idValue("mail") ) ) )
	{
		EnvoiMsgErreur="Vous devez indiquer une adresse email valide";
		okPourEnvoi=false;
		document.location='#'+'mail';
	}
	if(okPourEnvoi && is_txtVide("nom") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre nom";
		okPourEnvoi=false;
		document.location='#'+'nom';
	}
	if(okPourEnvoi && is_txtVide("prenom") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre prenom";
		okPourEnvoi=false;
		document.location='#'+'prenom';
	}
	if(okPourEnvoi && ( is_txtVide("tel") || ! is_telephone(idValue("tel")) ) )
	{
		EnvoiMsgErreur="Vous devez renseigner votre numéro de telephone valide";
		okPourEnvoi=false;
		document.location='#'+'tel';
	}
	if(okPourEnvoi && is_txtVide("adr1") && is_txtVide("adr2"))
	{
		EnvoiMsgErreur="Vous devez renseigner votre adresse";
		okPourEnvoi=false;
		document.location='#'+'adr1';
	}
	if(okPourEnvoi && ( is_txtVide("cdpostal")  || ! is_codePostal(idValue("cdpostal")) ) )
	{
		EnvoiMsgErreur="Vous devez renseigner votre code postal valide";
		okPourEnvoi=false;
		document.location='#'+'cdpostal';
	}
	if(okPourEnvoi && is_txtVide("ville") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre ville";
		okPourEnvoi=false;
		document.location='#'+'ville';
	}
	if(okPourEnvoi && is_txtVide("pays") )
	{
		EnvoiMsgErreur="Vous devez renseigner votre pays";
		okPourEnvoi=false;
		document.location='#'+'pays';
	}
	
	if(! okPourEnvoi && EnvoiMsgErreur!="")
	{
		alert(prefixe_erreur_txt+EnvoiMsgErreur);
	}
	return okPourEnvoi;
}


function verif_gestionAlbum()
{
	//return boolean et affiche un message si besoin est
	var okPourEnvoi=true;
	var EnvoiMsgErreur="";
	
	if(okPourEnvoi && is_txtVide("oeu_nom") )
	{
		EnvoiMsgErreur="Vous devez choisir un nom à l'album";
		okPourEnvoi=false;
		document.location='#'+'oeu_nom';
	}
	if(okPourEnvoi && is_txtVide("oeu_descr") )
	{
		EnvoiMsgErreur="Vous devez remplir une description pour l'album";
		okPourEnvoi=false;
		document.location='#'+'oeu_descr';
	}
	if(okPourEnvoi && is_txtVide('oeu_annee') )
	{
		EnvoiMsgErreur="Vous devez renseigner l'année de sortie de l'album";
		okPourEnvoi=false;
		document.location='#'+'oeu_annee';
	}
	if(okPourEnvoi && ! is_annee(idValue('oeu_annee')) )
	{
		EnvoiMsgErreur="Vous devez renseigner une année de sortie valide";
		okPourEnvoi=false;
		document.location='#'+'oeu_annee';
	}
	if(okPourEnvoi && is_txtVide("oeu_styledesc") )
	{
		EnvoiMsgErreur="Vous devez indiquer la description du style";
		okPourEnvoi=false;
		document.location='#'+'oeu_styledesc';
	}
	if(okPourEnvoi && idValue('oeu_img_choix')=='envoyer' && iDvalue("oeu_img_file")==''  )
	{
		EnvoiMsgErreur="Vous devez choisir un fichier si vous desirez envoyer une image";
		okPourEnvoi=false;
		document.location='#'+'oeu_img_file';
	}
	if(okPourEnvoi && idValue('oeu_pochette_choix')=='envoyer' && iDvalue("oeu_pochette_file")==''  )
	{
		EnvoiMsgErreur="Vous devez choisir un fichier si vous desirez envoyer la pochette de l'album";
		okPourEnvoi=false;
		document.location='#'+'oeu_pochette_file';
	}
	if(okPourEnvoi && ( is_txtVide("oeu_prix") || ! is_prix(idValue('oeu_prix')) ) )
	{
		EnvoiMsgErreur="Vous devez renseigner le prix de l'album ou mettre une valeur de 0 si vous desirez que celui-ci soit gratuit";
		okPourEnvoi=false;
		document.location='#'+'oeu_prix';
	}
	
	if(! okPourEnvoi && EnvoiMsgErreur!="")
	{
		alert(prefixe_erreur_txt+EnvoiMsgErreur);
	}
	return okPourEnvoi;
}

function verif_gestionConcert()
{
	//return boolean et affiche un message si besoin est
	var okPourEnvoi=true;
	var EnvoiMsgErreur="";
	
	if(okPourEnvoi && is_txtVide("crt_salle") )
	{
		EnvoiMsgErreur="Vous devez renseigner le champs de la salle";
		okPourEnvoi=false;
		document.location='#'+'crt_salle';
	}
	if(okPourEnvoi && is_txtVide("crt_adr") )
	{
		EnvoiMsgErreur="Vous devez remplir le champs de l'adresse";
		okPourEnvoi=false;
		document.location='#'+'crt_adr';
	}
	if(okPourEnvoi && !is_codePostal(idValue('crt_cdpostal')) )
	{
		EnvoiMsgErreur="Vous devez renseigner un code postal valide";
		okPourEnvoi=false;
		document.location='#'+'crt_cdpostal';
	}
	if(okPourEnvoi && is_txtVide('crt_ville') )
	{
		EnvoiMsgErreur="Vous devez renseigner la ville";
		okPourEnvoi=false;
		document.location='#'+'crt_ville';
	}
	if(okPourEnvoi && is_txtVide("crt_pays") )
	{
		EnvoiMsgErreur="Vous devez indiquer le champs du pays";
		okPourEnvoi=false;
		document.location='#'+'crt_pays';
	}
	if(okPourEnvoi && is_txtVide("crt_contact") )
	{
		EnvoiMsgErreur="Vous devez indiquer un contact";
		okPourEnvoi=false;
		document.location='#'+'crt_contact';
	}
	if(okPourEnvoi && ! is_telephone(idValue("crt_tel")) )
	{
		EnvoiMsgErreur="Vous devez indiquer un numero de telephone valide";
		okPourEnvoi=false;
		document.location='#'+'crt_tel';
	}
	if(okPourEnvoi && ! is_mail(idValue("crt_mail")) )
	{
		EnvoiMsgErreur="Vous devez indiquer un adresse mail valide";
		okPourEnvoi=false;
		document.location='#'+'crt_mail';
	}
	
	if(! okPourEnvoi && EnvoiMsgErreur!="")
	{
		alert(prefixe_erreur_txt+EnvoiMsgErreur);
	}
	return okPourEnvoi;
}



function verif_gestionMorceau()
{
	//return boolean et affiche un message si besoin est
	var okPourEnvoi=true;
	var EnvoiMsgErreur="";
	
	if(okPourEnvoi && is_txtVide("mor_nom") )
	{
		EnvoiMsgErreur="Vous devez choisir un nom au morceau";
		okPourEnvoi=false;
		document.location='#'+'mor_nom';
	}
	if(okPourEnvoi && (is_txtVide("mor_dureemin") || ! is_integer(idValue("mor_dureemin")) ) )
	{
		EnvoiMsgErreur="La durée du morceau doit être valide";
		okPourEnvoi=false;
		document.location='#'+'mor_dureemin';
	}
	if(okPourEnvoi && (is_txtVide("mor_dureesec") || ! is_integer(idValue("mor_dureesec")) || idValue("mor_dureesec")>59 ) )
	{
		EnvoiMsgErreur="La durée du morceau doit être valide";
		okPourEnvoi=false;
		document.location='#'+'mor_dureemin';
	}
	if(okPourEnvoi && idValue('mor_gros_statut')!=2 && ( is_txtVide('mor_prix') || ! is_prix(idValue('mor_prix')) ) )
	{
		EnvoiMsgErreur="Vous devez renseigner un prix valide";
		okPourEnvoi=false;
		document.location='#'+'mor_prix';
	}
	if(okPourEnvoi && is_txtVide("mor_nomauteur") )
	{
		EnvoiMsgErreur="Vous devez indiquer le nom de l'auteur";
		okPourEnvoi=false;
		document.location='#'+'mor_nomauteur';
	}
	if(okPourEnvoi && is_txtVide("mor_nomcompositeur") )
	{
		EnvoiMsgErreur="Vous devez indiquer le nom du compositeur";
		okPourEnvoi=false;
		document.location='#'+'mor_nomcompositeur';
	}
	if(okPourEnvoi && is_txtVide("mor_nomarrangeur") )
	{
		EnvoiMsgErreur="Vous devez indiquer le nom de l'arrangeur";
		okPourEnvoi=false;
		document.location='#'+'mor_nomarrangeur';
	}
	
	if(! okPourEnvoi && EnvoiMsgErreur!="")
	{
		alert(prefixe_erreur_txt+EnvoiMsgErreur);
	}
	return okPourEnvoi;
}


function put_rm_image(adresse, zonediv)
{
	if(document.getElementById(zonediv)!=null)
	{
		if(document.getElementById(zonediv).innerHTML=='')
		{
			document.getElementById(zonediv).innerHTML='<img src="'+adresse+'" alt="Si vous voyez ce message l\'Image est surement manquante" />';
		}else{
			document.getElementById(zonediv).innerHTML='';
		}
	}
}

//####################### AJAX

function getHTTPObject()
{
	var xmlhttp=false;
	if(window.XMLHttpRequest) xmlhttp = new XMLHttpRequest();
	else if (window.ActiveXObject)
		{
			try {xmlhttp= new ActiveXObject("Msxml2.XMLHTTP");}
			catch(e) { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
		}
	return xmlhttp;
}

function handleHttpResponse(zonediv, objhttp)
{
	if(objhttp.readyState == 4)
	{
		document.getElementById(zonediv).innerHTML=unescape(objhttp.responseText);
	}
}

function handleHttpResponse_reponse(objhttp)
{
	if(objhttp.readyState == 4)
	{
		if(objhttp.responseText=='OK')
		{
			alert('Action effectuée avec succés');
		}else{
			alert(objhttp.responseText);
		}
	}
}

function ChargeZone(adresse, zonediv)
{
	var http=getHTTPObject();
	http.open("GET", adresse, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
	http.onreadystatechange = function() 
	{
		handleHttpResponse(zonediv, http);
	}
	http.send(null);
}

function ajax_faireAction(adresse)
{
	var http=getHTTPObject();
	http.open("GET", adresse, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
	http.onreadystatechange = function() 
	{
		handleHttpResponse_reponse(http);
	}
	http.send(null);
}

function voirPlayliste(tp, ident)
{
	window.location='/php/gestionPlaylist.php?type='+tp+'&id='+ident;
}


function ajouterPlayliste(mor_id)
{
	ajax_faireAction('/php/gestionPlaylist.php?action=ajout&pll_idmorceau='+mor_id+'&affiche=0');
}

function ajouterFan(aut_id)
{
	ajax_faireAction('/php/gestionGout.php?action=ajout&gout_idauteur='+aut_id+'&affiche=0&gout_mode=auteur');
}

function ajouterAmi(ami_type, ami_id, ami_txt)
{
	popupAv('/php/popup_amiDemande.php?ami_type='+ami_type+'&ami_id='+ami_id+'&ami_txt='+ami_txt, 600, 400);
}

function choisir_couleur(champ)
{
	popupAv('/php/selecteurCouleur.php?retour='+champ+'', 400, 450);
}
function popup(uri)
{
	window.open (uri, '', config='height=350, width=400, toolbar=no, menubar=yes, scrollbars=yes, resizable=yes, location=no, directories=no, status=yes')
}
function popupAv(uri, width, Height)
{
	window.open (uri, '', config='height='+Height+', width='+width+', toolbar=no, menubar=yes, scrollbars=yes, resizable=yes, location=no, directories=no, status=yes')
}
function mp_aff_mpDetail(mp_id, dossier)
{
	if(document.getElementById('mpTd_'+mp_id).innerHTML=='')
	{
		document.getElementById('mpTd_'+mp_id).style.padding='15px';
		document.getElementById('mpTd_'+mp_id).innerHTML='Chargement en cours';
		ChargeZone('voirMp.php?mp_mode=detail&mp_id='+mp_id+'&dossier='+dossier+'&nonEntete=1', 'mpTd_'+mp_id);
	}else{
		document.getElementById('mpTd_'+mp_id).style.padding='0px';
		document.getElementById('mpTd_'+mp_id).innerHTML='';
	}
	return false;
}


function attentionRefusCommande()
{
	return confirm('Vous ne devez pas refuser de commandes sans raisons. Tenez à jour vos stocks sur le site et honorez vos commandes.\nUne commande annulée doit être suivie d\'un message au client pour expliquer le refus de la commande.\nMieux vaut livrer un peu tard que ne pas livrer du tout.\nEn cas de probleme, prenez contact avec le client ou le contact Hotzic.\nVoulez vous vraiment annuler la commande ?');
}

sas_tmstp = Math.round (Math.random()*10000000000);
sas_masterflag = 1;
function SmartAdServer (sas_pageid, sas_formatid, sas_target)
{
	if (sas_masterflag == 1) {
		sas_masterflag = 0; sas_master = 'M';
	} else {
		sas_master = 'S';
	}
	document.write('<script type="text/javascript" src="http://www.smartadserver.com/call/pubj/' + sas_pageid + '/' + sas_formatid + '/'+sas_master + '/' + sas_tmstp + '/' + escape(sas_target) + '"></scr'+'ipt>');
}