$(document).ready(function(){
	
	/* Fonction qui fait scroller les images des biens en en-tête de page */
        $('#slider').bxSlider({
            auto: true,
			displaySlideQty: 6,
            moveSlideQty: 1,
			speed: 2000,
			pause: 4000,
            autoHover: true,
            pager: false,
            controls: false
        });
	
	/* Fonction qui change l'apparence d'une image */	
	$("img.swap").live("mouseover", function() {
            var src = $(this).attr("src").replace("_bw", "");
            $(this).attr("src", src);
        })
		.live("mouseout", function() {
            var src = $(this).attr("src").match(/[^\.]+/) + "_bw.png";
            $(this).attr("src", src);
	});
	
/* Fonction qui valide puis POST le formulaire des acquéreurs */
	$("#submit_acquereur_form").click(function() {

		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_acquereur .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "submit_acquereur_form.php", data: $("#form_acquereur").serialize(), success: function(result){ $("#div_acquereur").html(result); } });	}
		})
		
/* Fonction qui valide puis POST le formulaire des vendeurs */
	$("#submit_vendeur_form").click(function() {

		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_vendeur .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "submit_vendeur_form.php", data: $("#form_vendeur").serialize(), success: function(result){ $("#div_vendeur").html(result); } });	}
		})
		
/* Fonction qui valide puis POST le formulaire de contact */
	$("#submit_contact_form").click(function() {

		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_contact .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "submit_contact_form.php", data: $("#form_contact").serialize(), success: function(result){ $("#div_contact").html(result); } });	}
	})

/* Fonctionnalitées Agences */

	/* Recherche par ville */
	$("#ville").autocomplete({
		source: "agence/form_functions.php?function=rechercher_villes",
		minLength: 2,
		select: function(event, ui) {
		$("#ville").val(ui.item.ville);
		$("#code_postal").val(ui.item.code_postal);
		return false;
		}
	});
	
	/* Recherche par code postal */
	$("#code_postal").autocomplete({
		source: "agence/form_functions.php?function=rechercher_cp",
		minLength: 2,
		select: function(event, ui) {
		$("#code_postal").val(ui.item.code_postal);
		$("#ville").val(ui.item.ville);
		return false;
		}
	});

	/* Recherche par ville (bien) */
	$("#ville_bien").autocomplete({
		source: "agence/form_functions.php?function=rechercher_villes",
		minLength: 2,
		select: function(event, ui) {
		$("#ville_bien").val(ui.item.ville);
		$("#code_postal_bien").val(ui.item.code_postal);
		return false;
		}
	});
	
	/* Recherche par code postal (bien) */
	$("#code_postal_bien").autocomplete({
		source: "agence/form_functions.php?function=rechercher_cp",
		minLength: 2,
		select: function(event, ui) {
		$("#code_postal_bien").val(ui.item.code_postal);
		$("#ville_bien").val(ui.item.ville);
		return false;
		}
	});
	
	/* Recherche par nom de vendeur */
	$("#nom_vendeur").autocomplete({
		source: "agence/form_functions.php?function=rechercher_nom_vendeur",
		minLength: 2,
		select: function(event, ui) {
		$("#nom_vendeur").val(ui.item.value);
		}
	});
	
/**********************************************************************************************************************************************************************************************/

	/* Fonction qui valide puis POST le formulaire d'ajout de bien */
	$("#submit_ajouter_bien").click(function() {
		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_ajouter_bien .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=ajouter_bien", data: $("#form_ajouter_bien").serialize(), success: function(result){ $("#div_ajouter_bien").html(result); } });	}
		})
		
	/* Fonction qui valide puis POST le formulaire de modification de bien */
	$("#submit_modifier_bien").click(function() {
		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_modifier_bien .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=modifier_bien", data: $("#form_modifier_bien").serialize(), success: function(result){ $("#div_modifier_bien").html(result); } });	}
		})
		
	/* Fonction qui supprime un bien après confirmation */
//	$("#submit_supprimer_bien").live("click", function() {
//		if(confirm('Supprimer ce bien ?') == true) {	
//			/* On récupère l'id du bien */	
//			bien_id = $("#bien_id").attr('value');
//			/* On supprime le fichier dans la BDD */
//			$.ajax({ type: "get", url: "agence/form_functions.php?function=supprimer_bien&bien_id=" + bien_id });
//			/* Listing des biens */
//			window.location = 'agence/lister_biens';
//		}
//	})

/**********************************************************************************************************************************************************************************************/

	/* Fonction qui valide puis POST le formulaire d'ajout d'acquéreur */
	$("#submit_ajouter_acquereur").click(function() {
		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_ajouter_acquereur .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=ajouter_acquereur", data: $("#form_ajouter_acquereur").serialize(), success: function(result){ $("#div_ajouter_acquereur").html(result); } });	}
		})
		
	/* Fonction qui valide puis POST le formulaire de modification d'acquéreur */
	$("#submit_modifier_acquereur").click(function() {
		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_modifier_acquereur .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=modifier_acquereur", data: $("#form_modifier_acquereur").serialize(), success: function(result){ $("#div_modifier_acquereur").html(result); } });	}
		})
		
	/* Fonction qui supprime un acquéreur après confirmation */
	$("#submit_supprimer_acquereur").live("click", function() {
		if(confirm('Supprimer cet acquéreur ?') == true) {	
			/* On récupère l'id du bien */	
			acquereur_id = $("#acquereur_id").attr('value');
			/* On supprime le fichier dans la BDD */
			$.ajax({ type: "get", url: "agence/form_functions.php?function=supprimer_acquereur&acquereur_id=" + acquereur_id });
			/* Listing des acquéreurs */
			window.location = 'agence/lister_acquereurs';
		}
	})

/**********************************************************************************************************************************************************************************************/
		
	/* Fonction qui définit une photo en tant que photo par défaut d'un bien */
	$(".set_default_photo").live("click", function() {
		if(confirm('Définir cette photo en tant que photo par défaut pour ce bien ?') == true) {	
			/* On récupère l'id du bien */	
			bien_id = $(this).attr('bien_id');
			photo_id = $(this).attr('photo_id');
			/* On supprime la photo dans la BDD et on refresh les photos */
			$.ajax({ type: "get", url: "agence/form_functions.php?function=definir_photo_defaut&bien_id=" + bien_id + "&photo_id=" + photo_id, success: function(result){ alert('Changement effectué'); } });
		}
	})	
	
	/* Fonction qui supprime une photo d'un bien */
	$(".delete_photo").live("click", function() {
		if(confirm('Supprimer cette photo ?') == true) {	
			/* On récupère l'id du bien et de la photo */	
			bien_id = $(this).attr('bien_id');
			photo_id = $(this).attr('photo_id');
			/* On supprime la photo dans la BDD et on refresh les photos */
			$.ajax({ type: "get", url: "agence/form_functions.php?function=supprimer_photo&bien_id=" + bien_id + "&photo_id=" + photo_id, success: function(result){ $("#div_photos_existantes").html(result); } });		}
	})	
	
/**********************************************************************************************************************************************************************************************/

	/* Fonction qui valide puis POST le formulaire de recherche de bien */
//	$("#submit_rechercher_bien").click(function() {
//		valid = true;		
//		/* On vérifie que tous les champs nécessaires soient bien remplis */
//		$('form#form_rechercher_bien .required_field:empty').each( function(n,element) {
//			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
//		} );
//	
//		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=rechercher_bien", data: $("#form_rechercher_bien").serialize(), success: function(result){ $("#div_rechercher_bien").html(result); } }); $("#form_rechercher_bien").toggle('fold', 500 ); }
//		})
	
/**********************************************************************************************************************************************************************************************/

	/* Fonction qui valide puis POST le formulaire d'ajout d'acquéreur */
	$("#submit_calculer_rente").click(function() {
		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_calculer_rente .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=calculer_rente", data: $("#form_calculer_rente").serialize(), success: function(result){ $("#div_calculer_rente").html(result); } });	}
		})

/**********************************************************************************************************************************************************************************************/

/* Fonction qui renvoit à la page précédente */
	$(".return").live("click", function() {
		/* On récupère l'url de la page précédente */
		previous_page = $(this).attr('previous_page');		
		window.location = previous_page;
	})
	
/**********************************************************************************************************************************************************************************************/

/* Fonction qui valide puis POST le formulaire de contact depuis Outils */
	$("#submit_contact_agence_form").click(function() {

		valid = true;		
		/* On vérifie que tous les champs nécessaires soient bien remplis */
		$('form#form_contact_agence .required_field:empty').each( function(n,element) {
			if ($(element).val()=='') { valid = false; $(element).effect('highlight', {color: 'red'}); }
		} );
	
		if(valid == true) {	$.ajax({ type: "post", url: "agence/form_functions.php?function=nous_contacter_agence", data: $("#form_contact_agence").serialize(), success: function(result){ $("#div_contact_agence").html(result); } });	}
	})

/* Fonction Lightbox sur photos du bien (page afficher) */

	$('div#photos_bien_full a').lightBox();
	$('div#div_photos_existantes a').lightBox();

/* Fonctions diverses pour formulaires */
	/* Numérique uniquement (+ le point) */
	$('.numeric').numeric({allow:'.'});

})
