/* //////////////////////////////////////////////////////////////////////
	Fichier créé par Mathieu Gauthier
	Date de création : 31 aout 2009
////////////////////////////////////////////////////////////////////////*/
var aMontrer = new Array();
var aIgnorer = new Array();
$(document).ready(function(){
	calculResults();
	//Ouvrir filtre
	$('#open-filter-link').click(function(){
		$('#movable-content').slideToggle();
		return false;
	})
	
	//Fermer filtre
	$('#close-filter-link').click(function(){
		$('#movable-content').slideUp();
		return false;
	})	
	
	//Efface toutes les données
	$('#effacer').click(function(){
		$('p#montrer').html("");
		$('p#ignorer').html("");
		aMontrer = new Array();
		aIgnorer = new Array();
		$('#filter-list :checkbox').each(function(){
			$('#'+this.id).attr('checked',false);
		}); 
		$('#tags-total-nom').attr('value',"vide")
		$('#tags-total-nom-ign').attr('value',"vide")
		$('#ajaxloader').show();
		calculResults();
		return false;
	})					   
	
	//Action pour le champs de recherche
	$('#txtfield').keyup(function(){
		$('#search').attr('value',$('#txtfield').val());
		if($('#txtfield').val() == ""){
			$('#search').attr('value','vide');
		}
		$('#ajaxloader').show();
		setTimeout(calculResults(),300);
	})	
	/////////////////// Ouvre les niveaux 0 au clic d'une catégorie /////////////////////////////
	$('.niv0-toggle').click(function(){
		id = (this.id).substring(4,(this.id).length);
		$('#liste-niv0-'+id).slideToggle('slow');
		if($('#cat-'+id).attr('rel')=="closed"){
			$('#cat-'+id).attr('rel','opened')
			couleur = $('#cat-image-'+id).attr('src').substring($('#cat-image-'+id).attr('src').indexOf('-')+1,$('#cat-image-'+id).attr('src').indexOf('.'))
			$('#cat-image-'+id).attr('src','/public/css/interface/praticopratiques/grosMoins-'+couleur+'.gif')
		}else{
			$('#cat-'+id).attr('rel','closed')
			couleur = $('#cat-image-'+id).attr('src').substring($('#cat-image-'+id).attr('src').indexOf('-')+1,$('#cat-image-'+id).attr('src').indexOf('.'))
			$('#cat-image-'+id).attr('src','/public/css/interface/praticopratiques/grosPlus-'+couleur+'.gif')
		}
		return false;
	})
	
	/////////////////// Ouvre les niveaux 1 au clic d'une catégorie /////////////////////////////
	$('.niv1-toggle').click(function(){
		id = (this.id).substring(5,(this.id).length);
		$('#liste-niv1-'+id).slideToggle('slow');
		if($('#niv0-'+id).attr('rel')=="closed"){
			$('#niv0-'+id).attr('rel','opened')
			$('#niv0-image-'+id).attr('src','/public/css/interface/praticopratiques/moins-gris.gif')
		}else{
			$('#niv0-'+id).attr('rel','closed')
			$('#niv0-image-'+id).attr('src','/public/css/interface/praticopratiques/plus-gris.gif')
		}
		return false;
	})
	
	/////////////////// Ouvre les niveaux 2 au clic d'une catégorie /////////////////////////////
	$('.niv2-toggle').click(function(){
		id = (this.id).substring(5,(this.id).length);
		$('#liste-niv2-'+id).slideToggle('slow');
		if($('#niv1-'+id).attr('rel')=="closed"){
			$('#niv1-'+id).attr('rel','opened')
			$('#niv1-image-'+id).attr('src','/public/css/interface/praticopratiques/moins-gris.gif')
		}else{
			$('#niv1-'+id).attr('rel','closed')
			$('#niv1-image-'+id).attr('src','/public/css/interface/praticopratiques/plus-gris.gif')
		}
		return false;
	})
	
	/////////////////// Section pour les checkbox ////////////////////////////////////////////
	$('#filter-list :checkbox').click(function(){
		//Compte le nombre d'éléments cochés par catégorie
		cat = (this.id).substring((this.id).indexOf("-")+1,(this.id).lastIndexOf("-"));
		id = (this.id).substring((this.id).lastIndexOf("-")+1,(this.id).length);
		if($('#checkbox-'+cat+'-'+id).is(':checked')){
			//////////////////////////// AJOUT DE DONNÉE /////////////////////////////////
			valeur = ($('#checkbox-'+cat+'-'+id).attr('value')).substring(($('#checkbox-'+cat+'-'+id).attr('value')).indexOf('-')+1,($('#checkbox-'+cat+'-'+id).attr('value')).length);
			id = ($('#checkbox-'+cat+'-'+id).attr('value')).substring(0,($('#checkbox-'+cat+'-'+id).attr('value')).indexOf('-'));
			
			//Modifie la liste affichée à l'écran
			descendre = '<a href="#" id="descendre-'+id+'" onclick="javascript:descendre_contenu('+id+');return false"><img src="http://www.pratico-pratiques.com/public/css/interface/praticopratiques/descendre.gif" alt="Ignorer"></a>';
			supprimer = '<a href="#" id="supprimer-'+id+'" onclick="javascript:supprimer_contenu('+id+',&quot;montrer&quot;);return false"><img src="http://www.pratico-pratiques.com/public/css/interface/praticopratiques/supprimer-gris.gif" alt="Supprimer"></a>';
			$('p#montrer').html($('p#montrer').html()+'<span id="span-'+id+'">'+valeur+supprimer+descendre+'</span>');
			aMontrer.push('<span id="span-'+id+'">'+valeur+supprimer+descendre+'</span>');
			
			//Modifie la liste à poster avec le formulaire
			if($('#tags-total-nom').attr('value')=="vide"){
				$('#tags-total-nom').attr('value',valeur)
			}else{
				$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value')+'|'+valeur)
			}
			
		}else{
			//////////////////////////// RETRAIT DE DONNÉE /////////////////////////////////
			valeur = ($('#checkbox-'+cat+'-'+id).attr('value')).substring(($('#checkbox-'+cat+'-'+id).attr('value')).indexOf('-')+1,($('#checkbox-'+cat+'-'+id).attr('value')).length);
			id = ($('#checkbox-'+cat+'-'+id).attr('value')).substring(0,($('#checkbox-'+cat+'-'+id).attr('value')).indexOf('-'));
			
			//Modifie la liste affichée à l'écran
			supprimer_contenu_checkbox(id,valeur);
			
			//Modifie la liste à poster avec le formulaire
			if($('#tags-total-nom').attr('value')==valeur){
				$('#tags-total-nom').attr('value',"vide")
			}else{
				if($('#tags-total-nom').attr('value').indexOf("|"+valeur) != -1){
					$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace("|"+valeur,""))
				}else{
					$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace(valeur+"|",""))
				}
			}
		}
		$('#ajaxloader').show();
		calculResults();
	})
	
	//Bouton radio pour le filtre de recettes
 	$("input[@name=tablesRadio]").click(function(){
		$('#typeTable-filter').attr('value', $('input[name=tablesRadio]:checked').val());
		$('#ajaxloader').show();
		calculResults();
	});

});

function descendre_contenu(idDescente){
	$('p#montrer').html("");
	for(var i=0;i<aMontrer.length;i++){
		if(aMontrer[i].indexOf(idDescente)!=-1){
			idDescente = idDescente+"";
			positionStartValeur = ((aMontrer[i].toLowerCase()).indexOf(idDescente))+idDescente.length+2;
			positionFinValeur = ((aMontrer[i].toLowerCase()).substring(positionStartValeur)).indexOf("<a");
			valeurDescente = (aMontrer[i]).substring(positionStartValeur,positionStartValeur+positionFinValeur);
			
			//Modifie la liste affiché à l'écran
			monterDescente = '<a href="#" id="monter-'+idDescente+'" onclick="javascript:monter_contenu('+idDescente+');return false"><img src="http://www.pratico-pratiques.com/public/css/interface/praticopratiques/monter.gif" alt="Montrer"></a>';
			supprimerDescente = '<a href="#" id="supprimer-'+idDescente+'" onclick="javascript:supprimer_contenu('+idDescente+',&quot;ignorer&quot;);return false"><img src="http://www.pratico-pratiques.com/public/css/interface/praticopratiques/supprimer-gris.gif" alt="Supprimer"></a>';
			$('p#ignorer').html($('p#ignorer').html()+'<span id="span-'+idDescente+'">'+valeurDescente+supprimerDescente+monterDescente+'</span>');
			var nbrToRemove = i;
			aIgnorer.push('<span id="span-'+idDescente+'">'+valeurDescente+supprimerDescente+monterDescente+'</span>');
			
			//Modifie la liste à poster avec le formulaire
			if($('#tags-total-nom').attr('value')==valeurDescente){
				$('#tags-total-nom').attr('value',"vide")
			}else{
				if($('#tags-total-nom').attr('value').indexOf("|"+valeurDescente) != -1){
					$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace("|"+valeurDescente,""))
				}else{
					$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace(valeurDescente+"|",""))
				}
			}
			if($('#tags-total-nom-ign').attr('value')!='vide'){
				$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value')+'|'+valeurDescente)
			}else{
				$('#tags-total-nom-ign').attr('value',valeurDescente)
			}
		}else{
			$('p#montrer').html($('p#montrer').html()+aMontrer[i]);
		}
	}
	aMontrer.splice(nbrToRemove,1)
	$('#ajaxloader').show();
	calculResults();
}

function monter_contenu(idMontage){
	$('p#ignorer').html("");
	for(var i=0;i<aIgnorer.length;i++){
		if(aIgnorer[i].indexOf(idMontage)!=-1){
			idMontage = idMontage+"";
			positionStartValeur = ((aIgnorer[i].toLowerCase()).indexOf(idMontage))+idMontage.length+2;
			positionFinValeur = ((aIgnorer[i].toLowerCase()).substring(positionStartValeur)).indexOf("<a");
			valeurMontage = (aIgnorer[i]).substring(positionStartValeur,positionStartValeur+positionFinValeur);
			
			//Modifie la liste affiché à l'écran
			descenteMontage = '<a href="#" id="descendre-'+idMontage+'" onclick="javascript:descendre_contenu('+idMontage+');return false"><img src="http://www.pratico-pratiques.com/public/css/interface/praticopratiques/descendre.gif" alt="Ignorer"></a>';
			supprimerMontage = '<a href="#" id="supprimer-'+idMontage+'" onclick="javascript:supprimer_contenu('+idMontage+',&quot;montrer&quot;);return false"><img src="http://www.pratico-pratiques.com/public/css/interface/praticopratiques/supprimer-gris.gif" alt="Supprimer"></a>';
			$('p#montrer').html($('p#montrer').html()+'<span id="span-'+idMontage+'">'+valeurMontage+supprimerMontage+descenteMontage+'</span>');
			var nbrToRemove = i;
			aMontrer.push('<span id="span-'+idMontage+'">'+valeurMontage+supprimerMontage+descenteMontage+'</span>');
			
			//Modifie la liste à poster avec le formulaire
			if($('#tags-total-nom-ign').attr('value')==valeurMontage){
				$('#tags-total-nom-ign').attr('value',"vide")
			}else{
				if($('#tags-total-nom-ign').attr('value').indexOf("|"+valeurMontage) != -1){
					$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value').replace("|"+valeurMontage,""))
				}else{
					$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value').replace(valeurMontage+"|",""))
				}
			}
			if($('#tags-total-nom').attr('value')!='vide'){
				$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value')+'|'+valeurMontage)
			}else{
				$('#tags-total-nom').attr('value',valeurMontage)
			}
		}else{
			$('p#ignorer').html($('p#ignorer').html()+aIgnorer[i]);
		}
	}
	aIgnorer.splice(nbrToRemove,1)
	$('#ajaxloader').show();
	calculResults();
}

function supprimer_contenu(idSupression,tableau){
	if(tableau=="montrer"){
		$('p#montrer').html("");
		for(var i=0;i<aMontrer.length;i++){
			if(aMontrer[i].indexOf(idSupression)!=-1){
				var nbrToDelete = i;
			}else{
				$('p#montrer').html($('p#montrer').html()+aMontrer[i]);
			}
		}
		aMontrer.splice(nbrToDelete,1)
	}else{
		$('p#ignorer').html("");
		for(var i=0;i<aIgnorer.length;i++){
			if(aIgnorer[i].indexOf(idSupression)!=-1){
				var nbrToDelete = i;
			}else{
				$('p#ignorer').html($('p#ignorer').html()+aIgnorer[i]);
			}
		}
		aIgnorer.splice(nbrToDelete,1)
	}
	
	//Décochage de la checkbox
	$('#filter-list :checkbox').each(function(){
		idCheck = this.id;
		if(idCheck.indexOf(idSupression)!=-1){
			$('#'+idCheck).attr('checked',false);
			valeur = ($('#'+idCheck).attr('value')).substring(($('#'+idCheck).attr('value')).indexOf('-')+1);
			//Modifie la liste à poster avec le formulaire
			if($('#tags-total-nom').attr('value')==valeur){
				$('#tags-total-nom').attr('value',"vide")
			}else{
				if($('#tags-total-nom').attr('value').indexOf("|"+valeur) != -1){
					$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace("|"+valeur,""))
				}else{
					$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace(valeur+"|",""))
				}
			}
			if($('#tags-total-nom-ign').attr('value')==valeur){
				$('#tags-total-nom-ign').attr('value',"vide")
			}else{
				if($('#tags-total-nom-ign').attr('value').indexOf("|"+valeur) != -1){
					$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value').replace("|"+valeur,""))
				}else{
					$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value').replace(valeur+"|",""))
				}
			}
			$('#ajaxloader').show();
			calculResults();
			return false;
		}
	}); 
}

function supprimer_contenu_checkbox(idSupression,valeurSupression){
	$('p#montrer').html("");
	for(var i=0;i<aMontrer.length;i++){
		if(aMontrer[i].indexOf(idSupression)!=-1){
			var nbrToDelete = i;
		}else{
			$('p#montrer').html($('p#montrer').html()+aMontrer[i]);
		}
	}
	aMontrer.splice(nbrToDelete,1)
	$('p#ignorer').html("");
	for(var i=0;i<aIgnorer.length;i++){
		if(aIgnorer[i].indexOf(idSupression)!=-1){
			var nbrToDelete = i;
		}else{
			$('p#ignorer').html($('p#ignorer').html()+aIgnorer[i]);
		}
	}
	aIgnorer.splice(nbrToDelete,1)
	
	//Modifie la liste à poster avec le formulaire
	if($('#tags-total-nom').attr('value')==valeurSupression){
		$('#tags-total-nom').attr('value',"vide")
	}else{
		if($('#tags-total-nom').attr('value').indexOf("|"+valeurSupression) != -1){
			$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace("|"+valeurSupression,""))
		}else{
			$('#tags-total-nom').attr('value',$('#tags-total-nom').attr('value').replace(valeurSupression+"|",""))
		}
	}
	if($('#tags-total-nom-ign').attr('value')==valeurSupression){
		$('#tags-total-nom-ign').attr('value',"vide")
	}else{
		if($('#tags-total-nom-ign').attr('value').indexOf("|"+valeurSupression) != -1){
			$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value').replace("|"+valeurSupression,""))
		}else{
			$('#tags-total-nom-ign').attr('value',$('#tags-total-nom-ign').attr('value').replace(valeurSupression+"|",""))
		}
	}
}

function calculResults()  {

	dataToSend = {

				'queryString': $('#tags-total-nom').attr('value'),
				
				'queryString-ign': $('#tags-total-nom-ign').attr('value'),

				'typeTable-filter': $('#typeTable-filter').attr('value'),
				
				'site-filter': $('#site-filter').attr('value'),
				
				'search': $('#search').attr('value'),
				
				'langue': $('#langue').attr('value')

			 };

	$.ajax({

	  data:dataToSend,

	  type: "POST",
	  
	  url: "/public/ajax/filter.php",

	  success: function(msg){
		  	var array = msg.split('|');
		  	$('#ajaxloader').hide();
			$('#resultats span').html(array[0])
			$('#requete-filtre').attr('value',array[1]);
			if(array[0]==0){
				$('#submit-filtre').hide();	
			}else{
				$('#submit-filtre').show();	
			}
	  }

	});
}