// JavaScript Document
/****************************************************************************
Fichier : global_js.jj
Titre :  Script javascript communs
Auteur : Claude Frascadore 
Email : claude@koan.qc.ca
Url : www.koan.qc.ca
Usage : 
Description : 

Les fonctions suivantes sont incluses dans ce fichier :

function MM_reloadPage(init) //reloads the window if Nav4 resized
function newImage(arg) 
function changeImages() 
function preloadImages() 
function getCenter(tablewidth)
function showDivs()
function cms_popUpWindow(URLStr, left, top, width, height, toolbar, location, directories, status, menubar, scrollbars, resizable)
function openWindow(URLStr)
function browserName()
function addFavorites()
function fenetreImpression(title, msg)
function changer_langue(langue,id_site)
function readCookie(name)
function is_hidden(menulevel)
function writeInfo(text)
function InsertSampleMovie(audiofile)
function printPage()
function newPos()
function MM_openBrWindow(theURL,winName,features) //v2.0
function floatButton(iX,iY,id)
function accesskeys()
function readItems(name)
function writeItems(name, value, hours)
function leftTrim(sString)
function rightTrim(sString)
function trimAll(sString)
function print_page()
function locateObject(n, d)
function hideTooltip(object)
function showTooltip(object,e, tipContent, backcolor, bordercolor, textcolor, displaytime)

****************************************************************************/

function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}


var preloadFlag = false;
var langue_over;
function preloadImages() {
	if (document.images) {
		langue_over = newImage("images/langue"+langue+"-over.jpg");
		preloadFlag = true;
	}
}
function preloadImages() {
	if (document.images) {
		rpmaccueil_over = newImage("images/rpmaccueil-over.jpg");
		rpminfolettre_over = newImage("images/rpminfolettre-over.jpg");
		rpmenglish_over = newImage("images/rpmenglish-over.jpg");
		preloadFlag = true;
	}
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

function getCenter(tablewidth){
	var w
	var ns4=document.layers
	var ie4=document.all
	var ns6=document.getElementById&&!document.all
	tablewidth = (tablewidth) ? tablewidth : 0;
	if (ie4) {//if the user is using IE 4+
			w = parseInt(document.body.clientWidth)/2;
	} else if (ns4){//else if the user is using NS 4
			w = window.innerWidth/2;
	} else if (ns6) { // Netscape 6 and 7 
		 w = parseInt(document.body.clientWidth)/2;
	}
	return w;
}
/*
var mlTimerID  = 0;
function showDivs(){	
	if(mlTimerID) {
		clearTimeout(mlTimerID);
		mlTimerID  = 0;		
		<?php if (strstr($cms_sites->Fields('layer_langues_position'),'haut') == true) { ?>	
		MM_showHideLayers('layerlanguessite','','show')
		<?php } ?>
<?php if (strstr($cms_sites->Fields('layer_langues_position'),'bas') == true) { ?>
		MM_showHideLayers('layerlanguessitebas','','show')
		<?php } ?>
		showtable('layermenu','show');
	}
}
*/
mlTimerID  = setTimeout("showDivs()", 100);

var cms_popUpWin=0;
function cms_popUpWindow(URLStr, left, top, width, height, toolbar, location, directories, status, menubar, scrollbars, resizable) {
  if(cms_popUpWin)  {
    if(!cms_popUpWin.closed) cms_popUpWin.close();
  }
  cms_popUpWin = open(URLStr, 'cms_popUpWin', 'toolbar='+toolbar+', location='+location+', directories='+directories+', status='+status+', menubar='+menubar+', scrollbars='+scrollbars+', resizable='+resizable+', copyhistory=yes, width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}

function openWindow(URLStr){
  var width="800", height="600";
  var left = (screen.width/2) - width/2;
  var top = (screen.height/2) - height/2;
	var toolbar = 'no'; 
	var location = 'no'; 
	var directories = 'no'; 
	var status = 'no'; 
	var menubar = 'no'; 
	var scrollbars = 'no'; 
	var resizable = 'no'; 
	cms_popUpWindow(URLStr, left, top, width, height, toolbar, location, directories, status, menubar, scrollbars, resizable)
}

function browserName(){
	var browserAgent = navigator.userAgent;
	var browserName =  navigator.appName;
	if (browserAgent.indexOf("Opera") != -1) browserName = "Opera"
	else if (browserAgent.indexOf("Netscape") != -1) browserName = "Netscape"
	else if (browserAgent.indexOf("Firefox") != -1) browserName = "Firefox"
	else if (browserAgent.indexOf("Safari") != -1) browserName = "Safari"
	return browserName;
}
/*
function addFavorites(){
	var bname = browserName();
	if (document.all) {
		window.external.AddFavorite(window.location, document.title)
	} else {
		alert('<?php echo get_interface_message($_SESSION['langue'],"message_pour_ajouter_ce_site_a_vos_favoris_01","Utilisateurs de "); ?>'+ bname+'<?php echo get_interface_message($_SESSION['langue'],"message_pour_ajouter_ce_site_a_vos_favoris_02",": Pour ajouter ce site à vos favoris, cliquez \"OK\" et appuyez sur les touches [CTRL-D]"); ?>');
	}
}
*/

function fenetreImpression(title, msg) {
	var width="800", height="600";
	var left = (screen.width/2) - width/2;
	var top = (screen.height/2) - height/2;
	var styleStr = 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, copyhistory=yes, width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
	var msgWindow = window.open("","msgWindow", styleStr);
	var hd = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\n';
	hd += '<head><title>'+title+'<'+'/title>\n';
	hd += '<style media="print">\n';
	hd += ".noprint {display:none;}\n";
	hd += '.boutonsubmit {display:none;}\n';
	hd += '<'+'/style> \n';	
	hd += '<'+'/head>\n';
	hd += '<link href='+msg_cssname+ ' rel="stylesheet" type="text/css">\n';
	var logo = '<img src="'+page01+'" border="0">';
	bd = '<body leftmargin=0 topmargin=0 marginheight=0 marginwidth=0 onload="self.print();">'+logo+msg+'<br><p><form><center><input type="button" class="boutonsubmit" value="FERMER" onclick="self.close()"><'+'/center><'+'/form><'+'/body>';
	msgWindow.document.write(hd + bd);
	msgWindow.document.close();
}

function changer_langue(langue,id_site){
	dest = "index.php?s="+id_site+ "&l="+langue;
	setCookie('submenulevel'+id_section_min[langue],'',-1);
	setCookie('mitem','',-1);
	setCookie('smenuitem','sm'+soussection_min[langue],1);
	location.href = dest;
}
function readCookie(name){
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0)  { 
    offset = document.cookie.indexOf(search);
    if (offset != -1)    { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}

function is_hidden(menulevel){
	var ml = document.getElementById(menulevel);
	if (ml) {		
		var state = (ml.style.visibility == "hidden");
		return state;
	} else return false;
}

function writeInfo(text){
	var layerinfos = document.getElementById('layerinfos');
	layerinfos.style.visibility == "";
	layerinfos.innerHTML = text;
}

function InsertSampleMovie(audiofile){
	document.write('<br><OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab" HEIGHT=16 WIDTH=320 />\n');
	document.write('<param name="src" value="'+audiofile+'" />\n');
	document.write('<param name="autoplay" value="false" />\n');
	document.write('</object />\n');
}

function printPage(){
	var b = document.getElementById('table_contenu');
	var msg = '<table bgcolor="#FFFFFF" width="90%" border="0" cellpadding="0" cellspacing="0" align="center">' + b.innerHTML + '<'+'/table>';
	fenetreImpression(document.title, msg)
}
/*
function newPos() {
	return 0;
	var layerlanguessite = document.getElementById('layerlanguessite');
	var layer_langues_left = positionMenuLangue('<?php echo $cms_sites->Fields('layer_langues_left'); ?>','<?php echo $tableWidth; ?>')
	if (layerlanguessite){
		layerlanguessite.style.left = layer_langues_left;
	}
	var logo = document.getElementById('logo');
	if (logo) {
		var tableWidth = '<?php echo $tableWidth; ?>';
		var center = getCenter(tableWidth);
		var offsetPos = (parseInt(center) + (parseInt(tableWidth) / 2)) - parseInt(tableWidth) + 10;
	}
}
*/
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}


var sml = 'submenulevel'+id_section_min[langue];
var mit = 'menuitem'+id_section_min[langue];
var mitem = readCookie('mitem');
var smenuitem = readCookie('smenuitem');
var menuVerticalOuvert = readCookie('menuVerticalOuvert');
if (menuVerticalOuvert == 1) openAllSubMenuItems();

function goto(url){
	location.href=url;
}

function gotolng(langue){
	langue = (langue=="fr") ? "en" : "fr";
	location.href="index.php?l="+langue;
}

function accesskeys(){
	if (document.getElementsByTagName){
		var anchors = document.getElementsByTagName("a");
		for (var i=0; i<anchors.length; i++){
			var anchor = anchors[i];
			anchor.accessKey = anchor.innerHTML.substring(0,1);
		}
	}
}
/*
// window.onload = accesskeys;
// document.getElementById("elementID").accessKey = value
// document.all.elementID.accessKey = value // IE only
// onFocus="document.form1.onSubmit='return submitSearch()';" 


submitSearch()
*/


function submitSearch(){
	if (!document.form1) return;
	if (document.form1.searchCriteria.value=="") {
		alert(veuillez_entrer);
		document.form1.searchCriteria.focus();
		return false;
	}
	str = document.form1.searchCriteria.value
	document.form1.searchCriteria.value= str.replace(/^\s*|\s*$/g,"");
	document.form1.action="../pub/cms_nf_search_site.php";
	document.form1.submit();
}




function readItems(name){
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0) { 
    offset = document.cookie.indexOf(search);
    if (offset != -1) { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}

function writeItems(name, value, hours){
  var expire = "";
  if(hours != null) {
    expire = new Date((new Date()).getTime() + hours * 3600000);
    expire = "; expires=" + expire.toGMTString();
  }
  document.cookie = name + "=" + escape(value) + expire;
}

function leftTrim(sString){
	while (sString.substring(0,1) == ' '){
		sString = sString.substring(1, sString.length);
	}
	return sString;
}

function rightTrim(sString){
	while (sString.substring(sString.length-1, sString.length) == ' '){
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function trimAll(sString){
	while (sString.substring(0,1) == ' '){
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' '){
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function print_page() {
	window.print();  
}

var tipTimer;

function locateObject(n, d) { //v3.0
  var p,i,x;  
	if (!d) d=document; 
	if ((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
	}
  if (!(x=d[n])&&d.all) x=d.all[n]; 
	for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) 
		x=locateObject(n,d.layers[i].document); 
	return x;
}

function hideTooltip(object) {
	if (document.all) {
		locateObject(object).style.visibility="hidden"
		locateObject(object).style.left = 1;
		locateObject(object).style.top = 1;
		return false
	} else if (document.layers) {
		locateObject(object).visibility="hide"
		locateObject(object).left = 1;
		locateObject(object).top = 1;
		return false
	} else return true
}

function showTooltip(object,e, tipContent, backcolor, bordercolor, textcolor, displaytime){
	window.clearTimeout(tipTimer)	
	if (document.all) {
		locateObject(object).style.top=document.body.scrollTop+event.clientY+20			
		locateObject(object).innerHTML='<table style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 11px; border: '+bordercolor+'; border-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; background-color: '+backcolor+'" width="10" border="0" cellspacing="1" cellpadding="1"><tr><td nowrap><font style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 11px; color: '+textcolor+'">'+unescape(tipContent)+'</font></td></tr></table> '
		if ((e.x + locateObject(object).clientWidth) > (document.body.clientWidth + document.body.scrollLeft)){	
			locateObject(object).style.left = (document.body.clientWidth + document.body.scrollLeft) - locateObject(object).clientWidth-10;
		} else {
			locateObject(object).style.left=document.body.scrollLeft+event.clientX
		}
		locateObject(object).style.visibility="visible"
		tipTimer=window.setTimeout("hideTooltip('"+object+"')", displaytime);
		return true;
	} else if (document.layers) {
		locateObject(object).document.write('<table width="10" border="0" cellspacing="1" cellpadding="1"><tr bgcolor="'+bordercolor+'"><td><table width="10" border="0" cellspacing="0" cellpadding="2"><tr bgcolor="'+backcolor+'"><td nowrap><font style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 11px; color: '+textcolor+'">'+unescape(tipContent)+'</font></td></tr></table></td></tr></table>')
		locateObject(object).document.close()
		locateObject(object).top=e.y+20
		if ((e.x + locateObject(object).clip.width) > (window.pageXOffset + window.innerWidth))	{
			locateObject(object).left = window.innerWidth - locateObject(object).clip.width-10;
		} else {
			locateObject(object).left=e.x;
		}
		locateObject(object).visibility="show"
		tipTimer=window.setTimeout("hideTooltip('"+object+"')", displaytime);
		return true;
	} else {
		return true;
	}
}

