function Chr(AsciiNum){
    return String.fromCharCode(AsciiNum)
}
function ModPeriode(id)
{
	ladate=new Date();
  newsdate=new Date();
  offset=1000*60*60*24;
  newsdate.setTime(ladate.getTime()+offset);
	if (id==0){
		offset*=30;
    newsdate.setTime(ladate.getTime()-offset);
    document.getElementById('i_datedebut').value = ecritDate(newsdate);
   	document.getElementById('i_datefin').value = ecritDate(ladate);
	//	dojo.widget.manager.getWidgetById("date_debut").setDate(ecritDate(newsdate));
//		dojo.widget.manager.getWidgetById("date_fin").setDate(ecritDate(ladate));
	}
	else if (id==1){
		offset*=92;
    newsdate.setTime(ladate.getTime()-offset);
     document.getElementById('i_datedebut').value = ecritDate(newsdate);
   	document.getElementById('i_datefin').value = ecritDate(ladate);
		//dojo.widget.manager.getWidgetById("date_debut").setDate(ecritDate(newsdate));
	//	dojo.widget.manager.getWidgetById("date_fin").setDate(ecritDate(ladate));
	}
	else if (id==2){
		offset*=365;
    newsdate.setTime(ladate.getTime()-offset);
     document.getElementById('i_datedebut').value = ecritDate(newsdate);
   	document.getElementById('i_datefin').value = ecritDate(ladate);
	}else if (id==3){
		offset*=365*3;
    newsdate.setTime(ladate.getTime()-offset);
     document.getElementById('i_datedebut').value = ecritDate(newsdate);
   	document.getElementById('i_datefin').value = ecritDate(ladate);
	}else if (id==4){
		offset*=365*5;
    newsdate.setTime(ladate.getTime()-offset);
     document.getElementById('i_datedebut').value = ecritDate(newsdate);
   	document.getElementById('i_datefin').value = ecritDate(ladate);
	}

}
function ecritDate(objet){
  var s_jour="";
  var s_mois="";
  var s_anne="";
  s_jour+=objet.getDate();
  s_mois+=objet.getMonth()+1;
  s_anne+=objet.getYear();
  if (s_anne<1000) s_anne=1900+parseInt(s_anne);
  if(s_jour.length==1) s_jour='0'+s_jour;
  if(s_mois.length==1) s_mois='0'+s_mois;
  aa=parseInt(s_anne);
  if(aa>=1900 && aa<=1950)
    aa=aa+100;
 // chainedate=aa+"-"+s_mois+"-"+s_jour; //s_anne
   chainedate=s_jour+"/"+s_mois+"/"+aa; //s_anne
  return(chainedate);
}
function initdate(){
	ladate=new Date();
  newsdate=new Date();
  offset=1000*60*60*24;
  newsdate.setTime(ladate.getTime()+offset);
	offset*=30;
  newsdate.setTime(ladate.getTime()-offset);
  document.getElementById('i_datedebut').value = ecritDate(newsdate);
   document.getElementById('i_datefin').value = ecritDate(ladate);
}

function exec_recherche(){
	var chaine_tmp="";
	var chaine_outspace="";
	var newchaine="";
	var c_title = "";
	var c_texte = "";
	var c_auteur = "";
	if(document.rech.t_motcle.value == ""){
		alert("Vous devez saisir un mot cl"+Chr(233)+" dans la zone de recherche");
		document.rech.t_motcle.focus();
		return;
	}
	else{
		chaine_outspace = filtreEspaceobs(document.rech.t_motcle.value);
		chaine_tmp = filtre_accent(chaine_outspace);
    for(var i=0; i<chaine_tmp.length; i++) {
    	newchaine=newchaine+filtreCar(chaine_tmp.charAt(i));
		}
     chaine_tmp = newchaine;
    // chaine_tmp = document.rech.t_motcle.value;
		document.rech.t_motcle.value = chaine_tmp;
		document.rech.datedebut.value = document.rech.date_debut.value;
		document.rech.datefin.value = document.rech.date_fin.value;

		if(document.rech.c_title.checked == true)
			c_title = document.rech.c_title.value;
		if(document.rech.c_texte.checked == true)
			c_texte = document.rech.c_texte.value;
		if(document.rech.c_auteur.checked == true)
			c_auteur = document.rech.c_auteur.value;
	}
ongletRechProf(chaine_tmp,document.rech.date_debut.value,document.rech.date_fin.value,document.rech.listesources.value,c_title,c_texte,c_auteur);
}

function goExtrait(iddoc,motcle) {
  w = window.open( '../fun/visudoc.php?iddoc='+iddoc+'&motcle='+motcle , 'displayWindow', 'width=350,height=250,resizable=no,directories=no,location=no,scrollbars=yes,status=no,toolbar=no,menubar=no' );
  w.focus();
}

function goArticle(iddoc,visuTyp,dossierselected,aTitre,aTypVisu) {
	//document.f_result.to_do.value = "FULL"

	var str=aTitre
	aTitre = str.substring(0,15)+'...';
	ongletVisuDocProf(iddoc,visuTyp,dossierselected,aTitre,aTypVisu);

// w = window.open( '../fun/visudoc.php?iddoc='+iddoc+'&visutyp='+visuTyp+'&dossiers='+dossierselected+'&to_do=FULL');
//  w.focus();
//	document.f_result.submit();
}

function visuArticle(path,provenance,id_dossier){
	var divlistearticle = document.getElementById('listearticle');
	divlistearticle.innerHTML = '<img src="../img/loading.gif" align="center">';
	
	if(path=="FICHE")
	{
		var transaction = YAHOO.util.Connect.asyncRequest('GET', '../fun/visufiche.php?id_dossier='+id_dossier,
				{ success:responseSuccess, failure:responseFailure });
	}else{
		

		var transaction = YAHOO.util.Connect.asyncRequest('GET', '../fun/visudoc.php?path='+path+'&typvisu='+provenance+'&to_do=FULL&visutyp=partage&id_dossier='+id_dossier,
				{ success:responseSuccess, failure:responseFailure });
	}

	function responseSuccess(o){
		divlistearticle.innerHTML = o.responseText;
	}
	function responseFailure(o){
		alert("Impossible de visualiser ce document");
		divlistearticle.innerHTML = "Document indisponible";
	}
}




function goArticlev2(iddoc,visuTyp,dossierselected,aTitre) {

		var str=aTitre
	aTitre = str.substring(0,10);
	createTab(true, 'Articles'+birdCountTabs, '../fun/visudoc.php?iddoc='+iddoc+'&visutyp='+visuTyp+'&dossiers='+dossierselected+'&to_do=FULL', 'default',aTitre);

}
function goPage(UlrPage,numdossier) {
	ongletGopage(UlrPage,numdossier);
}


function CocheTout(){

	var i = 0;
	while(eval('document.f_result.elements['+i+']')) {
		if(document.f_result.elements[i].checked == true){
			SelectionCochee = false;
		}else{
			SelectionCochee = true;
		}
    i++;
	}

	i = 0;
	while(eval('document.f_result.elements['+i+']')) {
		document.f_result.elements[i].checked = SelectionCochee;
    i++;
	}
}

function TstSelDoc() {
	var i = 0;
	// Selection dans la page courante
	while(eval('document.f_result.elements['+i+']')) {
		if( eval('document.f_result.elements['+i+'].name') == 'c_article[]')
			if(eval('document.f_result.elements['+i+'].checked') == true)
				return true;
		i++;
	}
	return false; //rien n'est
}

function CreateDossierold(pag_navig){
	if( document.creer_dossier.new_dossier.value == "Nouveau dossier"){
		alert("Vous devez saisir un nom de dossier autre que Nouveau dossier ");
		return;
	}
	else if(document.creer_dossier.new_dossier.value == ""){
		alert("Veillez saisir un nom de dossier");
		return;
	}
	else{
		if(document.creer_dossier.t_pwd_doss.value == ""){
			alert("Veillez saisir un mot de passe \n\n ou \n\n saisir * pour donner acc"+Chr(232)+"s "+Chr(224)+" ce dossier sans mot de passe");
			return;
		}
		ongletCreateDossier(document.creer_dossier.new_dossier.value,document.creer_dossier.t_pwd_doss.value);
	}
}


function CreateDossier(){
	var chaine_outspace = document.formCreateDossier.nomdossier.value;
	if(chaine_outspace.trim() == ""){
		alert("Veillez saisir un nom de dossier");
		return;
	}
	else{
		ongletCreateDossier(document.formCreateDossier.nomdossier.value,document.formCreateDossier.editor.value);
	}
}


function AddDocDossier(page){
		if ( TstSelDoc() ) {
			var i = 0;
			var nbrdoc = 0;
			var ListeSelected = "";

			while(eval('document.f_result.elements['+i+']')) {
				if( eval('document.f_result.elements['+i+'].name') == 'c_article[]')
					if(eval('document.f_result.elements['+i+'].checked') == true){
						nbrdoc++;
						if(ListeSelected == "")
							ListeSelected = document.f_result.elements[i].value;
						else
						   ListeSelected = ListeSelected + ";;" + document.f_result.elements[i].value;
					}
				i++;
			}
			if(document.f_result.s_dossier.value == ""){
				alert('Vous devez cr'+Chr(233)+'er un nouveau dossier avant d\'inserer un article');
    		return;
			}
			ongletAddDocDossier(ListeSelected,document.f_result.s_dossier.value,page,nbrdoc);
		}else{
    		alert('Selectionner au moins un titre avant de cliquer');
    		return;
		}
}

function TstSelDos() {
	var i = 0;
	// Selection dans la page courante
	while(eval('document.f_dossier.elements['+i+']')) {
		if( eval('document.f_dossier.elements['+i+'].name') == 'c_dossier[]')
			if(eval('document.f_dossier.elements['+i+'].checked') == true)
				return true;
		i++;
	}
	return false; //rien n'est selectionne
}

function TstSelDosCours() {
	var i = 0;
	// Selection dans la page courante
	while(eval('document.f_dossier.elements['+i+']')) {
		if( eval('document.f_dossier.elements['+i+'].name') == 'c_dossiercours[]')
			if(eval('document.f_dossier.elements['+i+'].checked') == true)
				return true;
		i++;
	}
	return false; //rien n'est selectionne
}


function SuppDossier(page){
		if ( TstSelDos() ) {
				var i = 0;
				var ListeSelected = "";

				while(eval('document.f_dossier.elements['+i+']')) {
					if( eval('document.f_dossier.elements['+i+'].name') == 'c_dossier[]')
						if(eval('document.f_dossier.elements['+i+'].checked') == true){
							if(ListeSelected == "")
								ListeSelected = document.f_dossier.elements[i].value;
							else
							   ListeSelected = ListeSelected + ";;" + document.f_dossier.elements[i].value;
						}
					i++;
				}

				ongletSuppDossier(ListeSelected,page);

		}else{
    		alert('Selectionner au moins un dossier a supprimer');
		}
}

function SuppDocDossier(iddossier,typvisu,nomdossier){
		if ( TstSelDoc() ) {
				var i = 0;
				var ListeSelected = "";

				while(eval('document.f_result.elements['+i+']')) {
					if( eval('document.f_result.elements['+i+'].name') == 'c_article[]')
						if(eval('document.f_result.elements['+i+'].checked') == true){
							if(ListeSelected == "")
								ListeSelected = document.f_result.elements[i].value;
							else
							   ListeSelected = ListeSelected + ";;" + document.f_result.elements[i].value;
						}
					i++;
				}
				ongletSuppDocDossier(ListeSelected,iddossier,typvisu,nomdossier);
		}else{
    		alert('Selectionner au moins un article a supprimer');
		}
}



function extraireDossier(page){
		if ( TstSelDos() || TstSelDosCours()) {

				var i = 0;
				var ListeSelected = "";

				while(eval('document.f_dossier.elements['+i+']')) {
					if( eval('document.f_dossier.elements['+i+'].name') == 'c_dossier[]')
						if(eval('document.f_dossier.elements['+i+'].checked') == true){
							if(ListeSelected == "")
								ListeSelected = document.f_dossier.elements[i].value;
							else
							   ListeSelected = ListeSelected + ";;" + document.f_dossier.elements[i].value;
						}
					i++;
				}
			i = 0;
				var ListeSelectedCours = "";

				ongletExtraireDossier(ListeSelected,ListeSelectedCours,page);
		}else{
    		alert('Selectionner au moins un dossier '+Chr(224)+' extraire');
		}
}


function modifierDossier(page){
		if ( TstSelDos() || TstSelDosCours()) {

				var i = 0;
				var ListeSelected = "";
			i = 0;
				var ListeSelectedCours = "";
				while(eval('document.f_dossier.elements['+i+']')) {
					if( eval('document.f_dossier.elements['+i+'].name') == 'c_dossiercours[]')
						if(eval('document.f_dossier.elements['+i+'].checked') == true){
							if(ListeSelectedCours == "")
								ListeSelectedCours = document.f_dossier.elements[i].value;
							else
							   ListeSelectedCours = ListeSelectedCours + ";;" + document.f_dossier.elements[i].value;
						}
					i++;
				}

				ongletExtraireDossier(ListeSelected,ListeSelectedCours,page);
		}else{
    		alert('Selectionner au moins un dossier '+Chr(224)+' modifier');
		}
}

function visuDossierProf(iddos,typvisu,dosname){
		ongletVisuDossier(iddos,typvisu,dosname);
}


// Js Partie eleve
function visuDossier(iddos){
	///	ongletVisuDossierEleve(iddos);
	ongletAccessDossierEleve(iddos);
}

function goArticleEleve(iddoc,visuTyp,dossierselected,aTitre) {

		var str=aTitre
	aTitre = str.substring(0,15)+'...';
	ongletVisuDocEleve(iddoc,visuTyp,dossierselected,aTitre);
}
function controlDossier(){

	ongletVisuDossierEleve(document.fselectdossier.s_dos.value,document.fselectdossier.pwddoss.value);
}

function accesDossierRefuse(){
	ongletAccessDossierEleve();
}

function addNewIp(){
	if(document.admin.ip.value == ""){
		alert("Vous devez saisir une adresse IP");
		document.admin.ip.focus();
		return;
	}
	if(document.admin.netmask.value == ""){
		alert("Vous devez remplir le champ Netmask");
		document.admin.netmask.focus();
		return;
	}

	document.admin.to_do.value = "addip"
	document.admin.action = 'gestion.php';
	document.admin.submit();
}

function SuppIp(idItem){
	if (confirm("Vous d"+Chr(233)+"sirez vraiment supprimer cette adresse?")){
		document.admin.to_do.value = "suppip"
		document.admin.action = 'gestion.php?item='+idItem;
		document.admin.submit();
	}
	else{
		return;
	}
}

function affichediv(divname){
	var Obj = document.getElementById(divname);
  if( Obj){
    Obj.style.display ="";
  }
}

function affichedivpwd(){
	var Obj = document.getElementById('pwd');
  if( Obj){
    Obj.style.display ="block";
  }
}

function affichedivChPwd(){
	var Obj = document.getElementById('chpwd');
  if( Obj){
    Obj.style.display ="block";
  }
}

function openWindow(theURL,winName,features) {
	  window.open(theURL,winName,features);
	}

function ModifPwd(){
	ongletModifPwd(document.creer_dossier.new_pwd.value);
}


function GoPrint() {
window.print();
}

function PrintDossier(iddossierselect,provenance){
	if ( TstSelDoc() ) {
		var i = 0;
		var nbrdoc = 0;
		var ListeSelected = "";

		while(eval('document.f_result.elements['+i+']')) {
			if( eval('document.f_result.elements['+i+'].name') == 'c_article[]')
				if(eval('document.f_result.elements['+i+'].checked') == true){
					nbrdoc++;
					if(ListeSelected == "")
						ListeSelected = document.f_result.elements[i].value;
					else
						ListeSelected = ListeSelected + ";;" + document.f_result.elements[i].value;
				}
				i++;
			}
			window.open('../fun/docprint.php?iddoc='+ListeSelected+'&dossiers='+iddossierselect+'&typvisu='+provenance+'&visutyp=dossier','Visualisation','status=no,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes');
		}else{
			//alert('Selectionner au moins un article a imprimer');
			//return;
			window.open('../fun/docprint.php?dossiers='+iddossierselect+'&typvisu='+provenance+'&visutyp=dossier&mode=ref','Visualisation','status=yes,toolbar=no,menubar=yes,location=no,scrollbars=yes,resizable=yes');
			//GoPrint();
		}

}


///la parti du bas ne sert a rien !!


function doDate(frmObject, vObj, vFrom, vTo)
{
  if (!vObj)
  {
    getOptionSelected("from",frmObject,frmObject.w_displayfrom_day, frmObject.w_displayfrom_month, frmObject.w_displayfrom_year);
    getOptionSelected("to",frmObject,frmObject.w_displayto_day, frmObject.w_displayto_month, frmObject.w_displayto_year);
  }else{
    v = vObj.options[vObj.selectedIndex].value;

    vLimitFrom = vrPeriod[v][1];
    if (vFrom && vLimitFrom!=vFrom) vLimitFrom=vFrom
    vLimitTo = vrPeriod[v][2];
    if (vTo && vLimitTo!=vTo ) vLimitTo=vTo

    frmObject.w_datefrom.value = vLimitFrom;
    frmObject.w_dateto.value   = vLimitTo;

    frmObject.w_displayfrom.value = vLimitFrom.substr(6,2) + "/" + vLimitFrom.substr(4,2) + "/" + vLimitFrom.substr(0,4);
    frmObject.w_displayto.value   = vLimitTo.substr(6,2)   + "/" + vLimitTo.substr(4,2)   + "/" + vLimitTo.substr(0,4);

    makeOptionSelected(frmObject.w_displayfrom_day , vLimitFrom.substr(6,2));
    makeOptionSelected(frmObject.w_displayfrom_month , vLimitFrom.substr(4,2));
    makeOptionSelected(frmObject.w_displayfrom_year , vLimitFrom.substr(0,4));

    makeOptionSelected(frmObject.w_displayto_day , vLimitTo.substr(6,2));
    makeOptionSelected(frmObject.w_displayto_month , vLimitTo.substr(4,2));
    makeOptionSelected(frmObject.w_displayto_year , vLimitTo.substr(0,4));

    frmObject.w_key.focus();
  }

}

function getOptionSelected(vType,frmObject,vD,vM,vY)
{
  frmObject.w_period.selectedIndex = frmObject.w_period.length-1;
  vObj = eval("frmObject.w_display"+vType)
  vObj.value = vD.options[vD.selectedIndex].value + "/" + vM.options[vM.selectedIndex].value + "/" + vY.options[vY.selectedIndex].value;
}

function makeOptionSelected(objSel,v)
{
  for (i=0; i<objSel.options.length; i++)
    if (eval(objSel.options[i].value)==eval(v))
    {
      objSel.selectedIndex = i;
      return;
    }
}


function isSupplied(vObj)
{
  v = (vObj.value=="");
  if (v) alert("Merci de saisir le champ: " + vObj.title);
  return !v;
}


function isDate(vObj,vDisplay)
{
  var s = vObj.value;
  var v = (s!="") && (s.search(/^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/)!=-1);
  if (v)
  {
    var ladate = s.match(/\d{2,4}/g);
    var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))
    var annee = unedate.getYear()
    if ((Math.abs(annee)+"").length < 4) annee = annee + 1900
    v = ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
  }
  if (!v)
  {
    alert("Merci de v"+Chr(233)+"rifier que les dates saisies sont valides...");
  }else{
    if (vDisplay) vDisplay.value = ladate[2] + ladate[1] + ladate[0];
  }
  return v;
}



function isIP(frmInput)
{
  IPvalue = frmInput.value
  MSG_ERR = "L'adresse IP [ "+ frmInput.value +" ] est incorrecte. Merci de v"+Chr(233)+"rifier.";
  var ipPattern = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;
  var ipArray = IPvalue.match(ipPattern);

  v = (IPvalue!="0.0.0.0") && (IPvalue!="255.255.255.255") && (ipArray!=null)
  if (v)
  {
    for (i = 0; i < 4; i++)
    {
      thisSegment = ipArray[i];
      if (thisSegment > 255) { v=false; i=4; }
      if ((i == 0) && (thisSegment > 255)) { v=false; i=4; }
    }

  }
  if (!v) alert(MSG_ERR)
  return v;
}

function isNumber(frmInput)
{
  var vPattern = /^\d+$/
  var v = (frmInput.value).match(vPattern);
  if (!v) alert("Le champ ["+ frmInput.title +" ] doit etre un nombre entier. Merci de v"+Chr(233)+"rifier.");
  return v;
}

//check if at least one doc is selected out of the current page
function checkSelDoc(frmObject)
{
  var i = 0;
  while(eval('frmObject.elements['+i+']'))
  {
    if( eval('frmObject.elements['+i+'].name') == 'w_itemidx[]')
      if(eval('frmObject.elements['+i+'].checked') == true)
        return true;
    i++;
  }
  return false;
}


function viewDoc(frmObject,path)
{
  if(!checkSelDoc(frmObject) && frmObject.w_selection.value == 0)
    alert( 'Cocher au moins un titre avant de cliquer' );
  else
  {
    frmObject.action = path+"display_doc.php?w_from=listeRes";
    frmObject.submit();
  }
}


//click on number page
function goListe(frmObject,path,indice,addpath)
{
  frmObject.action = path+"index.php?page="+indice+addpath;
  frmObject.submit();
}

function closePresentation(){
	document.getElementById('idpresentation').style.display='none';
}


// Select our unselect of all the docs of the page
function clickAll(frmObject)
{
  var nbElements = 0;
  var nbChecked = 0;
  var i = 0;

  while(eval('frmObject.elements['+i+']'))
  {
    if( eval('frmObject.elements['+i+'].name') == 'w_itemidx[]' )
    {
      if(nbElements == 0)
        start = i;
      nbElements ++;
      if(eval('frmObject.elements['+i+'].checked') == true)
        nbChecked++;
    }
    i++;
  }
  end = i;
  //if nbr of elements checked = nbr of elements w_itemidx, then uncheck of all
  //else we checked all
  valCheck = (nbElements == nbChecked);
  for(j=start; j < end; j++)
    if(eval('frmObject.elements[' + j + '].name') == 'w_itemidx[]')
      eval('frmObject.elements['+j+'].checked=!valCheck');
}