Galerie Photos Albulle

Fermé
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - 27 juin 2015 à 23:23
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 14 juil. 2015 à 11:04
Bonjour,
Je voudrais savoir si vous pouvez me renseigner sur la Galerie Photos Albulle.
Je suis tombé dessus par hasard et vu la démonstration sur le site, j'ai essayé donc de l'intégré à mon site. Il m'a l'air vraiment super, simple et intuitif.
J'aurai juste une chose que je n'arrive pas à mettre en place, en fait lorsque je clique sur une vignette, cela m'affiche directement l'image en taille réelle alors que ça devrait ouvrir un popup Javascript.
Merci à ceux qui pourront m'aider.
Cordialement



A voir également:

6 réponses

papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
10 juil. 2015 à 23:26
Bonjour
Personne connait Albulle pourtant c'est une galerie super génial facile à intégrer à son site.
Malheureusement j'ai un soucis comme je l'ai expliqué dans mon premier post, j'essaie de changer au niveau des liens mais sans résultat.
Si par bonheur une personne peux m'aider.
Merci
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
11 juil. 2015 à 00:22
Bonjour,

Sans voir ce que tu as codé .. impossible de t'aider !!!!!


A la limite... commence déjà par nous dire quelle version de JQUERY tu as utilisé
puis à nous montrer le code utilisé pour charger les scripts JS de cette galerie image.

Ensuite.... installes (si ce n'est pas déjà fait...) le plugin FireBug pour Firefox ..... lances le ..... ouvre la "console" de firebug.... ouvre ta page web ... cliques sur une image ..... et .. regarde s'il ne t'indiquerait pas des erreurs javascript !


et enfin... si malgré cela tu ne trouves toujours pas.... pourquoi ne pas poser ta question dans le forum de l'éditeur de cette librairie ???
http://forums.jebulle.net/viewforum.php?id=14

0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
11 juil. 2015 à 00:33
Bonjour
En fait ce forum n'est plus utilisé depuis plusieurs année, l'éditeur m'en a informé par mail car je voulais créé un compte, donc je lui est soulevé mon problème mais je ne suis pas sur d'une réponse éventuelle.
En fait je n'ai rien codé c'est une librairie prête à l'emploi, mais qui est super intérressante et facile d'utilisation.
Merci
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
11 juil. 2015 à 00:36

En fait je n'ai rien codé c'est une librairie prête à l'emploi, mais qui est super intérressante et facile d'utilisation.

Certes ...... mais tu as bien mis son code sur ton site (ou tes pages web) ????
Tu as donc du code......!
MONTRES LE NOUS !!!!!

Et.....de toutes façons.. ma suggestion d'utiliser firebug est toujours d'actualité....
cela nous dira si il y a des erreurs de script ou non !
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
14 juil. 2015 à 00:40
Bonjour
Je t'envoie le lien pour télécharger le fichier correspondant à mon problème.
https://www.cjoint.com/c/EGnwI55IG0l

En fait lorsque je clique sur une miniature ça m'ouvre l'image en taille réelle, alors que ça devrais ouvrir une fenêtre popup en javascript, comme sur le site en question, si tu peux jeter un coup d'oeil dans démonstration.
https://albulle.jebulle.net/

J'ai essayé mille et une fois de faire des modifs mais en vain.
Je te remercie si toutes fois tu as le temps de regarder.
Merci
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
14 juil. 2015 à 00:46
Pourquoi ne postes tu pas ton code directement sur le forum ??
ça serait plus simple.......
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
14 juil. 2015 à 00:50
Bonjour
Désolé c'est parce que le fichier a beaucoup de ligne
/**
 * Fonction qui permet d'inclure un fichier.
 *
 * @param string	$sFichier	Fichier à inclure.
 */
function inclure( $sFichier ) {
	if( !@include(JB_AL_ROOT.$sFichier) )
		erreur('Impossible de trouver le fichier <em>'.$sFichier.'</em>.
				Ce fichier est nécessaire pour le fonctionnement d\'Albulle.');
}

// Vérification que la racine est bien définie
if( !defined('JB_AL_ROOT') )
	erreur( 'La constante JB_AL_ROOT doit être définie et pointer sur une installation valide d\'Albulle.' );

define( '_JB_INCLUDE_AUTH', 1 );


// ====================
// INCLUSION DES FICHIERS NECESSAIRES
//
inclure( 'config.php' );
inclure( 'core/includes/jblib/jblib.php' );
inclure( 'core/includes/fonctions.php' );
inclure( 'core/includes/classes/url.class.php' );
inclure( 'core/includes/classes/util.class.php' );

if(JB_AL_PANIER_ACTIF === true)
	inclure( 'core/includes/classes/panierdefichiers.class.php' );

// Vérifier si la galerie est ouverte
if( JB_AL_FERMER === true || file_exists(JB_AL_ROOT.'lock') )
	exit( '
		<p style="background-color: azure; border: 3px solid steelblue; margin: 40px; padding: 10px; text-align: center;">
			'.JB_AL_MSG_FERMETURE.'
		</p>'
	);


// ====================
// INITIALISATIONS
//
global $_JB_AL_VARS, $aActions, $oUrl;

define('JB_AL_DATA',		JB_AL_ROOT . JB_AL_DOSSIER_DATA);

$_JB_AL_VARS	= array();	// Tableau qui contiendra toutes les variables nécessaires et disponibles pour l'affichage
$_PHOTOS		= array();	// Tableau qui contiendra les photos
$_JB_AL_GET		= array();	// Tableau qui contiendra les paramètres reçus dans l'URL
$_JB_AL_POST	= array();	// Tableau qui contiendra les paramètres reçus par les formulaires

$_JB_AL_VARS['s_version']					= '1.2.1';

$_JB_AL_VARS['s_acces_theme']				= JB_AL_ROOT . JB_AL_DOSSIER_THEMES . JB_AL_DOSSIER_THEME_ACTIF;
$_JB_AL_VARS['s_arborescence']				= $_JB_AL_VARS['s_menu_panier'] = '';
$_JB_AL_VARS['s_lien_panier_tout_ajouter']	= $_JB_AL_VARS['s_lien_panier_tout_supprimer'] = '';
$_JB_AL_VARS['s_navigation']				= $_JB_AL_VARS['s_pagination'] = '';
$_JB_AL_VARS['s_classe_css_vignette']		= '';
$_JB_AL_VARS['s_texte_mode_affichage']		= $_JB_AL_VARS['s_lien_mode_affichage'] = '';
$_JB_AL_VARS['b_defilement_auto']			= false;

$aActions		= array( 'voir' => '' );	// Tableau des actions disponibles
$aDossiersUrl	= array();	// Tableau qui contiendra la liste des dossiers du répertoire courant passé par l'url
$aListePhotos	= array();	// Tableau qui contiendra la liste des photos pour la page courante

$iImgAAfficher	= 0;

$oUrl = new Url(JB_AL_CONSERVER_URL_HOTE, array('rep', 'page', 'act', 'img', 'diapo', 'voir', 'diaporama', 'galerie'));


// ====================
// VERIFICATIONS
//
verifications();

// ====================
// LECTURE DES PARAMETRES PASSES DANS L'URL
//
$_JB_AL_GET['s_rep_courant']	= isset( $_GET['rep']		)	? stripslashes(rawurldecode( $_GET['rep'] ))	: '';
$_JB_AL_GET['i_page_courante']	= isset( $_GET['page']		)	? (int) $_GET['page']							: 1;
$_JB_AL_GET['s_action']			= isset( $_GET['act']		)	? $_GET['act']									: '';
$_JB_AL_GET['s_image']			= isset( $_GET['img']		)	? stripslashes(rawurldecode( $_GET['img'] ))	: '';
$_JB_AL_GET['s_diapo_courante']	= isset( $_GET['diapo'] 	)	? stripslashes(rawurldecode( $_GET['diapo'] ))	: '';
$_JB_AL_GET['b_voir_panier']	= isset( $_GET['voir']		);

// ====================
// Gestion du mode diaporama
//
// Initialisation
if( session_id() === '' )	session_start();
if( !isset($_SESSION['JB_AL_MODE_DIAPORAMA']) ) $_SESSION['JB_AL_MODE_DIAPORAMA'] = JB_AL_MODE_DIAPO_DEFAUT;

// Si mode diaporama demandé
if( isset($_GET['diaporama']) )		$_SESSION['JB_AL_MODE_DIAPORAMA'] = true;
if( isset($_GET['galerie']) )		$_SESSION['JB_AL_MODE_DIAPORAMA'] = false;

// Sauvegarde du mode d'affichage dans le tableau des variables
$_JB_AL_VARS['b_mode_diaporama'] = $_SESSION['JB_AL_MODE_DIAPORAMA'];


// ====================
// GESTION DU PANIER
//
if(JB_AL_PANIER_ACTIF === true) {

	$oPanier = new PanierDeFichiers( JB_AL_DATA, JB_AL_PANIER_CAPACITE_MAX, JB_AL_PANIER_POIDS_MAX );
	
	$sCheminDansPanier = cheminDansPanier($_JB_AL_GET['s_image']);
	
	// Lancement des actions.
	// L'action de télechargement est désormais située dans le fichier download.php (ou le nom que nous lui avez donné).
	switch ( $_JB_AL_GET['s_action'] ) {
	
		case 'ajouter' :	$oPanier->ajouter( $sCheminDansPanier ); break;
		case 'supprimer' :
				$oPanier->supprimer( $sCheminDansPanier );
	
				if( $_JB_AL_GET['b_voir_panier'] &&										// Si on visionne le panier ...
					$_JB_AL_VARS['b_mode_diaporama'] && 								// ... en mode diaporama ...
					basename($_JB_AL_GET['s_image']) === $_JB_AL_GET['s_diapo_courante']		// ... et que l'image supprimée du panier est celle visionnée
				)
					// alors on efface la diapo courante ... pour ne pas réafficher l'image supprimée ;-)
					$_JB_AL_GET['s_diapo_courante'] = '';
	
			break;
		case 'vider':		$oPanier->viderPanier(); break;
	}
	
	// Gestion de l'exploration du panier :
	// si exploration du panier demandée et qu'il y a des fichiers dans le panier, on définit l'action pour l'url ; sinon
	// on désactive l'exporation du panier
	($_JB_AL_GET['b_voir_panier'] && $oPanier->compterFichiers() > 0) ? $aActions['voir'] = '&voir' : $_JB_AL_GET['b_voir_panier'] = false;
}


// ====================
// GESTION DU CHEMIN PASSE EN PARAMETRE
//

// Nettoyage du chemin (pour éviter les failles d'accès)
// On récupère la liste des dossiers de ce chemin pour pouvoir connaitre le niveau dans lequel on se trouve
if( !empty($_JB_AL_GET['s_rep_courant']) ) {

	$aDossiersUrl = Util::nettoyerCheminURL( $_JB_AL_GET['s_rep_courant'] );
	$_JB_AL_VARS['s_rep_courant_url'] = Util::preparerUrl($_JB_AL_GET['s_rep_courant']);

	// Vérification que le dossier passé dans l'url existe sinon on l'efface
	// ce qui a pour effet de revenir à la page d'accueil.
	if( !file_exists(JB_AL_DATA . JB_AL_DOSSIER_PHOTOS . $_JB_AL_GET['s_rep_courant']) ) {
	
		$_JB_AL_GET['s_rep_courant'] = '';
		$aDossiersUrl = array();
	}
}
else $_JB_AL_VARS['s_rep_courant_url'] = '';


// ====================
// CALCUL NIVEAU DANS L'ARBORESCENCE
//
$iNiveau = sizeof($aDossiersUrl);
if( $iNiveau === 0 ) $iNiveau = 1;


// ====================
// GESTION DE LA LISTE DES DOSSIERS DE PHOTOS
//
$aResultats = genererArborescence(
					JB_AL_DATA . JB_AL_DOSSIER_PHOTOS,					// Répertoire racine
					$_JB_AL_GET['s_rep_courant'], 						// Répertoire demandé
					$iNiveau, 											// Niveau de profondeur du répertoire demandé
					array(),						 					// Dossiers à ne pas afficher
					array( 'gif', 'jpe', 'jpeg', 'jpg', 'png' ),		// Fichier autorisés
					array( 'image/jpeg', 'image/pjpeg', 'image/gif', 'image/x-png', 'image/png'), 	// Types MIME autorisés
					JB_AL_AFFICHER_NB_PHOTOS, 							// Afficher le nombre de fichiers par dossier
					JB_AL_AFFICHER_NB_SI_VIDE,							// Afficher le nombre de fichiers même si dossier vide
					JB_AL_DEROULER_TOUT, 								// Dérouler tous les dossiers ou seulement celui demandé
					JB_AL_FILTRE_PREFIXES_ACTIF,						// Filtrage activé ou non (cf. explications dans includes/config.php)
					JB_AL_PREFIXES_SEPARATEUR							// Séparateur des filtres
				);

$_JB_AL_VARS['s_arborescence']			= $aResultats['arborescence_html'];
$_JB_AL_VARS['s_rappel_sous_dossiers']	= $aResultats['dossiers_rep_courant'];
$aListePhotos							= !$_JB_AL_GET['b_voir_panier'] ? $aResultats['fichiers_dossier_courant'] : $oPanier->obtenirPanier();


// ====================
// GESTION DE LA LISTE DES PHOTOS (si un répertoire est défini)
//
$iNbPhotos = sizeof( $aListePhotos );

if( ((!empty( $_JB_AL_GET['s_rep_courant'] ) &&
	is_dir( JB_AL_DATA . JB_AL_DOSSIER_PHOTOS . $_JB_AL_GET['s_rep_courant'] )) ||
	$_JB_AL_GET['b_voir_panier']) && $iNbPhotos > 0 ) {
	
	// Choix des dimensions des miniatures
	$iMinLargeur = $_JB_AL_VARS['b_mode_diaporama'] ? JB_AL_VIGNETTES_DP_LARGEUR : JB_AL_VIGNETTES_LARGEUR;
	$iMinHauteur = $_JB_AL_VARS['b_mode_diaporama'] ? JB_AL_VIGNETTES_DP_HAUTEUR : JB_AL_VIGNETTES_HAUTEUR;

	// calcul du nombre de pages
	$iNbPages = ceil( sizeof( $aListePhotos ) / abs(JB_AL_VIGNETTES_PAR_PAGE) );

	// génération de la pagination
	$_JB_AL_VARS['s_pagination'] = Util::paginer( $iNbPages, $_JB_AL_GET['i_page_courante'], $oUrl->construireUrl( 'rep='.$_JB_AL_VARS['s_rep_courant_url'].$aActions['voir'] ) );

	// CREATION DES VIGNETTES
	$_PHOTOS = array();

	// vérification qu'on ne dépasse pas la taille du tableau
	$iImgAAfficher = ( ( ($_JB_AL_GET['i_page_courante']-1) * JB_AL_VIGNETTES_PAR_PAGE ) >$iNbPhotos - JB_AL_VIGNETTES_PAR_PAGE ) ? $iNbPhotos - ( ($_JB_AL_GET['i_page_courante']-1) * JB_AL_VIGNETTES_PAR_PAGE ) : JB_AL_VIGNETTES_PAR_PAGE;

	//
	// Pour chaque image dans l'intervalle de la page
	//
	$iForStart	= ($_JB_AL_GET['i_page_courante'] - 1) * JB_AL_VIGNETTES_PAR_PAGE;
	$iForStop	= (($_JB_AL_GET['i_page_courante'] - 1) * JB_AL_VIGNETTES_PAR_PAGE) + $iImgAAfficher;
	
	for ( $i = $iForStart ; $i < $iForStop ; $i++ ) {
	
		// On utilise une variable car elle doit être modifiée en mode diaporama
		$sRepCourant = $_JB_AL_GET['s_rep_courant'];

		// Si on se trouve en mode exploration du panier, il faut définir $sRepCourant à chaque fois,
		// et écraser le chemin de l'image pour qu'il n'y ai que le nom de l'image.
		if($_JB_AL_GET['b_voir_panier']) {
		
			$sRepCourant = Util::sousChaineGauche($aListePhotos[$i], '/', 1);
			
			// Troncature du dossier préfixe (photos ou originales ou centre)
			foreach(array(JB_AL_DOSSIER_CENTRE, JB_AL_DOSSIER_PHOTOS, JB_AL_DOSSIER_ORIGINALES) as $sPrefixe)
				if( strpos($sRepCourant, $sPrefixe) !== false )
					$sRepCourant = Util::sousChaineDroite(
						$sRepCourant, '/',
						substr_count($sPrefixe, '/')
					);
			
			$aListePhotos[$i] = Util::sousChaineDroite(
				$aListePhotos[$i], '/',
				substr_count($aListePhotos[$i], '/')
			);
		}

		//
		// Definition chemin de la photo courante et de sa miniature
		//
		$aFichier 		= explode( '.', $aListePhotos[$i] );
		$sNomFichier 	= $aFichier[0];
		$sExtension		= $aFichier[1];

		$sCheminPhoto		= JB_AL_DATA . JB_AL_DOSSIER_PHOTOS . $sRepCourant .'/'. $aListePhotos[$i];
		$sCheminPhotoHQ		= JB_AL_DATA . JB_AL_DOSSIER_ORIGINALES . $sRepCourant .'/'. $aListePhotos[$i];
		$sCheminPhotoMd5	= md5($sCheminPhoto);
		$sCheminMiniature	= JB_AL_DATA . JB_AL_DOSSIER_MINIATURES . $sNomFichier .'_'. $iMinLargeur .'x'. $iMinHauteur .'_'. $sCheminPhotoMd5 .'.'. $sExtension;
		
		//
		// Lectures infos image courante
		//
		$bHauteQualite = file_exists($sCheminPhotoHQ);
		$sCheminLectureInfos = ($bHauteQualite ? $sCheminPhotoHQ : $sCheminPhoto);
		$sTypeMime	= Util::imageTypeMime($sCheminLectureInfos);
		$aImgInfos	= getimagesize( $sCheminLectureInfos );
		$iPoids		= filesize( $sCheminLectureInfos );
		$sPoids		= intval( $iPoids / 1024 ) < 1 ? $iPoids.' Octets' : intval( $iPoids / 1024 ).' Ko';
		if( $bHauteQualite ) $sPoids .= ' (*)';
		$sLegende	= Util::lireLegendeImage($sCheminLectureInfos);

		//
		// Création miniature
		//

		// Si l'image ne dépasse pas la limite de 5,3 millions de pixels, on peut lancer le traitement
		$aImgPublieeInfos = getimagesize($sCheminPhoto);
		if( ($aImgPublieeInfos[0] * $aImgPublieeInfos[1]) <= 5300000 ) {
			$sCssClasseVignette = 'miniature';

			// si la miniature n'existe pas ou que la photo est plus récente que la miniature => création ou remplacement
			if ( !file_exists($sCheminMiniature) || ( filemtime($sCheminMiniature) < filemtime($sCheminPhoto) ) ) {
			
				Util::processImgFile( $sTypeMime, $sCheminPhoto, $sCheminMiniature, $iMinLargeur, $iMinHauteur, '', JB_AL_VIGNETTES_QUALITE );
				@chmod( $sCheminMiniature, JB_AL_CHMOD_FICHIERS );
			}
		}
		// sinon, on écrase le chemin de la miniature pour afficher celle par défaut
		else {
		
			$sCssClasseVignette = 'miniature_defaut';
			$sCheminMiniature = $_JB_AL_VARS['s_acces_theme'].(isIE() ? 'images/ie/miniature_defaut.gif' : 'images/miniature_defaut.png');
		}

		//
		// Gestion du panier : si on demande la sélection de toutes les images de la page
		// avant d'afficher chaque vignette, on l'ajoute au panier. Idem si on demande le
		// retrait.
		//
		if( JB_AL_PANIER_ACTIF === true ) {
		
			$sChemin = substr($sCheminPhoto, strpos($sCheminPhoto, JB_AL_DOSSIER_PHOTOS) + strlen(JB_AL_DOSSIER_PHOTOS) );
			$sCheminDansPanier = cheminDansPanier($sChemin);			
			
			switch ( $_JB_AL_GET['s_action'] ) {
			
				case 'tout':	$oPanier->ajouter( $sCheminDansPanier ); break;
				case 'rien':	$oPanier->supprimer( $sCheminDansPanier ); if($_JB_AL_GET['b_voir_panier']) continue; break;
			}
			
			// Définition des chaines d'ajout et de retrait de l'image dans le panier
			$sParamDiapo	= ($_JB_AL_GET['s_diapo_courante'] !== '') ? '&diapo='. basename($_JB_AL_GET['s_diapo_courante']) : '';
			
			$sUrlAjout = $oUrl->construireUrl(
				'rep='. $_JB_AL_VARS['s_rep_courant_url'] .
				'&page='. $_JB_AL_GET['i_page_courante'] . $sParamDiapo .
				'&act=ajouter&img='. Util::preparerUrl($sChemin) . $aActions['voir']
			);
			$sUrlRetrait = $oUrl->construireUrl(
				'rep='. $_JB_AL_VARS['s_rep_courant_url'] .
				'&page='. $_JB_AL_GET['i_page_courante'] . $sParamDiapo .
				'&act=supprimer&img='. Util::preparerUrl($sChemin) . $aActions['voir']
			);
		}

		//
		// Construction du lien de la vignette de la photo
		//

		$sLienHrefJS = $sBaliseLightBox = '';
		
		$sUrlPhoto		= JB_AL_BASE_URL . Util::preparerUrl($sCheminPhoto, true);
		$sUrlPhotoHQ	= ($bHauteQualite ? JB_AL_BASE_URL . Util::preparerUrl($sCheminPhotoHQ, true) : '');
		$sUrlMiniature	= JB_AL_BASE_URL . Util::preparerUrl($sCheminMiniature, true); 

		// Si ouverture des photos demandé avec target="_blank"
		$sTargetBlank = ( (JB_AL_OUVERTURE_BLK === true) && (JB_AL_OUVERTURE_JS === false) ) ? ' target="_blank"' : '';

		// Ouverture avec Javascript sans Lightbox
		if( ($_JB_AL_VARS['b_mode_diaporama'] === false && JB_AL_OUVERTURE_JS === true && JB_AL_OUVERTURE_LBX === false) ||
			($_JB_AL_VARS['b_mode_diaporama'] === true && JB_AL_OUVERTURE_JS_DIAPO === true && JB_AL_OUVERTURE_LBX_DIAPO === false ) )
		{
			// Détermination de la largeur et de la hauteur de la popup si demandé dans la config
			$iLargeurMax = ( (JB_AL_POPUP_LARGEUR !== 0) && ($aImgInfos[0] > JB_AL_POPUP_LARGEUR) ) ? JB_AL_POPUP_LARGEUR : $aImgInfos[0];
			$iHauteurMax = ( (JB_AL_POPUP_HAUTEUR !== 0) && ($aImgInfos[1] > JB_AL_POPUP_HAUTEUR) ) ? JB_AL_POPUP_HAUTEUR : $aImgInfos[1];

			// Réajustement des dimensions
			$fRatioImage = $aImgInfos[0] / $aImgInfos[1];
			if( (JB_AL_POPUP_HAUTEUR === 0 || JB_AL_POPUP_HAUTEUR !== 0) && JB_AL_POPUP_LARGEUR !== 0 )
				$iHauteurMax = JB_AL_POPUP_LARGEUR * (1/$fRatioImage);

			if( JB_AL_POPUP_HAUTEUR !== 0 && JB_AL_POPUP_LARGEUR === 0 )
				$iLargeurMax = JB_AL_POPUP_HAUTEUR * $fRatioImage;

			$sLienHrefJS = ' onclick="javascript:popup( encodeURI(\''. $sUrlPhoto .'\'), '. $iLargeurMax .', '. $iHauteurMax .' ); return false;"';
		}

		// Ouverture avec Javascript et Lightbox (pas besoin d'écraser le lien mais il faut construire la balise rel)
		if( JB_AL_OUVERTURE_JS === true && JB_AL_OUVERTURE_LBX === true ) {
		
			$sDescTitle = $aListePhotos[$i];
			
			if( JB_AL_FILTRE_PREFIXES_ACTIF )	$sDescTitle = Util::enleverPrefixe( $sDescTitle, JB_AL_PREFIXES_SEPARATEUR );
			if( JB_AL_REMPLACER_TIRETS_BAS )	$sDescTitle = str_replace( '_', ' ', $sDescTitle );
			if( !JB_AL_AFFICHER_EXTENSION )	    $sDescTitle = Util::sousChaineGauche( $sDescTitle, '.', 1 );

			$sBaliseLightBox = 
				' rel="lightbox'. ($_JB_AL_VARS['b_mode_diaporama'] === true ? '' : '[albulle]') .
				'" title="['. $aImgInfos[0] .' x '. $aImgInfos[1] .' | '. $sPoids .'] » '.
				utf8($sDescTitle) .
				(!empty($sLegende) ? '<br />'. $sLegende : ''). '"';
		}

		//
		// Ajout de la vignette dans le tableau global
		//
		$_PHOTOS[$aListePhotos[$i]] = array(
		
			'URL'				=> $sUrlPhoto,
			'URL_HD'			=> $sUrlPhotoHQ,
			'URL_MINIATURE'		=> $sUrlMiniature,
			
			'TARGET'			=> $sTargetBlank,
			'JAVASCRIPT'		=> ($_JB_AL_VARS['b_mode_diaporama'] === false ? $sLienHrefJS : ''),
			'LIGHTBOX'			=> ($_JB_AL_VARS['b_mode_diaporama'] === false ? $sBaliseLightBox : ''),
			'CLASSE_CSS'		=> $sCssClasseVignette,
			'ALT'				=> $aListePhotos[$i],
			
			'NOM'				=> ( JB_AL_AFFICHER_NOMS === true || $_JB_AL_VARS['b_mode_diaporama'] ? utf8($aListePhotos[$i]) : ''),
			'DIMENSIONS'		=> ( JB_AL_AFFICHER_DIMENSIONS === true ? $aImgInfos[0].' x '.$aImgInfos[1] : ''),
			'POIDS'				=> ( JB_AL_AFFICHER_POIDS === true ? $sPoids : ''),
			'TYPE_MIME'			=> $sTypeMime,
			'EXIF'				=> Util::lireDonneesExif($sCheminPhoto),
			'LEGENDE'			=> $sLegende
		);

		// En mode diaporama, il faut écraser le lien pour afficher les images
		if( $_JB_AL_VARS['b_mode_diaporama'] ) {
		
			$_PHOTOS[$aListePhotos[$i]]['URL_DIAPO'] = $_PHOTOS[$aListePhotos[$i]]['URL'];
			
			$_PHOTOS[$aListePhotos[$i]]['URL'] = $oUrl->construireUrl(
				'rep='. $_JB_AL_VARS['s_rep_courant_url'] .
				'&page='. $_JB_AL_GET['i_page_courante'] . $aActions['voir'] .
				'&diapo='. Util::preparerUrl($aListePhotos[$i]),
				'marqueur'
			);
		}
		
		// Lien pour l'ajout/retrait du panier
		if(JB_AL_PANIER_ACTIF === true) {
		
			if( $oPanier->estDansLePanier( $sCheminDansPanier ) !== false )
				$_PHOTOS[$aListePhotos[$i]]['PANIER'] = array(
					'MODE'	=> 'retrait',
					'URL'	=> $sUrlRetrait
				);
			
			else
				$_PHOTOS[$aListePhotos[$i]]['PANIER'] = array(
					'MODE'	=> 'ajout',
					'URL'	=> $sUrlAjout
				);
		}

		//
		// Application filtres sur le nom de la photo
		//
		if( JB_AL_FILTRE_PREFIXES_ACTIF )	$_PHOTOS[$aListePhotos[$i]]['NOM'] = Util::enleverPrefixe( $_PHOTOS[$aListePhotos[$i]]['NOM'], JB_AL_PREFIXES_SEPARATEUR );
		if( JB_AL_REMPLACER_TIRETS_BAS )	$_PHOTOS[$aListePhotos[$i]]['NOM'] = str_replace( '_', ' ', $_PHOTOS[$aListePhotos[$i]]['NOM'] );
		if( !JB_AL_AFFICHER_EXTENSION )	    $_PHOTOS[$aListePhotos[$i]]['NOM'] = Util::sousChaineGauche( $_PHOTOS[$aListePhotos[$i]]['NOM'], '.', 1 );
		
		@set_time_limit(0);
	}
	
	// Si tri par date EXIF demandé
	if( JB_AL_TRI_EXIF === true ) {
	
		uasort($_PHOTOS, create_function(
			'$a, $b',
			'if( $a[\'EXIF\'][\'DateTimestamp\'] == $b[\'EXIF\'][\'DateTimestamp\'] ) return 0;
			$iRes = ($a[\'EXIF\'][\'DateTimestamp\'] > $b[\'EXIF\'][\'DateTimestamp\'] ? 1 : -1);
			if( JB_AL_TRI_EXIF_INV ) $iRes *= -1;
			return $iRes;'
		));
	}
	
	// Insertion index dans le tableau
	$i = $iForStart;
	array_walk(
		$_PHOTOS,
		create_function('&$item, $key, &$index', '$item[\'IDX\'] = $index; $index++;'),
		$i
	);
}

// Affichage de l'accueil
elseif( empty($_JB_AL_GET['s_rep_courant']) ) {

	// Si pas de texte alternatif, on charge le document par défaut
	if( !defined('JB_AL_ACCUEIL_ALT') ) {
		
		ob_start();
		eval('require_once(JB_AL_DATA . JB_AL_FICHIER_ACCUEIL);');
		$_JB_AL_VARS['accueil'] = ob_get_contents();
		ob_end_clean();
	}
	// Sinon, on affiche le texte alternatif
	else $_JB_AL_VARS['accueil'] = JB_AL_ACCUEIL_ALT;
}

// ====================
// GESTION DES LIENS DU PANIER
//

// état du panier : plein ou pas, nombre de fichiers dans le panier, poids estimé de l'archive
if(JB_AL_PANIER_ACTIF === true) {

	$_JB_AL_VARS['a_panier']['b_plein']			= $oPanier->estPanierPlein();
	$_JB_AL_VARS['a_panier']['i_nb_fichiers']	= $oPanier->compterFichiers();
	
	$iPoidsEstime = $oPanier->calculerPoids();
	$_JB_AL_VARS['a_panier']['s_poids_estime']	= (intval( $iPoidsEstime / 1024 ) < 1) ? $iPoidsEstime.' Octets' : intval( $iPoidsEstime / 1024 ).' Ko';
	
	// création des liens si des fichiers se trouvent dans le panier
	if ( $_JB_AL_VARS['a_panier']['i_nb_fichiers'] > 0 ) {
	
		$_JB_AL_VARS['a_menu_panier']['s_url_download']	= JB_AL_ROOT.'core/download.php';
		$_JB_AL_VARS['a_menu_panier']['s_url_voir']		= $oUrl->construireUrl( 'rep='.$_JB_AL_VARS['s_rep_courant_url'].'&voir' );
		$_JB_AL_VARS['a_menu_panier']['s_url_vider']	= $oUrl->construireUrl(
																'rep='.$_JB_AL_VARS['s_rep_courant_url']
																.($_JB_AL_GET['b_voir_panier'] ? '' : '&page='.$_JB_AL_GET['i_page_courante'])
																.'&act=vider'
															);
	}
	
	// Liens pour les ajouts / retraits globaux
	$_JB_AL_VARS['s_lien_panier_tout_ajouter']		= ( $iNbPhotos > 0 && !$_JB_AL_GET['b_voir_panier'] ) ? $oUrl->construireUrl( 'rep='.$_JB_AL_VARS['s_rep_courant_url'].'&page='.$_JB_AL_GET['i_page_courante'].'&act=tout'.$aActions['voir'] ) : '';
	$_JB_AL_VARS['s_lien_panier_tout_supprimer']	= ( $iNbPhotos > 0 && !$_JB_AL_GET['b_voir_panier'] ) ? $oUrl->construireUrl( 'rep='.$_JB_AL_VARS['s_rep_courant_url'].'&page='.$_JB_AL_GET['i_page_courante'].'&act=rien'.$aActions['voir'] ) : '';
}
else {

	$_JB_AL_VARS['a_panier']['b_plein']			= 0;
	$_JB_AL_VARS['a_panier']['i_nb_fichiers']	= 0;
	$_JB_AL_VARS['a_panier']['s_poids_estime']	= 0;
}

// ====================
// INITIALISATIONS DIVERSES POUR L'HTML
//

$_JB_AL_VARS['s_chemin_rep']			= JB_AL_DATA . JB_AL_DOSSIER_PHOTOS.$_JB_AL_GET['s_rep_courant'].'/';
$_JB_AL_VARS['s_rep_courant']			= Util::preparerUrl($_JB_AL_GET['s_rep_courant']);
$_JB_AL_VARS['b_voir_panier']			= $_JB_AL_GET['b_voir_panier'];
$_JB_AL_VARS['s_url_img_precedente']	= $_JB_AL_VARS['s_url_img_suivante'] = '';
$_JB_AL_VARS['s_diapo_courante']		= $_JB_AL_GET['s_diapo_courante'];

// Enregistrement de la premiere photo comme diapo courante si pas de diapo sélectionnée
if( empty($_JB_AL_VARS['s_diapo_courante']) ) {

	reset($_PHOTOS);
	$_JB_AL_VARS['s_diapo_courante'] = key($_PHOTOS);
}

// Nettoyage préfixe et tirets bas
if( !empty($_JB_AL_GET['s_rep_courant']) ) {

	if(!$_JB_AL_GET['b_voir_panier']) {
	
		$sTitreFiltre = JB_AL_FILTRE_PREFIXES_ACTIF ? Util::enleverPrefixe( $aDossiersUrl[$iNiveau-1], JB_AL_PREFIXES_SEPARATEUR ) : $aDossiersUrl[$iNiveau-1];
		$sTitreFiltre = utf8(str_replace( '_', ' ', $sTitreFiltre ));
	}
	else $sTitreFiltre = 'panier';
}

$_JB_AL_VARS['s_titre_meta'] = ( empty( $_JB_AL_GET['s_rep_courant'] ) ) ? JB_AL_TITRE_GALERIE : "Photos de $sTitreFiltre";

if($_JB_AL_GET['b_voir_panier'])
	$_JB_AL_VARS['s_titre_meta'] = str_replace('de', 'dans le', $_JB_AL_VARS['s_titre_meta']);	// Pour remplacer le 'de' de la ligne précédente quand on visionne le contenu du panier.

// Construction de la chaine de navigation dans les dossiers
if( empty($_JB_AL_GET['s_rep_courant']) && !$_JB_AL_GET['b_voir_panier'] )
	$_JB_AL_VARS['s_navigation'] = 'Accueil';
	
else {

	$sLien = '';
	$_JB_AL_VARS['s_navigation'] = '<a href="'.$oUrl->construireUrl('').'">Accueil</a> » ';

	for( $i = 0 ; $i < $iNiveau - 1 && !$_JB_AL_GET['b_voir_panier'] ; $i++ ) {
	
	    // Nettoyage préfixe
		$sDossierFiltre = JB_AL_FILTRE_PREFIXES_ACTIF ? Util::enleverPrefixe( $aDossiersUrl[$i], JB_AL_PREFIXES_SEPARATEUR ) : $aDossiersUrl[$i];

		$sLien .= ( $i !== 0 ) ? '/'.$aDossiersUrl[$i] : $aDossiersUrl[$i];
		$_JB_AL_VARS['s_navigation'] .= '<a href="'.$oUrl->construireUrl( 'rep='.Util::preparerUrl($sLien).$aActions['voir'] ).'">'.str_replace( '_', ' ', utf8($sDossierFiltre) ).'</a> » ';
	}

	// Nettoyage préfixe
	if(!$_JB_AL_GET['b_voir_panier'])
		$sDossierFiltre = JB_AL_FILTRE_PREFIXES_ACTIF ? Util::enleverPrefixe( utf8($aDossiersUrl[$iNiveau-1]), JB_AL_PREFIXES_SEPARATEUR ) : $aDossiersUrl[$iNiveau-1];
	else $sDossierFiltre = 'Photos dans le panier';

	$_JB_AL_VARS['s_navigation'] .= str_replace( '_', ' ', $sDossierFiltre );

	// Lien modes galerie / diaporama
	if( $_JB_AL_VARS['b_mode_diaporama'] ) {
	
		// Pour le défilement automatique
		if( !isset($_SESSION['DIAPORAMA_INTERVALLE']) )	$_SESSION['DIAPORAMA_INTERVALLE'] = 0;

		// Si lancement défilement demandé
		if( isset($_POST['diaporama_intervalle']) )	$_SESSION['DIAPORAMA_INTERVALLE'] =  $_POST['diaporama_intervalle'];
		$_SESSION['DIAPORAMA_INTERVALLE'] = is_int((int) $_SESSION['DIAPORAMA_INTERVALLE']) ? (int) $_SESSION['DIAPORAMA_INTERVALLE'] : 0;

		// Si arrêt du défilement demandé
		if( isset($_POST['arreter']) )	$_SESSION['DIAPORAMA_INTERVALLE'] = 0;

		// Sauvegarde du temps du défilement et définition du drapeau qui nous servira pour les futurs tests
		$_JB_AL_VARS['i_intervalle_tps'] = $_SESSION['DIAPORAMA_INTERVALLE'];
		$_JB_AL_VARS['b_defilement_auto'] = ($_SESSION['DIAPORAMA_INTERVALLE'] > 0);

		// Définition des attributs du bouton de défilement
		if( !$_JB_AL_VARS['b_defilement_auto'] ) {
		
			$_JB_AL_VARS['s_defilement_submit_name']	= 'lancer';
			$_JB_AL_VARS['s_defilement_submit_value']	= 'Lancer !';
		}
		else {
		
			$_JB_AL_VARS['s_defilement_submit_name']	= 'arreter';
			$_JB_AL_VARS['s_defilement_submit_value']	= 'Arrêter';
		}

		// Construction liens précédente / suivante
		$sPagePrecedente = $sPageSuivante = '&page=';

		// Placement sur la diapositive courante
		array_seek_key($_PHOTOS, $_JB_AL_VARS['s_diapo_courante']);
		
		// S'il y a des images précédentes
		if( prev($_PHOTOS) !== false ) {
		
			$sPagePrecedente .= ( $_PHOTOS[$_JB_AL_VARS['s_diapo_courante']]['IDX'] === ($_JB_AL_GET['i_page_courante'] - 1) * JB_AL_VIGNETTES_PAR_PAGE ) ? $_JB_AL_GET['i_page_courante'] - 1 : $_JB_AL_GET['i_page_courante'];
			
			$_JB_AL_VARS['s_url_img_precedente'] = $oUrl->construireUrl(
				'rep='. $_JB_AL_VARS['s_rep_courant_url'] . $sPagePrecedente . $aActions['voir'] .
				'&diapo='. Util::preparerUrl(key($_PHOTOS)),
				'marqueur'
			);
			
			// On se replace sur la diapo courante
			next($_PHOTOS);
		}
		else reset($_PHOTOS);

		// S'il y a des images qui suivent
		if( next($_PHOTOS) !== false ) {
		
			$sPageSuivante .= ( $_PHOTOS[$_JB_AL_VARS['s_diapo_courante']]['IDX'] === ((($_JB_AL_GET['i_page_courante'] - 1) * JB_AL_VIGNETTES_PAR_PAGE) + $iImgAAfficher) - 1 ) ? $_JB_AL_GET['i_page_courante'] + 1 : $_JB_AL_GET['i_page_courante'];

			$_JB_AL_VARS['s_url_img_suivante'] = $oUrl->construireUrl(
				'rep='. $_JB_AL_VARS['s_rep_courant_url'] . $sPageSuivante . $aActions['voir'] .
				'&diapo='. Util::preparerUrl(key($_PHOTOS)),
				'marqueur'
			);
			
			prev($_PHOTOS);
		}
		else {
		
			$_SESSION['DIAPORAMA_INTERVALLE'] = 0;
			end($_PHOTOS);
		}

	 	$_JB_AL_VARS['s_lien_mode_affichage']	= $oUrl->construireUrl( 'rep='.$_JB_AL_VARS['s_rep_courant_url'].'&page='.$_JB_AL_GET['i_page_courante'].'&galerie'.$aActions['voir'] );
		$_JB_AL_VARS['s_texte_mode_affichage']	= 'Mode galerie';
		$_JB_AL_VARS['s_classe_css_vignette']	= 'vignetteDiapo';
	}
	else {
	
		$_JB_AL_VARS['s_lien_mode_affichage']	= $oUrl->construireUrl( 'rep='.$_JB_AL_VARS['s_rep_courant_url'].'&page='.$_JB_AL_GET['i_page_courante'].'&diaporama'.$aActions['voir'], 'marqueur' );
		$_JB_AL_VARS['s_texte_mode_affichage']	= 'Mode diaporama';
		$_JB_AL_VARS['s_classe_css_vignette']	= 'vignette';
	}
}


// ====================
// Affichage
//

// Envoi des entêtes HTTP
$sCharset = ( JB_AL_INTEGRATION_SITE === true && JB_AL_SORTIE_ISO === true ) ? 'iso-8859-1' : 'utf-8';
if(!headers_sent()) header( 'Content-type: text/html; charset='.$sCharset );		// Force l'encodage de sortie à l'UTF-8

$sPageFinale = file_exists($_JB_AL_VARS['s_acces_theme'].'render.php') ? require_once( $_JB_AL_VARS['s_acces_theme'].'render.php' ) : require_once( 'includes/render.php' );
return (JB_AL_INTEGRATION_SITE === true && JB_AL_SORTIE_ISO === true) ? utf8_decode($sPageFinale) : $sPageFinale;
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
14 juil. 2015 à 01:00
Je viens de télécharger albule ...
J'ai créé un répertoire dans /upload/albulle/data/photos
J'y ai placé mes images
j'ai ouvert la page upload/index.php
... je vois bien les miniatures de mes images ... et si je clique dessus ... j'ai bien la lightbox qui s'ouvre....

Donc il semble qu'il n'y ai aucun souci.

Comment as tu procédé toi ??
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
14 juil. 2015 à 09:01
Bonjour
En fait lorsque j'ai ce lien pour accéder à la galerie
<a href="Albulle/upload/index.php">Nos Photos</a>
pas de soucis tout marche bien mais ce lien ne correspond pas à la structure de mon site, en gros la galerie n'est pas incluse dans mon site, il faudrait que ça fonctionne avec ce lien pour que la galerie soit incluse dans mon site
<a href="index.php?body=nos_albums&type=public">Nos Photos</a>
Je ne sais pas si j'ai assez été clair en fait.
Merci
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
14 juil. 2015 à 11:04
Ah mais donc ce n'est pas un souci de fonctionnement. .. mais une utilisation "anormal" (ou differente ) que ce que la doc du script permet....
bref faut peut être modifier le script .....
0