
jQuery(window).ready(function() {

	statsInit();

	sliderInit();

	communesInit();

	lightboxInit();

	freeStudyFormInit();

	loadVideoInit();
    
//    radioStarInit();
});

function communesInit() {

	if($('.commune-ajax').length == 0) {
		return;
	}

	// Ajax sur les communes
	$('.commune-ajax').autocomplete('/xml/communes-json.php', {
		matchContains: true,
		minChars: 2,
		parse: function(datas) {
			var parsed = [];
			var i = 0;
			for(var key in datas) {

				parsed[parsed.length] = {
					data: datas[key],
					value: key,
					result: datas[key]
				};
			}
			return parsed;
		 },
		 formatItem: function(data, i, max, value, term) {
			return data;
		}

	});
	// Fin ajax sur les communes
}

// Lightbox
function lightboxInit() {

	if($('.lightbox').length == 0) {
		return;
	}

	$('.lightbox').lightBox({
		imageLoading : '/css/lightbox-ico-loading.gif',
		imageBtnClose: '/css/lightbox-btn-close.gif',
		imageBtnPrev : '/css/lightbox-btn-prev.gif',
		imageBtnNext : '/css/lightbox-btn-next.gif',
		imageBlank	 : '/css/lightbox-clank.gif',
		txtImage	 : 'Image(s)',
		txtOf		 : 'de'
	});

}
// Fin Lightbox

// Slider Home
var elementCurrent = null;
var elements = new Array();
var elementIndex = 0;
var timer;
function sliderInit() {

	if(jQuery('#flash-control').length == 0) {
		return;
	}

	jQuery('#flash img').show();

    jQuery('#flash-control a').each(function() {
        elements[elementIndex++] = jQuery(this);
    });
    elementIndex    = 0;
    elementCurrent  = jQuery('#flash-control a#ct-bbc');
    showElementCurrent();

    play();

    jQuery('#flash-control a').mouseenter(function() {
        elementCurrent = jQuery(this);
        showElementCurrent();
    });
    jQuery('#flash').mouseenter(function() {
        stop();
    });
    jQuery('#flash').mouseleave(function() {
        play();
    });

}
function showElementCurrent() {

	jQuery('#flash-content li').hide();
	jQuery('#flash-control a').removeClass('selected');

	jQuery(jQuery(elementCurrent).attr('rel')).show();
	jQuery(elementCurrent).addClass('selected');

}

function play() {

	if(elementIndex >= elements.length) {
		elementIndex = 0;
	}
	elementCurrent = elements[elementIndex];

	showElementCurrent();
	elementIndex++;

	timer = setTimeout("play()",3000);
}

function stop() {
	clearTimeout(timer);
}
// Fin Slider Home

// Statistiques adhérents
function statsInit() {

	jQuery('.adhstat').click(function() {

		var reg		= new RegExp("[_]+","g");
		var id		= jQuery(this).attr('id').split(reg);

		jQuery.post('/xml/stat.php', { idadh: id[1] });
		return true;
	});
}
// Fin Statistiques adhérents


// Affichage des cartes Google
function mapinit(_lat, _lng, _departement_id) {

	var infowindow	= new google.maps.InfoWindow();
	var latlng		= new google.maps.LatLng(_lat, _lng);

    var map = new google.maps.Map(document.getElementById('map-canvas'), {
      zoom: 8,
      center: latlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP, 
      scrollwheel: false
    });

    var markers = [];

	// Récupération des terrains
	$.ajax({
			url: "/xml/map-terrains-json.php?departement="+_departement_id,
			datatype: "json",
			success: function(data) {

				for(var key in data['annonces']) {

					createMarker(data['annonces'][key]);
				}
                var markerCluster = new MarkerClusterer(map, markers, {'imagePath':'/css/cluster-'});
			}
	});



	function createMarker(land) {

		var latlng = new google.maps.LatLng(land.latitude, land.longitude);

		var marker = new google.maps.Marker({
			position: latlng,
			//icon: '/images/marker.png',
			map: map
		});

		// Ajout l'id du terrain pour l'ajax
		marker.id = land.id;

		google.maps.event.addListener(marker, 'click', function() {

			var url		= "/xml/map-terrain-json.php?gps=" + latlng.lat() + ";"  + latlng.lng()+ "&r=0";

			$.ajax({
					url: url,
					datatype: "json",
					success: function(data) {

						var html = '<div class="info-window">';

						// Une seule annonce
						if(data['annonces'].length <= 1) {
							for (key in data['annonces']) {
								var land = data['annonces'][key];
html += '<div class="map" id="map'+land.id+'">'
	+ '<p class="city">A ' + land.commune+'</p>'
	+ '<p class="price"><a href="' + url + '">' + land.prix+' €</a></p>'
	+ '<p class="description">' + land.description+'</p>';
							}
						// Multiple annonces
						} else {
							html += '<h2 style="background:none;text-indent:0;font-size:16px;">Liste des terrains :</h2>';

							var first = true;
							var ul = '';
							for (key in data['annonces']) {
								var land = data['annonces'][key];

								if(first) {
									first = false;
								}
								var url = '/terrain-savoir-plus/terrain-savoir-plus.htm?idter='+land.id;
								ul += '<li>Terrain de ' + land.surface + ' pour ' + land.prix+' €<br /><a href="' + url + '">En savoir plus</a></li>';
							}
							html += '<ul>' + ul + '</ul>';
						}

						html += '</div>';

						infowindow.setContent(html);
						infowindow.open(map,marker);

					},
				   minLength: 2
			});

		});
        markers.push(marker);
	}
}
// Fin Affichage des cartes Google

/**
 *
 * @access public
 * @return void
 **/
/**
 *
 * @access public
 * @return void
 **/
function freeStudyFormInit(){
	if(jQuery('.terrain')){
		var hasLand = jQuery('input[type=radio][name=terrain]:checked').attr('value');
		if(jQuery('#land_'+hasLand)){
			jQuery('#land_'+hasLand).show();
		}
		jQuery('.terrain').change(
			function(){
				jQuery('.land_localisation').hide();
				var hasLand = jQuery('input[type=radio][name=terrain]:checked').attr('value');
				//var hasLand jQuery('.terrain:checked').val();
				jQuery('#land_'+hasLand).show();
		});
	}
}

/**
 *
 * @access public
 * @return void
 **/
function loadVideoInit(){
	if(jQuery('.load_video')){
		jQuery('.load_video').each(function(){
			jQuery(this).click(function(){
				var video_id = jQuery(this).attr('rel');
				var video = videos[video_id];
				jQuery('#apercu').attr('src', videos[video_id]['url']);
				jQuery('#titre_apercu').empty();
				jQuery('#titre_apercu').prepend(videos[video_id]['titre']);
				jQuery('#desc_apercu').empty();
				jQuery('#desc_apercu').prepend(videos[video_id]['description']);
				//return false;
			});
		});
	}
}

function RunFlash(swf, hauteur, largeur, couleur, window_mode, nom, vars) {
	document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\""+hauteur+"\" height=\""+largeur+"\" id=\""+nom+"\" align=\"middle\">\n");
	document.write("<param name=\"allowScriptAccess\" value=\"always\" />\n");
	document.write("<param name='movie' value='"+swf+"' /> \n");
	document.write("<param name='quality' value='high' /> \n");
	document.write("<param name='bgcolor' value='"+couleur+"' /> \n");
	document.write("<param name='menu' value='true' /> \n");
	document.write("<param name='flashvars' value='"+vars+"' /> \n");
	if(window_mode=="transparent"||window_mode=="opaque"){
		document.write("<param name='wmode' value='"+window_mode+"' /> \n");
		document.write("<embed src='"+swf+"' menu='true' quality='high' wmode='"+window_mode+"' bgcolor='"+couleur+"' width='"+hauteur+"' height='"+largeur+"' name='"+nom+"' align='middle' allowScriptAccess='always' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' flashvars='"+vars+"' />\n");
		}
	else{
		document.write("<embed src='"+swf+"' menu='true' quality='high' bgcolor='"+couleur+"' width='"+hauteur+"' height='"+largeur+"' name='"+nom+"' align='middle' allowScriptAccess='always' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' flashvars='"+vars+"' />\n");
		}
	document.write("</object>\n");
}

//function radioStarInit(){
//	$('input[type=radio].star').rating();
//}
