/** * carroussel.js * * Created by Benoît Durand on 27 mars 2009 * * @author Benoît Durand * @version $Id: carroussel.js 1327 2009-05-14 12:40:34Z rleclercq $ */ var ajax = null; var ajax_last_url = null; var ajax_loaded = false; var img_loaded = false; var hideShadow = function(src){ if(src == "img") img_loaded = true; if(src == "ajax") ajax_loaded = true; //if(!ajax_loaded || !img_loaded) return; ajax_loaded = false; img_loaded = false; $("#loading").fadeOut('fast'); } var clickVisuel = function(src){ $('#visuelsSmall a.actif').removeClass('actif'); $(src).addClass('actif'); var idVisuel = $(src).attr('id').replace('smallVisuel', ''); $('#carrousselProduit .image a.actif').removeClass('actif'); $('#visuel'+idVisuel).addClass('actif'); return false; } $(document).ready(function() { $.ajaxSetup({ cache: true }); $('#carrousselProduit .image a img').load(function(){ hideShadow("img"); }); $('#carrousselProduits a').click(function() { // Expression régulière du nom d'un visuel d'un produit var re = /[a-z]+_([0-9]+)_[0-9]+\.[A-Za-z]+/; var imageSrc = $(this).find('img').attr('src'); var idProduit = imageSrc.match(re)[1]; $('#carrousselProduits img.bordure').removeClass('bordure'); $(this).find('img').addClass('bordure'); ajax_url = '/catalogue/index/process/produit/'+idProduit+'/format/json'; if(ajax_url==ajax_last_url) return false; if(ajax) ajax.abort(); ajax_last_url = ajax_url; // Animation de chargement $("#loading").fadeTo('fast', 0.8); $("#loading").animate({opacity: 'show' }, 'fast'); ajax = $.getJSON(ajax_url, function(data) { var produit = data.produit; // Visuels multiples : miniatures var htmlVisuels = ''; var first = true; var i, visuel; if(produit.visuels[2]){ for(i in produit.visuels){ visuel = produit.visuels[i]; var visuelSuffix = '_'+produit.id+'_'+visuel.id+'.'+visuel.extension; htmlVisuels += '