// Detection du navigateur
nc4 = (document.layers)? true:false;
ie4 = (document.all)? true:false;
nc6 = (typeof(window.controllers) != 'undefined' && typeof(window.locationbar) != 'undefined')? true:false;

// Distance de deplacement a chaque mouvement
var decallage = 3;

// Delai entre chaque mouvement (en millisecondes)
var vitesse = 50;

// Position du defilement :
var posX = 250;
var posY = 50;

// Dimensions du defilement :
var zoneX = 200;
var zoneY = 100;

// Variable qui recevra la continuite du mouvement
var mouvement;

// Variable qui recevra la position la plus haute du calque
var hauteur = 0;

// Fonction generant le mouvement
function defile(sens) {

// Instructions pour Netscape 4.x
	if (nc4) {

// Variable pour manipuler le calque defilant
		calque = 'document.conteneur.document.defilant';

// Calcul de la position la plus haute
		hauteur = -eval(calque + '.document').height + zoneY;
		}

// Instructions equivalentes pour Internet Explorer et Netscape 6 et superieur
	if (ie4) {
		calque = 'defilant.style';
		hauteur = -defilant.offsetHeight + zoneY;
		}
	if (nc6) {
		calque = 'document.getElementById("defilant").style';
		hauteur = -document.getElementById("defilant").offsetHeight + zoneY;
		}

// Si on veut aller vers le haut du contenu
	if ( sens == '+' ) {

// Tant qu'on est pas arrive en haut
		if ( parseInt(eval(calque).top) < 0 ) {

// Deplacement du calque selon le 'pas' specifie
			eval(calque).top = eval(parseInt(eval(calque).top) + sens + decallage);

// Relance selon la vitesse prevue pour creer le defilement
			mouvement = setTimeout("defile('" + sens + "')",vitesse);
			}

// Si on est arrive en haut
		else {

// Arret de la boucle de defilement
			clearTimeout(mouvement);

// Repositionnement precis du calque
			eval(calque).top = 0;
			}
		}

// Instructions equivalentes pour aller vers le bas
	if ( sens == '-' ) {
		if ( parseInt(eval(calque).top) > hauteur ) {
			eval(calque).top = eval(parseInt(eval(calque).top) + sens + decallage);
			mouvement = setTimeout("defile('" + sens + "')",vitesse);
			}
		else {
			clearTimeout(mouvement);
			eval(calque).top = hauteur;
			}
		}

// Si on veut aller tout en haut du contenu
	if ( sens == '++' ) {

// Arret de tout defilement en cours
		clearTimeout(mouvement);

// Positionnement du calque tout en haut
		eval(calque).top = 0;
		}

// Instructions equivalentes pour aller tout en bas
	if ( sens == '--' ) {
		clearTimeout(mouvement);
		eval(calque).top = hauteur;
		}
	}





function my_confirm(text_, url_) {
	rep=confirm(text_);
	if(rep) document.location=url_;
}

/*
	fonction qui permet de gérer l'affichage d'un bloc et sa fermeture
*/
function show_hide(obj_) {
	obj = document.getElementById(obj_);
	
	if(obj.style.display == '') {
		obj.style.display = 'none';
	}
	else {
		obj.style.display = '';
	}
}


/*
	fonction qui permet de fait comme ci-dessus, mais qui ferme l'ancien bloc
*/
var old_open=null;
function show_hide2(obj_) {
	obj = document.getElementById(obj_);
	
	//on ferme l'ancien bloc
	if(old_open) {
		old_open.style.display='none';
	}

	//on sauvegarde l'objet courant et on affiche
	obj.style.display = '';
	old_open=obj;
}
