/*==================================================================================================
 #    #    ##    #    #  #   ####     ##    #####  #   ####   #    #
 ##   #   #  #   #    #  #  #    #   #  #     #    #  #    #  ##   #
 # #  #  #    #  #    #  #  #       #    #    #    #  #    #  # #  #
 #  # #  ######  #    #  #  #  ###  ######    #    #  #    #  #  # #
 #   ##  #    #   #  #   #  #    #  #    #    #    #  #    #  #   ##
 #    #  #    #    ##    #   ####   #    #    #    #   ####   #    #
==================================================================================================*/

//---- Menu accordeon + Images -------------------------------------------------------------------//
$(document).ready(function() {
	//---- Images
	$(function(){$('#big_img a').lightBox();});
	//---- Navigation
	$("dd").hide();
	$("dt a").click(function(){
		$("dd:visible").slideUp("slow");
		$(this).parent().next().slideDown("slow");
		return false;
	});
});

//---- Redirection -------------------------------------------------------------------------------//
function ShowCategories(page, family, family_name, maincat, maincat_name, category, category_name, item_ref) {
	document.getElementById('fcache_page').value = page;
	document.getElementById('fcache_family').value = family;
	document.getElementById('fcache_family_name').value = family_name;
	document.getElementById('fcache_maincat').value = maincat;
	document.getElementById('fcache_maincat_name').value = maincat_name;
	document.getElementById('fcache_category').value = category;
	document.getElementById('fcache_category_name').value = category_name;
	document.getElementById('fcache_item_ref').value = item_ref;
	document.getElementById('fcache_catalogue').submit();
}

function Redirect(page) {
	window.location.replace(page);
}

/*==================================================================================================
  ####     ##    #####    ##    #        ####    ####   #    #  ######
 #    #   #  #     #     #  #   #       #    #  #    #  #    #  #
 #       #    #    #    #    #  #       #    #  #       #    #  #####
 #       ######    #    ######  #       #    #  #  ###  #    #  #
 #    #  #    #    #    #    #  #       #    #  #    #  #    #  #
  ####   #    #    #    #    #  ######   ####    ####    ####   ######
==================================================================================================*/

//---- Affichage du des produits correspondant a la catégorie séléctionnée -----------------------//
function NavCatalogue(page, family, family_name, maincat, maincat_name, category, category_name, item_ref) {
	document.getElementById('fcache_page').value = page;
	document.getElementById('fcache_family').value = family;
	document.getElementById('fcache_family_name').value = family_name;
	document.getElementById('fcache_maincat').value = maincat;
	document.getElementById('fcache_maincat_name').value = maincat_name;
	document.getElementById('fcache_category').value = category;
	document.getElementById('fcache_category_name').value = category_name;
	document.getElementById('fcache_item_ref').value = item_ref;
	document.getElementById('fcache_catalogue').submit();
}

//---- Affichage de la fiche produit -------------------------------------------------------------//
function ShowItemSheet(page, family, family_name, maincat, maincat_name, category, category_name, item_ref) {
	document.getElementById('fcache_page').value = page;
	document.getElementById('fcache_family').value = family;
	document.getElementById('fcache_family_name').value = family_name;
	document.getElementById('fcache_maincat').value = maincat;
	document.getElementById('fcache_maincat_name').value = maincat_name;
	document.getElementById('fcache_category').value = category;
	document.getElementById('fcache_category_name').value = category_name;
	document.getElementById('fcache_item_ref').value = item_ref;
	document.getElementById('fcache_catalogue').submit();
}

//---- Action sur les miniatures -----------------------------------------------------------------//
function ShowBig(url_big, url_normal) {
	$("#big_img").html('');
	$("#big_img").html('<a href="' + url_big + '" title=""><img src="' + url_normal + '" alt="" id="big" /></a>');
	$('#big_img a').lightBox();
}

/*==================================================================================================
 #####   #####   ######    ##    #####    ####   #####   #    #  #    #  #####
 #    #  #    #  #        #  #   #    #  #    #  #    #  #    #  ##  ##  #    #
 #####   #    #  #####   #    #  #    #  #       #    #  #    #  # ## #  #####
 #    #  #####   #       ######  #    #  #       #####   #    #  #    #  #    #
 #    #  #   #   #       #    #  #    #  #    #  #   #   #    #  #    #  #    #
 #####   #    #  ######  #    #  #####    ####   #    #   ####   #    #  #####
==================================================================================================*/

//---- Breadcrumb : fonctions du fil d'ariane ----//
function BreadCrumb(page, family, family_name, maincat, maincat_name, category, category_name, item_ref) {
	document.getElementById('fcache_page').value = page;
	document.getElementById('fcache_family').value = family;
	document.getElementById('fcache_family_name').value = family_name;
	document.getElementById('fcache_maincat').value = maincat;
	document.getElementById('fcache_maincat_name').value = maincat_name;
	document.getElementById('fcache_category').value = category;
	document.getElementById('fcache_category_name').value = category_name;
	document.getElementById('fcache_item_ref').value = item_ref;
	document.getElementById('fcache_catalogue').submit();
}

/*==================================================================================================
 #####     ##     ####   #    #  ######  #####
 #    #   #  #   #       #   #   #         #
 #####   #    #   ####   ####    #####     #
 #    #  ######       #  #  #    #         #
 #    #  #    #  #    #  #   #   #         #
 #####   #    #   ####   #    #  ######    #
==================================================================================================*/

//---- Incrémente et décrémente le champ des quantitée -------------------------------------------//
//---- (0 => Check, 1 => Incrémente, 2 => Décrémente) --------------------------------------------//
function ModUnit(id, action) {
	var obj		 	 = document.getElementById(id);
	var quantity = parseInt(obj.value);

	switch(action){
		case 0:
			if (quantity <= 0 || quantity == '' || isNaN(quantity)) {
				quantity = 1;
			}
		break;

		case 1:
			quantity++;
		break;

		case 2:
			if (quantity > 1) {
				quantity--;
			}
		break;
	}

	obj.value = quantity;
}

//---- Ajout au panier ---------------------------------------------------------------------------//
function AddItem(id, page, family, maincat, category, reference) {
	var obj = document.getElementById(id);
	var quantity = parseInt(obj.value);

	$.ajax({
  type: "POST",
  url: "commons/basket.php",
  data: "page=" + page + "&family=" + family + "&maincat=" + maincat + "&category=" + category + "&reference=" + reference + "&quantity=" + quantity,
  success: function(msg){
		obj.value = 1;
		document.getElementById('basket').innerHTML = msg;
		}
	});
}

//---- Send Basket -------------------------------------------------------------------------------//
function ManageBasket(largeur, hauteur, options) {
	var id = Math.round(Math.random() * 100);
	var gauche = (screen.width - largeur) / 2;
	var haut = (screen.height - hauteur) / 2;

	if (options) {
		options = 'width=' + largeur + 'px, height=' + hauteur + 'px,  top=' + haut + ', left=' + gauche + ', ' + options;
	} else {
		options = 'width=' + largeur + 'px, height=' + hauteur + 'px,  top=' + haut + ', left=' + gauche;
	}

	document.open('basket_management.php', 'manage_basket', options);
}

function AddQty(obj) {
	var champ 		= AllTrim(obj.value);
	var quantity 	= parseInt(obj.value);

	if (champ == '') {
		quantity = 1;
	} else {
		quantity = quantity + 1;
	}

	obj.value = quantity;
}

function IsNumber(obj) {
	var chaine = AllTrim(obj.value);

	if (chaine != '') {
		if (isNaN(chaine)) {
			obj.value = '';
			alert("- This field only accept numbers !");
		}
	}
}

function AllTrim(str) {
	return str.replace(/^\s+|\s+$/g, '');
}

/*==================================================================================================
   ##     ####    ####    ####   #    #  #    #  #####
  #  #   #    #  #    #  #    #  #    #  ##   #    #
 #    #  #       #       #    #  #    #  # #  #    #
 ######  #       #       #    #  #    #  #  # #    #
 #    #  #    #  #    #  #    #  #    #  #   ##    #
 #    #   ####    ####    ####    ####   #    #    #
==================================================================================================*/

//---- Vérification du formulaire de connexion ---------------------------------------------------//
function CheckConnect() {
	var reqfields = document.getElementById('log_required').value.split(',');
	var cpt = 0;

	//---- Tout les champs en blanc
	for (var j = 0; j < reqfields.length; j++) {
		var field = document.getElementById(reqfields[j]);
		field.style.backgroundColor = '#FFF';
	}

	//---- Controle les champs requis
	for (var i = 0; i < reqfields.length; i++) {
		var field = document.getElementById(reqfields[i]);

		if ( (field.value == '') && (field.id != 'log_email') ) {
			cf_adderr(field);
		}

		if ( (field.id == 'log_email') && (!cf_isEmailAddr(field.value)) ) {
			cf_adderr(field);
		}
	}

	//---- Si le compteur est égal à 0 => Aucune erreur => Crypt MD5 et envoie
	if (cpt == 0) {
		document.getElementById('log_md5').value = MD5(document.getElementById('log_password').value);
		return true;
	} else {
		return false;
	}

	function cf_adderr(o) {
		o.style.backgroundColor = '#FCC';
		cpt++;
	}

	function cf_isEmailAddr(str) {
		return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
	}
}

//---- Vérification du formulaire de pre inscription ---------------------------------------------//
function CheckPreReg() {
	var reqfields = document.getElementById('pre_required').value.split(',');
	var cpt = 0;

	//---- Tout les champs en blanc
	for (var j = 0; j < reqfields.length; j++) {
		var field = document.getElementById(reqfields[j]);
		field.style.backgroundColor = '#FFF';
	}

	//---- Controle les champs requis
	for (var i = 0; i < reqfields.length; i++) {
		var field = document.getElementById(reqfields[i]);

		if ((field.value == '') && (field.id != 'pre_email')){
			cf_adderr(field);
		}

		if ((field.id == 'pre_email') && (!cf_isEmailAddr(field.value))) {
			cf_adderr(field);
		}
	}

	//---- Si le compteur est égal à 0 => Aucune erreur => Crypt MD5 et envoie
	if (cpt == 0) {
		return true;
	} else {
		return false;
	}

	function cf_adderr(o) {
		o.style.backgroundColor = '#FCC';
		cpt++;
	}

	function cf_isEmailAddr(str) {
		return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
	}
}

//---- Vérification du formulaire d'inscription --------------------------------------------------//
function CheckRegistration() {
	var reqfields = document.getElementById('required').value.split(',');
	var cpt = 0;

	//---- Tout les champs en blanc
	for (var j = 0; j < reqfields.length; j++) {
		var field = document.getElementById(reqfields[j]);
		field.style.backgroundColor = '#FFF';
	}

	//---- Controle les champs requis
	for (var i = 0; i < reqfields.length; i++) {
		var field = document.getElementById(reqfields[i]);

		if ((field.value == '') && (field.id != 'email')) {
			cf_adderr(field);
		}

		if ((field.id == 'email') && (!cf_isEmailAddr(field.value))) {
			cf_adderr(field);
		}
	}

	//---- Si le compteur est égal à 0 => Aucune erreur
	if (cpt == 0) {
		document.getElementById('md5').value = MD5(document.getElementById('password').value);
		return true;
	} else {
		return false;
	}

	function cf_adderr(o) {
		o.style.backgroundColor = '#FCC';
		cpt++;
	}

	function cf_isEmailAddr(str) {
		return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
	}
}

/*==================================================================================================
  ####    ####   #    #  #####    ##     ####   #####
 #    #  #    #  ##   #    #     #  #   #    #    #
 #       #    #  # #  #    #    #    #  #         #
 #       #    #  #  # #    #    ######  #         #
 #    #  #    #  #   ##    #    #    #  #    #    #
  ####    ####   #    #    #    #    #   ####     #
==================================================================================================*/

//---- Vérification du formulaire de contact -----------------------------------------------------//
function CheckContact() {
	var reqfields = document.getElementById('required').value.split(',');
	var cpt = 0;

	//---- Tout les champs en blanc
	for (var j = 0; j < reqfields.length; j++) {
		var field = document.getElementById(reqfields[j]);
		field.style.backgroundColor = '#FFF';
	}

	//---- Controle les champs requis
	for (var i = 0; i < reqfields.length; i++) {
		var field = document.getElementById(reqfields[i]);

		if ((field.value == '') && (field.id != 'email')) {
			cf_adderr(field);
		}

		if ((field.id == 'email') && (!cf_isEmailAddr(field.value))) {
			cf_adderr(field);
		}
	}

	//---- Si le compteur est égal à 0 => Aucune erreur
	if (cpt == 0) {
		return true;
	} else {
		return false;
	}

	function cf_adderr(o) {
		o.style.backgroundColor = '#FCC';
		cpt++;
	}

	function cf_isEmailAddr(str) {
		return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
	}
}

/*==================================================================================================
  ####   ######    ##    #####    ####   #    #
 #       #        #  #   #    #  #    #  #    #
  ####   #####   #    #  #    #  #       ######
      #  #       ######  #####   #       #    #
 #    #  #       #    #  #   #   #    #  #    #
  ####   ######  #    #  #    #   ####   #    #
==================================================================================================*/

function CheckSearch() {
	var reqfields = document.getElementById('search_required').value.split(',');
	var cpt = 0;

	//---- Tout les champs en blanc
	for (var j = 0; j < reqfields.length; j++) {
		var field = document.getElementById(reqfields[j]);
		field.style.backgroundColor = '#FFF';
	}

	//---- Controle les champs requis
	for (var i = 0; i < reqfields.length; i++) {
		var field = document.getElementById(reqfields[i]);

		if ((field.value == '') && (field.id != 'email')) {
			cf_adderr(field);
		}

		if ((field.id == 'email') && (!cf_isEmailAddr(field.value))) {
			cf_adderr(field);
		}
	}

	//---- Si le compteur est égal à 0 => Aucune erreur
	if (cpt == 0) {
		return true;
	} else {
		return false;
	}

	function cf_adderr(o) {
		o.style.backgroundColor = '#FCC';
		cpt++;
	}

	function cf_isEmailAddr(str) {
		return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
	}
}