//*****************************************************************************
// AGIIR Network /
// date de création: 04/02 VPN
// version: APV2.1.1
//*****************************************************************************
// Dernière Modification: 01/05/03 MCN
//				29/03/06 FDX
//*****************************************************************************

function supp_file(nom_fichier)
{
	document.getElementById(nom_fichier).value="";
	alert("La suppression a été prise en compte.\nLe fichier sera supprimé lors de l'enregistrement des modifications...");
}

function createCookie(name,value)
{
	days=5;
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}



function Lancer(act)
{
    if (act=="quit.php")  if (!confirm("Souhaitez-vous vraiment quitter l'application ?")) return ;
	Lancerspecial(act,'');
}


function Lancerajax(act,categpasse)
{
	if (act=="bve_recherche.php")
	{
        with(document.lanceur)
        {
			rubbve.value=document.recherche.trouv.value;
        }
	}
	
	document.lanceur.modeappel.value=categpasse;
	document.lanceur.pkcateg.value=categpasse;
    	document.lanceur.action=act;
        //submit();
	//ajax();
	var donnees=document.getElementById('bvecoeur');
	ajax(document.lanceur, act, 'bve_coeur',donnees,reload_ajax);

    
}

function Lancerspecial(act,categpasse)
{

//if (document.lanceur.pk_menu.value!=js_pkmenu) 
	Lancerspecial_changement_menu(act,categpasse);
//else Lancerajax(act,categpasse);

}

function Lancerspecial_changement_menu(act,categpasse)
{

	if (act=="bve_recherche.php")
	{
        with(document.lanceur)
        {
			rubbve.value=document.recherche.trouv.value;
        }
	}
	
	document.lanceur.modeappel.value=categpasse;
	document.lanceur.pkcateg.value=categpasse;
    with(document.lanceur)
    {
        action=act;
        submit();
    }
}

function reload_ajax()
{
	
div_menu=document.getElementById("menu_fils2");
div_menu2=document.getElementById("menu_ajax");
div_menu.innerHTML=div_menu2.innerHTML;

//alert(lib_titre_page);
//alert("test");

}

function Lancerspecialkey(act,categpasse,key)
{
	document.lanceur.modeappel.value=categpasse;
	document.lanceur.pkkey.value=key;
	document.lanceur.pkcateg.value=categpasse;
    with(document.lanceur)
    {
        action=act;
        submit();
    }
}

function Lancerspecialdoc(act,categpasse,key)
{
	document.lanceur.modeappel.value=categpasse;
	document.lanceur.pkdoc.value=key;
	document.lanceur.pkcateg.value=categpasse;
    with(document.lanceur)
    {
        action=act;
        submit();
    }
}

function Lancerged(act,categpasse)
{
document.lanceur.pkcateg.value=categpasse;
    with(document.lanceur)
                {
                        action=act;
			//method="get";
			document.location="ged.php?login="+js_login+"&catagenda="+js_catagenda+"&pk_orga="+js_pkorga+"&pkcateg="+categpasse;
                        //submit();
                }
}

function Lancergeddoc(act,categpasse,docpass)
{
    document.lanceur.pkcateg.value=categpasse;
    document.lanceur.pkkey.value=docpass;
    document.lanceur.modeappel.value="afficher_doc";
    with(document.lanceur)
                {
                        action=act;
			//method="get";
			document.location="ged.php?login="+js_login+"&catagenda="+js_catagenda+"&pk_orga="+js_pkorga+"&pkcateg="+categpasse+"&pkkey="+docpass+"&modeappel=afficher_doc"+"&loc=portail";
                        //submit();
                }
}

function Lancerged_dashboard(act,categpasse,menupere,menufils)
{
document.lanceur.pkcateg.value=categpasse;
    with(document.lanceur)
                {
                        action=act;
			//method="get";
			document.location="ged.php?login="+js_login+"&catagenda="+js_catagenda+"&pk_orga=9&pkcateg="+categpasse+"&modeappel=actu_intra_dashboard"+"&pk_menu_fils="+menufils+"&pk_menu="+menupere;
                        //submit();
                }
}


function reloadparam()
{
    with(document.lanceur)
                {
                        target="_self";
                }
}

/* Fonction de comparaison de dates, si datedeb < datefin ...
  * datedeb et datefin sont deux dates dans le format jj-mm-aaaa
  * Retourne true si OK false sinon
*/
function compare_dates(datedeb, datefin)
{
	var regex = /^([0-9]{2})-([0-9]{2})-([0-9]{4})$/; // Expression régulière
	var tabdeb = regex.exec(datedeb); // Séparation des champs des dates
	var tabfin = regex.exec(datefin);

	ddeb = new Date(tabdeb[3], tabdeb[2], tabdeb[1]);
	dfin = new Date(tabfin[3], tabfin[2], tabfin[1]);
	// Récupération de la date en millisecondes écoulées depuis le 1er janvier 1970
	timedeb = ddeb.getTime();
	timefin = dfin.getTime();
	if (timedeb <= timefin) return true;
	else return false;
}

/* Fonction de comparaison d'heures
  * heuredeb et heurefin sont deux heures dans le format hh:mm
  * Retourne true si OK false sinon
*/
function compare_heures(heuredeb, heurefin)
{
	var regex = /^([0-9]{1,2}):([0-9]{1,2})$/;
	var tabdeb = regex.exec(heuredeb); 
	var tabfin = regex.exec(heurefin);
	if(tabdeb[1]<10) tabdeb[1] = 0+tabdeb[1];
	if(tabfin[1]<10) tabfin[1] = 0+tabfin[1];
	if(tabdeb[1] > tabfin[1]) return false;
	else if(tabdeb[1]==tabfin[1])
	{	
		if(tabdeb[2]>tabfin[2]) return false;
		else return true;
	}
	else return true;
}

// Fonction pour cocher ou décocher un ensemble de checkbox dans le formulaire passé en paramètre
function checkAll(form, champs, valeur)
{
	for (i = 0; i < form.elements.length; i++){
		if(form.elements[i].name == champs)
			form.elements[i].checked = valeur;
	}
}

// Fonction de vérification qu'un checkbox au moins est coché dans le fom passé en paramètres
function verifCheckForm(form, champs)
{
	var ok = false;
	var i = 0;
	while (i < form.elements.length && ok == false) {
		if(form.elements[i].name == champs && form.elements[i].checked == 1) ok = true;
		i++;
	}
	return ok;
}
// Fonction d'impression
function PSR_imprimer()
        {
            var PSR_f1 = null; 
            var PSR_content=document.getElementById('PSR_print').parentNode.innerHTML; 
            var PSR_title=document.getElementsByTagName('title')[0].innerText; 
            if (PSR_f1) {if(!PSR_f1.closed) PSR_f1.close();} 
            PSR_f1 = window.open ('',"PSR_f1", "height=600,width=700,menubar=yes,scrollbars=yes,resizable=yes,,left=10,top=10"); ; 
            PSR_f1.document.open(); 
            PSR_f1.document.write("<html><head><title>Impression de page</"+"title>"); 
            PSR_f1.document.write("<link rel=\"stylesheet\" type=\"text/css\" href=\"./µREPµ/style/µSTYLEBUREAUµ\" />"); 
            PSR_f1.document.write("<link rel=\"StyleSheet\" href=\"./µREPµjscript/nlstree/nlstree.css\" type=\"text/css\" />"); 
            PSR_f1.document.write("<link rel=\"shortcut icon\" type=\"image/ico\" href=\"./µREPµ/images/favicon.ico\" />"); 
            PSR_f1.document.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />"); 
            PSR_f1.document.write("</"+"head>");
            PSR_f1.document.write("<body>"+PSR_content+"</"+"body></"+"html>");
            PSR_f1.document.close(); 
            PSR_f1.print();
            PSR_f1.focus(); 
        }
        
// Vidage des zones

	function vide_recherche()
	{
		document.recherche.mot_rech.value="";
 	} 

	function vide_login()
	{
		document.MonForm.login.value="";
 	}
	function vide_pass()
	{
		document.MonForm.password.value="";
 	} 	
    function validation()
    {
        with (document.MonForm)
        {
            var message_alert="Vous devez saisir :\n";
            if (login.value=="") message_alert+="- votre login\n";
            if (password.value=="") message_alert+="- votre mot de passe\n";
            if (message_alert!="Vous devez saisir :\n") 
            {
                alert(message_alert);
                return false;
            }
            else return true;
        }
    }



function curseur()
	{
		document.recherche.mot_rech.focus();
	}


/*
	Fonction permetant le requètage HTTP dynamique(AJAX) (YDE)
*/	
function ajax(form, action, tpl, item, fct)
{
	var xhr = null;
	 
	if(window.XMLHttpRequest) // Firefox et autres
	{
		xhr = new XMLHttpRequest();
	}
	else if(window.ActiveXObject) // Internet Explorer
	{
		try
		{
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	else // XMLHttpRequest non supporté par le navigateur
	{
		alert("Votre navigateur ne prend pas en charge cette fonctionalité");
		xhr = false;
	}
	
	xhr.onreadystatechange = function()
	{
		if(xhr.readyState == 4)
		{
			item.innerHTML = xhr.responseText;
			try
			{
				fct();
			}
			catch(e)
			{
			}
		}
		else
		{
			item.innerHTML = "<img src=\"orga_apv4/images/ajax-loader.gif\"/> Chargement";
		}
	}
	
	var vars = "";
	var inputs = form.getElementsByTagName('input');

	for(var i = 0; i < inputs.length; i++)
	{
		vars += inputs[i].name + "=" + inputs[i].value + "&";;
	}

	vars += "tpl_ajax=" + tpl;

	xhr.open("POST", action, true);
	xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=ISO-8859-1");
	xhr.send(vars);
}

/*
	Fonctions rendant un tableau selectionable (YDE)
*/

function make_selectable(table, col_number, fct, row_start)
{
	for(var i = (row_start == null ? 1 : 0); i < table.rows.length; i++)
	{
		if(col_number >= 0)
		{
			table.rows[i].cells[col_number].style.cursor = "arrow";
			add_events_actions(table, table.rows[i].cells[col_number], fct);
		}
		else
		{
			table.rows[i].style.cursor = "arrow";
			add_events_actions(table, table.rows[i], fct);
		}
	}
}

function add_events_actions(table, item, fct)
{
	item.oncontextmenu = function(e)
	{
		unselect_all(table);
		item.onmousedown();
		try
		{
			fct(item);
		}
		catch(e)
		{
		}
		return false
	};
	item.onmousedown = function()
	{
		if(item.cells !== undefined)
		{
			var regexp = new RegExp("(selected)", "g")
			for(var i = 0; i < item.cells.length; i++)
			{
				if(item.cells[i].className.match(regexp))
				{
					item.cells[i].className = item.cells[i].className.replace(regexp,"");
				}
				else
				{
					item.cells[i].className += " selected";
				}
			}
		}
		else
		{
			var regexp = new RegExp("(selected)", "g")
			if(item.className.match(regexp))
			{
				item.className = item.className.replace(regexp,"");
			}
			else
			{
				item.className += " selected";
			}
		}
	}
}

function get_selected(table)
{
	var selected = new Array();
	var regexp = new RegExp("(selected)", "g")
	for(var i = 0; i < table.rows.length; i++)
	{
		if(table.rows[i].className.match(regexp))
		{
			selected.push(table.rows[i]);
		}
		else
		{
			for(var j = 0; j < table.rows[i].cells.length; j++)
			{
				if(table.rows[i].cells[j].className.match(regexp))
				{
					selected.push(table.rows[i].cells[j]);
				}
			}
		}
	}
	return selected;
}

function unselect_all(table)
{
	var regexp = new RegExp("(selected)", "g")
	for(var i = 0; i < table.rows.length; i++)
	{
		for(var j = 0; j < table.rows[i].cells.length; j++)
		{
			if(table.rows[i].cells[j].className.match(regexp))
			{
				table.rows[i].cells[j].className = table.rows[i].cells[j].className.replace(regexp,"")
			}
		}
	}
}
