/*--------------------------------------------------------------------------
	           BARRE DE PROGRESSION DE LECTURE
---------------------------------------------------------------------------*/

/*
Ce script sert pour afficher Un indicateur de position de lecture
sous la forme d’une barre de progression, 
en haut ou bas des différents type de publications: articles,pages, CPT.

On transmet au script une variable PHP via wp_localize_script()
l' objet javascript récupéré est displayReadingProgressBarOnMobile
un tableau a deux dimensions qui comprend le paramètre booléen: disable
on accède a la valeur du paramètre disable comme ceci:
displayReadingProgressBarOnMobile[0].disable

displayReadingProgressBarOnMobile[0].disable sert de condition
pour activer ou inhiber la barre de progression de 
lecture sur mobile.

wp_localize_script() insére le HTML suivant dans la page:

<script id="eccp_reading_progress_bar-js-extra">
 var displayReadingProgressBarOnMobile = [{"disable":false}];
</script>

*/



jQuery(document).ready(function ($) {
	
	// pour debug
	//alert( 'ma variable PHP Désactiver la barre de progression: ' + displayReadingProgressBarOnMobile[0].disable );
	
    function updateProgressBar() {
		
        /* On récupère la position de défilement vertical 
		   de la fenêtre du navigateur
		   $(window)objet jQuery représentant la fenêtre du navigateur */					  
		var scrollPosition = $(window).scrollTop();
		
		/* la hauteur totale de la page */
		var documentHeight = $(document).height();
		
		/* la partie de la page visible sur l'écran en ce moment  */
		var windowHeight = $(window).height();
		
		/* pourcentage actuel de progression du défilement vertical 
		   documentHeight - windowHeight: représente la distance totale qui peut être 
		   parcourue avant d'atteindre la fin de la page. */
		var scrollPercentage = (scrollPosition / (documentHeight - windowHeight)) * 100;
	   
	   $('.eccp-reading-progress-bar').css('width', scrollPercentage + '%');
        
	}


    /* requête média query */
	const mediaQueryList = window.matchMedia('(max-width: 480px)');

	/* si on est sur mobile et qu'on a activé pour les mobiles 
	   la barre de progression de lecture */
	if(mediaQueryList.matches && !displayReadingProgressBarOnMobile[0].disable) {
		
	  /* pour debug 
	  console.log('Écran <= 480px');*/
	  
	   /* gestion défilement sur mobile */
	  $(window).on('touchmove', updateProgressBar);
	  
	} /* sinon si on est sur PC */
	else if(!mediaQueryList.matches) {
		
	  /* pour debug 
	  console.log('Écran > 480px');*/
	  
	  /* gestion défilement sur PC */
	  $(window).scroll(updateProgressBar);
	  
	}
	
	
});