/**
* @Copyright Copyright (C) 2010 - doymer.com
* @Based on mod LCA by JonimJnm - www.JoniJnm.es
* @license GNU/GPL http://www.gnu.org/copyleft/gpl.html
**/

ARTTREE_COOKIE_TIME_SAVED = 60; //in minutes

// Intentar garantizar que no va a existir colisión de funciones con otros módulos
// Try to guarantee we are not having a name collision with functions of other's modules
function artTree(n, m, id, img) {
	var li = "arttree"+n+"_"+m+"_"+id;
	var a = "arttree"+n+"_"+m+"a_"+id;
	if (document.getElementById(li)) {
		if (document.getElementById(li).style.display == "none") {
			artTree_add(n, m, id);
			document.getElementById(li).style.display = "";
			if (img)
				document.getElementById(a).src = ARTTREE_ATTRIBS[n+"exp"];
			else
				document.getElementById(a).innerHTML = ARTTREE_ATTRIBS[n+"exp"];
		}
		else {
			artTree_delete(n, m, id);
			document.getElementById(li).style.display = "none";
			if (img)
				document.getElementById(a).src = ARTTREE_ATTRIBS[n+"col"];
			else
				document.getElementById(a).innerHTML = ARTTREE_ATTRIBS[n+"col"];
		}
	}
	artTree_save(n);
}

function artTree_implode(glue, pieces) {
	var out = "";
	var aux = "";
	pieces.forEach(
		function(e) {
			out += aux + e;
			aux=glue;
		}
	);
	return out;
}

function artTree_save(id) {
	var out = [];
	var date=new Date();
	date.setTime(date.getTime()+(ARTTREE_COOKIE_TIME_SAVED*60*1000));
	out[0] = []; out[1] = [];
	for (var i=0; i<arttree_shows[0].length; i++) {
	  var partes = arttree_shows[0][i].split("-");
	  if ( (partes.length == 2) && (partes[0] == id) ) {
	    out[0][out[0].length] = partes[1]; 
	  }
	}
	for (var i=0; i<arttree_shows[1].length; i++) {
	  var partes = arttree_shows[1][i].split("-");
	  if ( (partes.length == 2) && (partes[0] == id) ) {
	    out[1][out[1].length] = partes[1]; 
	  }
	}
	var cooki = artTree_implode(",",out[0])+"."+artTree_implode(",",out[1]);
	document.cookie = "ART_TREE_SHOWS"+id+"="+cooki+"; expires="+date.toGMTString()+"; path=/;";
}

function artTree_exists(n, m, id) {
	for (var i=0; i<arttree_shows[m].length; i++) {
		if (arttree_shows[m][i] == n + '-' + id)
			return i;
	}
	return false;
}

function artTree_add(n, m, id) {
	if (typeof(artTree_exists(n, m, id)) != "number")
		arttree_shows[m][arttree_shows[m].length] = n + '-' + id;
}

function artTree_delete(n, m, id) {
	var i = artTree_exists(n, m, id);
	if (typeof(i) == "number")
		arttree_shows[m].splice(i, 1);
}

