// Amadou
var ajaxDelete = {
	init : function() {
		var linkurl = YAHOO.util.Dom.getElementsByClassName('ajaxDelete', 'a');	
		for (var i = 0; i < linkurl.length; i++) {
			YAHOO.util.Event.addListener(linkurl[i], 'click', ajaxDelete.click);
		}
	},
	click : function(e) {
		YAHOO.util.Event.preventDefault(e);
		var target = e.currentTarget;

		var removeTarget = YAHOO.util.Dom.getAncestorByClassName(target, 'row');
		var rootTarget = YAHOO.util.Dom.getAncestorByClassName(target, 'row-group');
		
		var callback = {
			success: function(o) {
				removeTarget.innerHTML = "";
				rootTarget.removeChild(removeTarget);
			}
		}
		if(target.href != "#"){
			var transaction = YAHOO.util.Connect.asyncRequest('GET', target, callback, null);
		}
	}
};
YAHOO.util.Event.on(window, 'load', ajaxDelete.init);


// HYPRATEK, Nyx
// required by user_comments.tpl
function toggleComments() {
  var div = document.getElementById("more_comments").style;
  if (div.display == "none") {
	  	div.display="block"; 
		document.getElementById("toggle_link").innerHTML = "Masquer les commentaires suppl&eacute;mentaires";
  } else {
	  div.display="none";
	  document.getElementById("toggle_link").innerHTML = "Voir tous les commentaires";
  }
}
// HYPRATEK, Nyx

// HYPRAtek, Nyx
// required by addrecipes.tpl
function getbyid(id) { return YAHOO.util.Dom.get(id); }
function getbytag(parent, tag) { return parent.getElementsByTagName(tag); }
function create(type) { return document.createElement(type); }
function append(parent, child) { parent.appendChild(child); }
function remove(object) { YAHOO.util.Dom.getAncestorBy(object).removeChild(object); }
function removeAllChilds(object) { if (object && object.hasChildNodes && object.removeChild) { while (object.hasChildNodes()) { remove(object.firstChild); } } }
function overwrite(replacee, replacer) { YAHOO.util.Dom.getAncestorBy(replacee).replaceChild(replacer,replacee); }
//

var preparation_count=0;
function recipeAddPreparationItem() {
var d = getbyid('description-text').value;
if (d!="") {
	var input=create("input"); 
	input.type="hidden";
	input.value=d;
	input.name="preparation_list[]";
	input.id="pre"+preparation_count;
	append(getbyid("form_add_recipie"), input);
	preparation_count++;
	getbyid('description-text').value="";
	recipeDisPreparationItems();
}
}
function recipeDelPreparationItem(id) {
	remove( getbyid("pre"+id) )
	recipeDisPreparationItems();
}
function recipeDisPreparationItems() {
var par_bd=getbyid("preparation_tbody");
if(par_bd){
	preparation_count=0;
	var nodelist = getbytag(getbyid("form_add_recipie"),'input');
	var nodelist_length = nodelist.length;
	removeAllChilds(par_bd);
	for(var i=0;i<nodelist_length;i++){
	if (nodelist[i]['name']=="preparation_list[]") {
		nodelist[i]['id']="pre"+preparation_count;
		var par_tr = create('tr');
		var par_th = create('th');
		par_th.innerHTML = '&Eacute;tape '+(preparation_count+1)+'<br><a onClick="javascript:recipeDelPreparationItem('+preparation_count+')" href="javascript:return false"><img src="/media/images/ak/button_delete.gif" value="Enlever"></a> <a onClick="javascript:recipeEdiPreparationItem('+preparation_count+')" href="javascript:return false"><img src="/media/images/ak/button_edit.gif" value="Modifier"></a>';
		var par_td = create('td');
		par_td.id="pretd"+preparation_count;
		par_td.innerHTML = nodelist[i]['value'];
		append(par_bd, par_tr);
		append(par_tr, par_th);
		append(par_tr, par_td);
		preparation_count++;
	}
	}
}
}
function recipeEdiPreparationItem(id) {	
var step=getbyid("pre"+id);
var steptd=getbyid("pretd"+id);
var teaxtarea=create("textarea"); 
teaxtarea.innerHTML=step.value;
teaxtarea.id="pretxt"+id;
var input=create("input"); 
input.type="hidden";
input.value=step.value;
input.id="pre"+id;
input.name="preparation_list[]";
steptd.innerHTML="";
append(steptd, teaxtarea);
overwrite(step, input);
steptd.innerHTML+='<a href="javascript:recipeModPreparationItem('+id+',true);">Modifier</a> | <a href="javascript:recipeModPreparationItem('+id+',false)">Annuler</a>';
}
function recipeModPreparationItem(id,mod) {
var input=getbyid("pre"+id);
var step=getbyid("pretxt"+id);
var steptd=getbyid("pretd"+id);
if (mod==true) { input.value=step.value; }
remove(step);
steptd.innerHTML=input.value;
}
//
var ingredient_count=0;
function recipeAddIngredientItem() {
var n = getbyid('ingredient-name').value;
var q = getbyid('ingredient-quantity').value;
var t = getbyid('ingredient-type').value;

if (n.length<=1) {
    alert('Vous devez indiquer un nom d\'ingrédient');
    return false;
}

var patt = /^\d+[(\,\d)(\/\d)(\.\d)]?\d*$/;
if (q != '' && patt.test(q) == false) {
    alert('La quantité doit être un chiffre ou un nombre');
    return false;
}

/*
if (q!="" && t.length != 1) {
    alert('Vous devez indiquer une unité');
    return false;
}
*/

if (q=="" && t.length > 1) {
    alert('Vous devez indiquer une quantité ou enlever l\'unité');
    return false;
}



var par=getbyid("ingredient_tbody");
var frm=getbyid("form_add_recipie");
var par_tr=create("tr"); 
par_tr.id="ingtr"+ingredient_count;
var par_tda=create("td"); 
par_tda.innerHTML='<a onClick="javascript:recipeDelIngredientItem('+ingredient_count+')" href="javascript:return false"><img src="/media/images/ak/button_delete.gif" value="Enlever" align="left"></a>&nbsp;'+n;
var par_tdb=create("td"); 
par_tdb.setAttribute("colspan", "2");
par_tdb.innerHTML=q+" "+t;
var input_n=create("input"); 
input_n.type="hidden";
input_n.value=n;
input_n.name="ingredient_names[]";
var input_q=create("input"); 
input_q.type="hidden";
input_q.value=q;
input_q.name="ingredient_qntys[]";
var input_t=create("input"); 
input_t.type="hidden";
input_t.value=t;
input_t.name="ingredient_types[]";
append(par, par_tr);
append(par_tr, par_tda);
append(par_tr, par_tdb);
append(frm, input_n);
append(frm, input_q);
append(frm, input_t);
getbyid('ingredient-name').value="";
getbyid('ingredient-quantity').value="";
ingredient_count++;

}
function recipeDelIngredientItem(id) {
	remove( getbyid("ingtr"+id) );
}
// HYPRAtek, Nyx

// HYPRATEK, Nyx
// required by myrecipes.tpl
function onAddRecipe1ButtonClick(p_oEvent) { document.location="/membre/recettes/ajouter/1"; }
function onAddRecipe2ButtonClick(p_oEvent) { document.location="/membre/recettes/ajouter/2"; }
function onAddRecipe3ButtonClick(p_oEvent) { document.location="/membre/recettes/ajouter/3"; }
function onAddRecipe4ButtonClick(p_oEvent) { document.location="/membre/recettes/ajouter/4"; }
function loadRecipes() {
	for (var c=1;c<=4;c=c+1) 
	{
		showRecipes(c,1);
	}
}
//////////////////////DEBUT : SHOW RECIPES/////////////////////////////////////////////////
function showRecipes(cat, chunk) {
	
	//by Mohamed Alami Chahboune
	var liTags=YAHOO.util.Selector.query("#cat"+cat+"chunk"+chunk+" #cat"+cat+"chunk"+chunk+'in li');
	if (liTags.length == 0) {
		remove(getbyid("cat"+cat+"chunk"+chunk));
		document.getElementById("cat"+cat+"chunk"+chunk-1).style.display = "block";
		window.location.reload();
	} 
	
	for (var c=1;c<=1100;c=c+1) 
	{
		if (document.getElementById("cat"+cat+"chunk"+c)) {
			document.getElementById("cat"+cat+"chunk"+c).style.display = "none";
		}
	}
	
	//hypratek joshua added if.
	if (document.getElementById("cat"+cat+"chunk"+chunk))
	{
		document.getElementById("cat"+cat+"chunk"+chunk).style.display = "block";
	}
}
//////////////////////FIN : SHOW RECIPES//////////////////////////////////////////////////

//////////////////////DEBUT : ON DELETE RECIPE   //////////////////////////////////////////////////
function onDeleteRecipe(recipeId, chi, wid) {	
	  if ( confirm ("Voulez-vous effacer cette recette de votre livre de recette?") ) {
		var callback = {
			success: function(o) {
				if (o.responseText=="1") {
					remove(getbyid(chi));
				}
			}
			
		}
		var url = "/membre/recipe/Ajax.php?action=delete&id="+recipeId+"&wid="+wid;
		var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback, null);
		
		//by Mohamed Alami Chahboune
		var parent = document.getElementById(chi).parentNode.id ;
	  		
		var liTags=YAHOO.util.Selector.query("#"+parent+' li');
		if (liTags.length == 1) {
			window.location.reload();
		} 

	}
}
//////////////////////FIN : ON DELETE RECIPE    //////////////////////////////////////////////////


// HYPRATEK, Nyx
var total_categories = 15;
var total_pages = 3;
function loadBookmarks() {
	for (var c=1;c<=total_categories;c=c+1) 
	{
		showBookmarks(c,1);
	}
}
function showBookmarks(cat, chunk) {
	for (var c=1;c<=total_pages;c=c+1) 
	{
		if (document.getElementById("cat"+cat+"chunk"+c)) {
			document.getElementById("cat"+cat+"chunk"+c).style.display = "none";
		}
	}
	
	if(document.getElementById("cat"+cat+"chunk"+chunk)) {
		document.getElementById("cat"+cat+"chunk"+chunk).style.display = "block";
	}	
}

function setRating(val) {
	if (document.getElementById('rating')) {
		document.getElementById('rating').value = val;
	}
	if (document.getElementById('rating-stars')) {
		 e=document.getElementById('rating-stars');
		 x = val * 22;
		 e.style.width = x + 'px';
	}
}

////////////////////////DEBUT : ON CHECK RECIPE////////////////////////////////////////
function onCheckRecipe(recipeId, checkbox, wid) {
	
	if (confirm ("Voulez-vous changer les privileges ?") ) {
	var callback = {
		success: function(o) {
			if (o.responseText!="1") {
				checkbox.checked = false;
				
			}
		}
	}
	}

	var url = "/membre/recipe/Ajax.php?action=public&id="+recipeId+"&wid="+wid;
	var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback, null);
}
//////////////////////////FIN : ON CHECK RECIPE/////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////
// HYPRATEK, Joshua modified by Mohamed Alami Chahboune
function onDeleteBookmarkRecipe(bookmarkId, par, chi, wid) {
	//if (confirm ("Voulez-vous effacer ce favori de votre livre de favoris?") ) {
			
	var callback = {
		success: function(o) {
			if (o.responseText) {
				remove(getbyid(chi));
			}
		}
	}

	var url = "/membre/bookmarks/Ajax.php?action=deleteRecipe&id="+bookmarkId+"&wid="+wid;
	var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback, null);
	
	//by Mohamed Alami Chahboune
	var parent = document.getElementById(chi).parentNode.id ;
	var liTags=YAHOO.util.Selector.query("#"+parent+' li');
	
	if (liTags.length == 2) {
		window.location.reload();
	}
		
	//}
	
	
}
////////////////////////////////////////////////////////////////////////////////////////



function onDeleteBookmarkArticle(bookmarkId, par, chi, wid) {
	if (confirm ("Voulez-vous effacer ce favori de votre livre de favoris?") ) {
			
	var callback = {
		success: function(o) {
			if (o.responseText) {
				remove(getbyid(chi));
			}
		}
	}

	var url = "/membre/bookmarks/Ajax.php?action=deleteArticle&id="+bookmarkId+"&wid="+wid;
	var transaction = YAHOO.util.Connect.asyncRequest('GET', url, callback, null);
	}
}
////////////////////////////////////////////////////////////////////////////////////

