var sourisX =0;
var sourisY =0;
function coordSouris(event)
	{
	sourisX=event.x || event.clientX;
	sourisY=event.y || event.clientY;
	window.status = "( x = " + sourisX + " ; y = " + sourisY + ")";
	}
function initEvAnim()
	{
	var doc = document.getElementById('ecran1');
	if (doc.addEventListener) 
		{
		doc.addEventListener("mousemove", coordSouris, false);
		} 
	else if (doc.attachEvent)
		{
		doc.attachEvent("onmousemove", coordSouris);
		}
	}
function anim(film,largeur,hauteur,wmode,bgcolor,qualite,id,align)
{
document.writeln('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="' + largeur + '" height="' + hauteur + '" id="' + id + '" align="' + align + '"> ');
document.writeln('<param name="allowScriptAccess" value="sameDomain" />');
document.writeln('<param name="movie" value="' + film + '" /> ');
document.writeln('<param name="quality" value="' + qualite + '" />');
document.writeln('<param name="wmode" value="' + wmode + '" />');
document.writeln('<param name="bgcolor" value="' + bgcolor + '" />');
document.writeln('<embed src="' + film + '" quality="' + qualite + '" wmode="' + wmode + '" bgcolor="' + bgcolor + '" width="' + largeur + '" height="' + hauteur + '" name="' + id + '" align="' + align + '" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
document.writeln('<noembed>');
document.writeln('conception de site internet rhône alpes ');
document.writeln('</noembed>');
document.writeln('</object>');
}
/* ---------------------------------------------- animation panoramique -------------------------------------------------------*/
tabecran=new Array();	//pour connaitre les pellicules affectées à un écran
tabfilm=new Array();
controledefile=new Array();
vitessefilm=new Array();
vitesseold=new Array();

function diaporama()				// défilement horizontale
{
/*1er argument = id ecran 2è argument = id container = pellicule image, 3è argument vitesse initiale
plusieurs pellicules possibles par écran
arret:vitesse=0
*/
args=diaporama.arguments; 
tabecran[args[1]]=args[0];
largeurcadre=document.getElementById(args[0]).offsetWidth;
largeurpellicule=document.getElementById(args[1]).offsetWidth;
limitegauche=largeurcadre-largeurpellicule;

if (controledefile[args[0]])
	{
	vitessefilm[args[1]]=calculvitesse(tabecran[args[1]]);
	}
else
	{
	if(isNaN(vitessefilm[args[1]]))
		{
		vitessefilm[args[1]]=args[2];
		}
	}
if (limitegauche<0)	//pellicule plus grande que l'écran
	{
	coordx=document.getElementById(args[1]).style.left;
	coordx=parseInt(coordx.replace(/px/g,''));
	coordx += parseInt(vitessefilm[args[1]]);
	document.getElementById(args[1]).style.left = coordx + 'px';
	}
else
	{
	document.getElementById(args[1]).style.left = '0px';
	coordx=0;
	vitessefilm[args[1]]='0';
	}


if(parseInt(vitessefilm[args[1]])<0)
	{
	if(coordx <= limitegauche)
		{
		vitessefilm[args[1]]=vitessefilm[args[1]].replace(/-/g,"");
		document.getElementById(args[1]).style.left = limitegauche + 'px';
		if (controledefile[args[0]])
			{
			vitessefilm[args[1]]='0';
			}
		}
	}
else
	{
	if(coordx >= 0)
		{
		vitessefilm[args[1]]="-" + vitessefilm[args[1]].replace(/-/g,"");
		document.getElementById(args[1]).style.left = '0px';
		if (controledefile[args[0]])
			{
			vitessefilm[args[1]]='0';
			}
		}
	}
tabfilm[args[1]]="diaporama(\'"+ args[0] + "\',\'" + args[1] + "\',\'"+ vitessefilm[args[1]] + "\')";
setTimeout(tabfilm[args[1]],50);
if(parseInt(vitessefilm[args[1]]))
	{
	vitesseold[args[1]]=vitessefilm[args[1]];
	}
}

function lecturediaporama(ecran,pellicule,vitesse)	//lancer une lecture diaporama
{
if(isNaN(vitessefilm[pellicule]))
	{
	diaporama(ecran,pellicule,vitesse);
	}
else
	{
	if(vitessefilm[pellicule]=='0' && vitesseold[pellicule])
		{
		vitessefilm[pellicule]=vitesseold[pellicule];
		}
	}
for(scrute in tabfilm)						// on cache les autres pellicules sur cet écran
	{
	if(tabecran[scrute]==ecran && scrute != pellicule)
		{
		document.getElementById(scrute).style.visibility='hidden';
		}
	}
document.getElementById(pellicule).style.visibility='visible';
}

function arret(ecran)				//arreter un ecran
{
for(scrute in tabfilm)
	{
	if(tabecran[scrute]==ecran)
		{
		document.getElementById(scrute).style.visibility='hidden';
		}
	}
}

function pause(pellicule)
{
vitessefilm[pellicule]='0';
}

function calculvitesse(ecran)
{
ht=document.getElementById(ecran).offsetHeight / 2;
cy=document.getElementById(ecran).offsetTop + parseInt(document.getElementById('cadre').style.top.replace(/px/g,''));
cy0=ht + cy;
//vitesseY=sourisY - cy0;
vitesseY=cy0 - sourisY;
if(Math.abs(vitesseY) < Math.abs(ht/2))
	{
	vitesseY=0;
	}
vitesseY /=10;
vitesseY=Math.floor(vitesseY);
if (vitesseY > ht)
	{
	vitesseY=ht;
	}

lrg=document.getElementById(ecran).offsetWidth / 2;
cx=document.getElementById(ecran).offsetLeft + parseInt(document.getElementById('cadre').style.left.replace(/px/g,''));;
cx0=lrg + cx;
//vitesseX=cx0 - sourisX;
vitesseX=sourisX - cx0;
if(Math.abs(vitesseX) < Math.abs(lrg/2))
	{
	vitesseX=0;
	}
vitesseX /=10;
vitesseX=Math.floor(vitesseX);
if (vitesseX > lrg)
	{
	vitesseX=lrg;
	}
if(calculvitesse.arguments[1])
	{
	vitesse= vitesseY;
	}
else
	{
	vitesse= vitesseX;
	}
ch=vitesse + 'chaine';		// transfo en chaine de caractères
ch=ch.replace(/ch/g,'');
return ch;
}
//------------------------------------------------ défilement vertical -----------------------------------------------
function defilevert()
{
/*1er argument = id ecran(cadre) 2è argument = id container = pellicule image, 3è argument vitesse initiale
plusieurs pellicules possibles par écran
arret:vitesse=0
*/
args=defilevert.arguments; 
tabecran[args[1]]=args[0];
hauteurcadre=document.getElementById(args[0]).offsetHeight;
hauteurpellicule=document.getElementById(args[1]).offsetHeight;
limitehaute=hauteurcadre-hauteurpellicule;

if (controledefile[args[0]])
	{
	vitessefilm[args[1]]=calculvitesse(tabecran[args[1]],1);
	}
else
	{
	if(isNaN(vitessefilm[args[1]]))
		{
		vitessefilm[args[1]]=args[2];
		}
	}
if (limitehaute<0)	//pellicule plus grande que l'écran
	{
	coordy=document.getElementById(args[1]).style.top;
	coordy=parseInt(coordy.replace(/px/g,''));
	coordy += parseInt(vitessefilm[args[1]]);
	document.getElementById(args[1]).style.top = coordy + 'px';
	}
else
	{
	document.getElementById(args[1]).style.top = '0px';
	coordy=0;
	vitessefilm[args[1]]='0';
	}

if(parseInt(vitessefilm[args[1]])<0)		// en train de monter
	{
	if(coordy <= limitehaute)		// et arrive en limite haute inversion de sens
		{
		vitessefilm[args[1]]=vitessefilm[args[1]].replace(/-/g,"");
		document.getElementById(args[1]).style.top = limitehaute + 'px';
		if (controledefile[args[0]])
			{
			vitessefilm[args[1]]='0';
			}
		}
	}
else
	{
	if(coordy >= 0)
		{
		vitessefilm[args[1]]="-" + vitessefilm[args[1]].replace(/-/g,"");
		document.getElementById(args[1]).style.top = '0px';
		if (controledefile[args[0]])
			{
			vitessefilm[args[1]]='0';
			}
		}
	}
tabfilm[args[1]]="defilevert(\'" + args[0] + "\',\'" + args[1] + "\',\'" + vitessefilm[args[1]] + "\')";
setTimeout(tabfilm[args[1]],50);
if(parseInt(vitessefilm[args[1]]))
	{
	vitesseold[args[1]]=vitessefilm[args[1]];
	}
}
function lecturedefilevert(ecran,pellicule,vitesse)	//lancer une lecture diaporama
{
if(isNaN(vitessefilm[pellicule]))
	{
	defilevert(ecran,pellicule,vitesse);
	}
else
	{
	if(vitessefilm[pellicule]=='0' && vitesseold[pellicule])
		{
		vitessefilm[pellicule]=vitesseold[pellicule];
		}
	}
for(scrute in tabfilm)						// on cache les autres pellicules sur cet écran
	{
	if(tabecran[scrute]==ecran && scrute != pellicule)
		{
		document.getElementById(scrute).style.visibility='hidden';
		}
	}
document.getElementById(pellicule).style.visibility='visible';
}

function nouvid(tId)	//************* recherche id unique
	{
	var ti=1;
	var nid=tId+ti;
	while(document.getElementById(nid))
		{
		ti++;
		nid=tId+ti;
		}
	return nid;
	}

function regleattribut(balise,nomattribut,valeurattribut)	//************* ajout balise suivie de nom attribut, valeur attribut
	{
	balise.setAttribute(nomattribut,valeurattribut);
	}
function ajoutbalise(conteneur,balise,idbalise)	//************* ajout balise suivie de nom attribut, valeur attribut
	{
	args=ajoutbalise.arguments;
	nouvelid=nouvid(idbalise);
	var oBal=document.createElement(balise);
	oBal.setAttribute('id',nouvelid);
	for(i=3;i<args.length;i+=2)
		{
		regleattribut(oBal,args[i],args[i+1]);
		}
	var oCont=document.getElementById(conteneur);
	oCont.appendChild(oBal);
	return nouvelid;
	}
/* -------------------------------- balise object -------------------------------------
http://www.la-grange.net/w3c/html4.01/struct/objects.html#edef-OBJECT

classid : Cet attribut peut être utilisé pour spécifier la localisation de l'implémentation
d'un objet via un URI. On peut l'utiliser en même temps que, ou en alternative à, l'attribut
data, selon le type de l'objet impliqué.

codebase : Cet attribut spécifie le chemin de base utilisé pour résoudre les URI relatifs spécifiés
par les attributs classid, data et archive. Quand il est absent, sa valeur par défaut
correspond à l'URI de base du document courant

codetype :Cet attribut spécifie le type de contenu des données attendues lors du chargement
de l'objet spécifié par l'attribut classid. Cet attribut est optionnel, mais recommandé quand
l'attribut classid est spécifié parce qu'il permet à l'agent utilisateur d'éviter le chargement
des informations dont les types ne sont pas reconnus. Quand il est absent, sa valeur par défaut
est celle de l'attribut type. 

data : Cet attribut peut être utilisé pour spécifier la localisation des données de l'objet, par
exemple les données d'image pour les objects définissant des images, ou plus généralement,
la forme sérialisée d'un objet qui peut être utilisée pour recréer cet objet. Quand il est
donné comme URI relatif, celui-ci devrait être interprété relativement à l'attribut codebase.
 
type : Cet attribut spécifie le type de contenu des données spécifiées par l'attribut data.
Cet attribut est optionnel, mais recommandé quand l'attribut data est spécifié parce qu'il
permet à l'agent utilisateur d'éviter le chargement des informations dont les types de contenu
ne sont pas reconnus. Si la valeur de cet attribut diffère de l'en-tête HTTP « Content-Type »
retourné par le serveur quand l'objet est ramené, alors c'est l'en-tête HTTP « Content-Type »
qui a préséance.


-------------------------------------------------------------------------------------*/
function medias(fichier,largeur,hauteur,loop,visibilite,demauto,id,bgcolor,align)
	{
	exts=fichier.split('.');
	switch (exts[1])
		{
		case 'wmv' :  type="video/x-ms-wmv";break;
		case 'mov' :  type="video/quicktime";break;
		case 'avi' :  type="video/x-msvideo";break;
		case 'mpg' :  type="application/x-mplayer2";break;
		default : type="audio/mp3";
		}
	var contenant=ajoutbalise('zonemedia','object','objmedia', 'type', type, 'title', fichier, 'standby', 'chargement en cours ...');
	ajoutbalise(contenant,'param','paramedia', 'name', 'filename' , 'value', fichier);
	ajoutbalise(contenant,'param','paramedia', 'name', 'autostart' , 'value', demauto);
	ajoutbalise(contenant,'param','paramedia', 'name', 'autoplay' , 'value', demauto);
	ajoutbalise(contenant,'param','paramedia', 'name', 'AnimationatStart' , 'value', '1');
	ajoutbalise(contenant,'param','paramedia', 'name', 'showdisplay' , 'value', visibilite);
	ajoutbalise(contenant,'param','paramedia', 'name', 'TransparentAtStart' , 'value', '0');
	ajoutbalise(contenant,'param','paramedia', 'name', 'ShowControls' , 'value', '1');
	ajoutbalise(contenant,'param','paramedia', 'name', 'ShowStatusBar' , 'value', '1');
	ajoutbalise(contenant,'param','paramedia', 'name', 'ClickToPlay' , 'value', '1');
	ajoutbalise(contenant,'param','paramedia', 'name', 'bgcolor', 'value', bgcolor);
	ajoutbalise(contenant,'param','paramedia', 'name', 'volume' , 'value', '100%');
	ajoutbalise(contenant,'param','paramedia', 'name', 'InvokeURLs' , 'value', '0');
	ajoutbalise(contenant,'param','paramedia', 'name', 'loop' , 'value', loop);
	regleattribut(document.getElementById(contenant), 'data', fichier);
	if(largeur && hauteur)
		{
		document.getElementById(contenant).style.width=largeur;
		document.getElementById(contenant).style.height=hauteur;
		}
	}

function mediasbugie(fichier,largeur,hauteur,loop,visibilite,demauto,id,bgcolor,align)
	{
	exts=fichier.split('.');
	switch (exts[1])
		{
		case 'wmv' :  type="video/x-ms-wmv";break;
		case 'mov' :  type="video/quicktime";break;
		case 'avi' :  type="video/x-msvideo";break;
		case 'mpg' :  type="application/x-mplayer2";break;
		default : type="audio/mp3";
		}
	contenant=nouvid('objmedia');
	var oObject=document.createElement("object");

	var paramFilename=document.createElement("param");
	var paramAutostart=document.createElement("param");
	var paramAutoplay=document.createElement("param");
	var paramShowdisplay=document.createElement("param");
	var paramTransparentAtStart=document.createElement("param");
	var paramShowControls=document.createElement("param");
	var paramShowStatusBar=document.createElement("param");
	var paramClickToPlay=document.createElement("param");
	var paramBgcolor=document.createElement("param");
	var paramVolume=document.createElement("param");
	var paramInvokeURLs=document.createElement("param");
	var paramLoop=document.createElement("param");

	paramFilename.setAttribute("name","filename");
	paramFilename.setAttribute("value",fichier);
	paramAutostart.setAttribute("name","autostart");
	paramAutostart.setAttribute("value",demauto);
	paramAutoplay.setAttribute("name","autoplay");
	paramAutoplay.setAttribute("value",demauto);
	paramShowdisplay.setAttribute("name","showdisplay");
	paramShowdisplay.setAttribute("value",visibilite);
	paramTransparentAtStart.setAttribute("name","TransparentAtStart");
	paramTransparentAtStart.setAttribute("value","0");
	paramShowControls.setAttribute("name","ShowControls");
	paramShowControls.setAttribute("value","1");
	paramShowStatusBar.setAttribute("name","ShowStatusBar");
	paramShowStatusBar.setAttribute("value","1");
	paramClickToPlay.setAttribute("name","ClickToPlay");
	paramClickToPlay.setAttribute("value","1");
	paramBgcolor.setAttribute("name","bgcolor");
	paramBgcolor.setAttribute("value",bgcolor);
	paramVolume.setAttribute("name","volume");
	paramVolume.setAttribute("value","100%");
	paramInvokeURLs.setAttribute("name","InvokeURLs");
	paramInvokeURLs.setAttribute("value","0");
	paramLoop.setAttribute("name","loop");
	paramLoop.setAttribute("value",loop);
	
	oObject.appendChild(paramFilename);
	oObject.appendChild(paramAutostart);
	oObject.appendChild(paramAutoplay);
	oObject.appendChild(paramShowdisplay);
	oObject.appendChild(paramTransparentAtStart);
	oObject.appendChild(paramShowControls);
	oObject.appendChild(paramShowStatusBar);
	oObject.appendChild(paramClickToPlay);
	oObject.appendChild(paramBgcolor);
	oObject.appendChild(paramVolume);
	oObject.appendChild(paramInvokeURLs);
	oObject.appendChild(paramLoop);

	document.getElementById("zonemedia").appendChild(oObject);
	oObject.setAttribute("id",contenant);
	oObject.setAttribute("type",type);
	oObject.setAttribute("data",fichier);
	oObject.setAttribute("title",fichier);
	oObject.setAttribute("standby","Chargement en cours...");
	if(largeur && hauteur)
		{
		oObject.setAttribute("width",largeur);
		oObject.setAttribute("height",hauteur);
		document.getElementById(contenant).style.width=largeur + "px";
		document.getElementById(contenant).style.height=hauteur+ "px";
		}
	}