// Liens externes --------------------------------------------------------------

function openSite(strLocationURL) {
  var siteWindow = null;
  siteWindow = window.open(strLocationURL);
}

function checkExternalLinks() {
  var objLinks = document.getElementsByTagName("a");
  for (i=0; i < objLinks.length; i++) {
    if (objLinks[i].href.length > 0) {
      if (objLinks[i].href.indexOf(document.domain) == -1 && objLinks[i].href.indexOf("javascript:") == -1 && objLinks[i].href.indexOf("mailto:") == -1) {
      objLinks[i].href = "javascript: openSite('" + objLinks[i].href + "');";
      }
    }
  }
}

try {
  window.addEventListener("load", checkExternalLinks, true);
}
catch(ex) {
  window.attachEvent("onload", checkExternalLinks);
}

// CSS Browser Selector --------------------------------------------------------

var css_browser_selector = function() {
  var ua=navigator.userAgent.toLowerCase(),is=function(t){
    return ua.indexOf(t) != -1;
  },
  h=document.getElementsByTagName('html')[0],b=(!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?'gecko ff2':is('firefox/3')?'gecko ff3':is('gecko/')?'gecko':is('opera/9')?'opera opera9':/opera (\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';var c=b+os+' js'; h.className += h.className?' '+c:c;
}();

// Survol TR et Button pour IE6 ------------------------------------------------

if (!window.XMLHttpRequest){
  $(document).ready(function(){
    $("table tr").hover(
     function(){
      $(this).addClass("hover");
     },
     function(){
      $(this).removeClass("hover");
     }
    )
    $("button").hover(
     function(){
      $(this).addClass("hover");
     },
     function(){
      $(this).removeClass("hover");
     }
    )
  });
}

// transparence PNG ------------------------------------------------------------

jQuery().ready(function() {
  if(jQuery.browser.msie && parseInt(jQuery.browser.version) == 6 && typeof window['XMLHttpRequest'] != "object") {
    $('#blocRappel .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_rappel.png",sizingMethod="scale")');
    });
    $('#blocParrainage .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_parrainage.png",sizingMethod="scale")');
    });
    $('#blocBC .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_bc.png",sizingMethod="scale")');
    });
    $('#blocSavoir .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_savoir.png",sizingMethod="scale")');
    });
    $('#blocSavoir.video .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_video.png",sizingMethod="scale")');
    });
    $('#blocContact .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_contact.png",sizingMethod="scale")');
    });
    $('#blocBC_min .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_bc_min.png",sizingMethod="scale")');
    });
    $('#blocSavoir_min .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_savoir_min.png",sizingMethod="scale")');
    });
    $('#blocSavoir_min.video .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_video_min.png",sizingMethod="scale")');
    });
    $('#blocRappel_min .visuel').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/img_rappel_min.png",sizingMethod="scale")');
    });
    $('#perso').each( function() {
      $(this).attr('writing-mode', 'tb-rl');
      $(this).css('background', 'none');
      $(this).css( 'filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="images/elements/homme.png",sizingMethod="scale")');
    });
  }
});

// Diaporamas ------------------------------------------------------------------

jQuery().ready(function() {
	$('#flash').innerfade({
		speed: 'slow',
		timeout: 3000,
		containerheight: '47px'
	});
  $("#slider").easySlider({
  	controlsBefore:	'<p id="controls">',
  	controlsAfter: '</p>',
  	auto : true,
  	continuous: true,
  	pause: 10000,
  	prevId: 'prevBtn',
  	nextId: 'nextBtn'
  });
  $("#scroller").easySlider({
  	controlsBefore:	'<p id="controls">',
  	controlsAfter:	'</p>',
  	prevId: 'prevBtn',
  	nextId: 'nextBtn',
  	vertical: true
  });

  $("#blocVisuels a:first").addClass("active");
  $("#blocVisuels li").hide();
  $("#blocVisuels li:first").show();
  $("#blocDescriptif li").hide();
  $("#blocDescriptif li:first").show();
	
	
  //$("#blocDesc h2 strong").after(" &gt; <span></span>");
  //var mainTitle = $("#blocDesc h2 span span");
  var mainTitle = $("#blocDesc h2 span span"); 
  mainTitle.text($("#scroller a:first").attr("title"));

  var settings = {
    mainContainer: "blocScroller",
    thumbListId: "scroller",
    imgViewerId: "apercu",
    msgViewerId: "legende",
    activeClass: "active",
    activeTitle: "Photo en cours de visualisation",
    loaderTitle: "Chargement en cours",
    loaderImage: "images/elements/loading.gif"
  };

  var thumbLinks = $("#"+settings.thumbListId).find("a"),
      firstThumbLink = thumbLinks.eq(0),
      highlight = function(elt){
        thumbLinks.removeClass(settings.activeClass);
        elt.addClass(settings.activeClass);
        $("#"+settings.msgViewerId).html(elt.children("img").attr("alt"));
      },
      loader = $(document.createElement("img")).addClass("loader").attr({
        alt: settings.loaderTitle,
        title: settings.loaderTitle,
        src: settings.loaderImage
      });

  highlight(firstThumbLink);

  $("#"+settings.msgViewerId).before (
    $(document.createElement("p"))
    .attr("id",settings.imgViewerId)
    .append(
      $(document.createElement("img")).attr({
        alt: "",
        src: firstThumbLink.attr("href")
      })
    )
  );

  var imgViewer = $("#"+settings.imgViewerId),
      bigPic = imgViewer.children("img");
  
  thumbLinks.click(function(e){
      var linkClicked = $(this).attr("rel");
      var changeMainTitle = $(this).attr("title");
      
      mainTitle.empty();
      mainTitle.text(changeMainTitle);
      
      $("#blocVisuels a").removeClass("active");
      $("#blocVisuels li").each(function(i) {
        if ($(this).hasClass(linkClicked)) {
          $(this).show();
          $(this).addClass("active");
        }
        else {
          $(this).hide();
          $(this).removeClass("active");
        }
			});
      $("#blocDescriptif li").each(function(i) {
        if ($(this).hasClass(linkClicked)) {
          $(this).show();
          $(this).addClass("active");
        }
        else {
          $(this).hide();
          $(this).removeClass("active");
        }
			});
      $("#blocVisuels li.active a:first").addClass("active");
      
      e.preventDefault();
      var $this = $(this),
          target = $this.attr("href");
      if (bigPic.attr("src") == target) return;
      highlight($this);
      imgViewer.html(loader);
      bigPic
        .load(function(){
          imgViewer.html($(this).fadeIn(250));
        })
        .attr("src",target);
    });
    
    $("#blocVisuels a").click( function(event) {
    	var changeSrc = $(this).attr("rel");
    	var changeTitle = $(this).attr("title");
    	$("#blocVisuels a").removeClass("active");
      $(this).addClass("active");
    	$("#apercu img").attr("src", changeSrc).fadeIn(1000);
    	$("#legende").text(changeTitle);
    	return false;
    });
    
});

// Gammes ----------------------------------------------------------------------

jQuery().ready(function() {
	$(".navigation a").mouseover( function() {
		var changeSrc = $(this).attr("rel");
    $("#diaporama").flashembed({ 
        src: 'flash/diaporama.swf',  
        version: [7, 0],  
        wmode: 'transparent',  
        quality: 'high'
    }, { 
        xmlPath: changeSrc  
    });
		var tab_gamme = $(this).parents('h3').attr("class").split('gamme');
		$('.texte').hide();
		$('#texte'+tab_gamme[1]).show();
	});
	$(".navigation a").mouseout( function() {
		$("#diaporama").empty();
	});
});

// Plan du site ----------------------------------------------------------------

jQuery().ready(function() {
	$("#plan").treeview({
		collapsed: false,
		animated: "medium",
		control: "#blocPlan",
		persist: "location"
	});
});

// Formulaire ------------------------------------------------------------------

jQuery().ready(function() {
	var validator = $("#formulaire form").validate({
		rules : {
			nom : {
				required : true,
				minlength : 2
			},
			email : {
				required : true,
        email : "#email"
			},
			telephone : {
				required : true,
				minlength : 10
			},
			message : {
				required : true,
				minlength : 2
			}
		},
		messages : {
			nom : {
				required: "&nbsp;",
        minlength: jQuery.format("Veuillez entrer au moins {0} caractères")
			},
			email : {
				required: "&nbsp;",
				email: jQuery.format("Veuillez saisir un email valide")
			},
			telephone : {
				required: "&nbsp;",
				minlength: jQuery.format("Veuillez saisir un numéro de téléphone valide")
			},
			message : {
				required: "&nbsp;",
				minlength: jQuery.format("&nbsp;")
			}
		},
		errorPlacement : function(error, element) {
			error.appendTo( element.parent() );
		},
		success : function(label) {
			label.html("&nbsp;").addClass("checked");
		}
	});
	$("#nom").focus(function() {
		var firstname = $("#nom").val();
		var lastname = $("#prenom").val();
		if(firstname && lastname && !this.value) {
			this.value = firstname + "." + lastname;
		}
	});
})

function maj_cats(j,nb){
	$.post(
		"html/maj_categorie.php", 
		{ 
			id_region: $('#region'+j).val()
		}, 
		function(data){
			for(var k=j;k<nb;k++){
				$("#region"+(parseInt(k)+1)).hide();
			}
			if(data != ''){
				var reg=new RegExp("[;]+", "g");
				var tab_select = data.split(reg);
				$("#region"+(parseInt(j)+1)).removeOption(/./);
				$("#region"+(parseInt(j)+1)).show();
				for(var i=0;i<tab_select.length;i++){
					var regg=new RegExp("[|]+", "g");
					var tab_srubs = tab_select[i].split(regg);
					if(tab_srubs[0] != ''){
						$("#region"+(parseInt(j)+1)).addOption(tab_srubs[0], tab_srubs[1]);
					} 
					if (tab_select.length == 0) {
						$("#region"+(parseInt(j)+1)).hide();
					}
				}
				$("#region"+(parseInt(j)+1))[0].selectedIndex=0;
			}
		}
	);
}

function maj_produits(produit,id_rep,rep,region){
	$.post(
		"html/creation_liste.php", 
		{ 
			produit: produit,
			id_repertoire: id_rep,
			repertoire: rep,
			id_region: region
		}, 
		function(data){
			if(data != ''){
				$("#produits").html(data);
			}
		}
	);
}

/*jQuery().ready(function() {
	$('#region').change( function() {
		maj_cats();
	});
});*/

// Google map --------------------
function load(lat,lng)
	{
	if (GBrowserIsCompatible())
		{
		var mapform = new GMap2(document.getElementById("mapform"));
		geocoder = new GClientGeocoder(); //Création d'une instance "geocoder"
		if (geocoder)
			{
			// L'adresse est ici déclarée mais vous pouvez par l'intermédiaire d'une
			// variable PHP rendre l'adresse dynamique
			// La même adresse sera copiée dans la fonction "alert()"
			// "geocoder.getLatLng" va convertir en coordonnées l'adresse
			var point = new GLatLng(lat, lng, 7);
			//geocoder.getLatLng('France 49100 Angers', function(point)
				//{
				/*
				if (!point) // L'adresse n'est pas connue par Google Maps
					{
					mapform.setCenter(new GLatLng(47.477185, -0.542444), 5);
					alert('France 49100 Angers pas trouvé');
					}
				*/
				if(!point){
					mapform.setCenter(new GLatLng(47.436791, -0.61381), 5);
				}
				else // L'adresse est connue par Google Maps
					{
					mapform.setCenter(point, 7); // Centrage de la carte
					// Instantiation de l'objet "markerD" déplaçable
					var markerD = new GMarker(point, {draggable: true});
					mapform.addOverlay(markerD); // Affichage du marqueur
					// Affichage des coordonnées dans la fenêtre sous la carte
					document.getElementById("coords").value = point.toUrlValue();
					// "écoute" d'un déplacement du marqueur, si c'est le cas
					// modification des coordonnées dans la fenêtre sous la carte
					GEvent.addListener(markerD, "drag", function()
						{
						document.getElementById("coords").value=markerD.getPoint().toUrlValue();
						});
					}
				//});
			}
		mapform.addControl(new GMapTypeControl());
		mapform.addControl(new GLargeMapControl());
		mapform.enableScrollWheelZoom();
		mapform.addControl(new GOverviewMapControl());
		mapform.addControl(new GScaleControl());
		mapform.addOverlay(markerD);
		markerD.enableDragging();
		}
	}
