var color1 = "#bc522f";
var color2 = "#af0000";

function comportamiento()
{
	if(document.getElementById('selector'))
	{
		var familia;
		var subfamilia;
		var query = location.search.replace('?', '');
		params = query.split('&');
		for(var i = 0; i < params.length; i++)
		{
	    	curentParam = params[i];
	    	var ckv = curentParam.split('=');
	    	var k = ckv[0];
	    	var v = ckv[1];
	    	if(k=="s")
	    		subfamilia = v;
	    	if(k=="f")
	    		familia = v;
		}

		for(var i=0; i<$('#selector > ul').length; i++)
			if($('#selector > ul')[i].tagName == "UL")
				var selector = $('#selector > ul')[i].childNodes;

		for(var i=0; i<selector.length; i++)
		{
			if(selector[i].tagName == "LI")
			{
				var str = selector[i].id;
				var len = str.indexOf("f");
				var id = str.substr(len+1);
			}
			for(var j=0; j<selector[i].childNodes.length; j++)
			{
				if(selector[i].childNodes[j].tagName == "IMG")
				{
					if(id != familia)
					{
						selector[i].childNodes[j].src = "img/icon_plus.gif";
						selector[i].childNodes[j].alt = "+";
					}
				}
				if(selector[i].childNodes[j].tagName == "UL")
				{
					if(id == familia)
						selector[i].childNodes[j].style.display = "";
					else
						selector[i].childNodes[j].style.display = "none";
				}
			}

			if(selector[i].tagName == "LI")
			{
				for(var j=0; j<selector[i].childNodes.length; j++)
				{
					if(selector[i].childNodes[j].tagName == "UL")
					{
						var subselector = selector[i].childNodes[j].childNodes;
						for(var k=0; k<subselector.length; k++)
						{
							for(var l=0; l<subselector[k].childNodes.length; l++)
							{
								if(subselector[k].childNodes[l].tagName == "A")
								{
									var str = subselector[k].childNodes[l].href;
									var len = str.indexOf("s=");
									var id = str.substr(len+2);
									var mouseout;

									if(subfamilia == id)
									{
										selector[i].childNodes[j].style.display = "";
										subselector[k].style.backgroundColor = color1;
									}
									subselector[k].onclick = function()
									{
										document.location.href = this.childNodes[0].href;
									}
									subselector[k].onmouseover = function()
									{
										mouseout = this.style.backgroundColor;
										this.style.backgroundColor = color2;
									}
									subselector[k].onmouseout = function()
									{
										this.style.backgroundColor = mouseout;
									}
								}
							}
						}
					}
				}
			}

			selector[i].onclick = function()
			{
				for(var i=0; i<selector.length; i++)
				{
					for(var j=0; j<selector[i].childNodes.length; j++)
					{
						if(selector[i].childNodes[j].tagName == "IMG")
						{
							selector[i].childNodes[j].src = "img/icon_plus.gif";
							selector[i].childNodes[j].alt = "+";
						}
						if(selector[i].childNodes[j].tagName == "UL")
						{
							if(selector[i].childNodes[j] != undefined)
								selector[i].childNodes[j].style.display = "none";
						}
					}
				}

				for(var i=0; i<this.childNodes.length; i++)
				{
					if(this.childNodes[i].tagName == "IMG")
					{
						this.childNodes[i].src = "img/icon_minus.gif"
						this.childNodes[i].alt = "-"
					}
					if(this.childNodes[i].tagName == "UL")
					{
						this.childNodes[i].style.display = "";
					}
				}
			}

			selector[i].ondblclick = function()
			{
				document.location.href = this.firstChild.longDesc;
			}
		}
	}

	if(document.getElementById('liquidaciones'))
	{
		var imgs = $('#todas > img');
		for (var i=0; i < imgs.length; i++)
		{
			var mouseout;
			imgs[i].onclick = function()
			{
				xajax_liquidacion(this.id.substr(8));
			}
			imgs[i].onmouseover = function()
			{
				mouseout = this.style.borderColor;
				this.style.borderColor = color2;
			}
			imgs[i].onmouseout = function()
			{
				this.style.borderColor = mouseout;
			}
		}
	}

	if(document.getElementById('contacto') || document.getElementById('presupuesto'))
	{
		xform();
		if(document.getElementById('formulario'))  document.getElementById('formulario').onsubmit = function() { return false; }
		if(document.getElementById('xsubmit')) document.getElementById('xsubmit').onclick = function() { validar(); }

		if(document.getElementById('presupuesto'))
			if(document.getElementById('desglose'))  document.getElementById('desglose').onsubmit = function() { return false; }

	}

	if(document.getElementById("imagenes"))
	{
		$(".imagen > img").click(function()
		{
			if($(this).attr("longDesc"))
			{
				$("div.ampliada").empty();
				$("div.ampliada").append("<img src=\""+$(this).attr("longDesc")+"\" alt=\""+$(this).attr("alt")+"\" />");
				$('div.ampliada').fadeIn();
			}
		});

		$("div.ampliada").click(function()
		{
			$(this).fadeOut();
		});
	}

	if(document.getElementById('imprimir'))
	{
		document.getElementById('imprimir').onclick = function()
		{
			window.print();
		}
	}
}

function xform()
{
	/* Label */
	var labels=document.getElementsByTagName("label");
	for (var i=0; i < labels.length; i++)
	{
		// Firefox
		if(BrowserDetect.browser == "Firefox")
		{
			var labelContent = labels[i].innerHTML;
			var labelWidth = document.defaultView.getComputedStyle( labels[i], '' ).getPropertyValue( 'width' );
			var labelSpan = document.createElement('span');
			labelSpan.style.display = 'block';
			labelSpan.style.width = labelWidth;
			labelSpan.innerHTML = labelContent;
			labels[i].style.display = '-moz-inline-box';
			labels[i].innerHTML = null;
			labels[i].appendChild( labelSpan );
		}
		// Resto de navegadores
		else
		{
			labels[i].style.display = 'inline-block';
		}
	};

	/* Input */
	var defaultInput = document.getElementById('defaultInput').value;
	var inputs = getElementsByTagNames('input');
	for (var i=0; i < inputs.length; i++)
	{
		var input = inputs[i];
		var label = input.parentNode.getElementsByTagName('label')[0];

		if(label && input.value == "")
		{
			input.value = stripTags(label.innerHTML);
			input.value = stripAsterisks(input.value);
			input.value = defaultInput+input.value.toLowerCase();
			input.predefined = input.value;

			input.onfocus = function()
			{
				if (this.value == this.predefined)
				{
					this.value = '';
				}
			};

			input.onblur = function()
			{
				if (this.value == null || this.value == '')
				{
					this.value = this.predefined;
				}
			};
		}
	}

	/* Textarea */
	var defaultTextarea = document.getElementById('defaultTextarea').value;
	var textareas = getElementsByTagNames('textarea');
	for (var i=0; i < textareas.length; i++)
	{
		var textarea = textareas[i];
		var label = textarea.parentNode.getElementsByTagName('label')[0];

		if(label && textarea.value == "")
		{
			textarea.value = stripTags(label.innerHTML);
			textarea.value = stripAsterisks(textarea.value);
			textarea.value = defaultTextarea+textarea.value.toLowerCase();
			textarea.predefined = textarea.value;

			textarea.onfocus = function()
			{
				if (this.value == this.predefined)
				{
					this.value = '';
				}
			};

			textarea.onblur = function()
			{
				if (this.value == null || this.value == '')
				{
					this.value = this.predefined;
				}
			};
		}
	}
}

function presupuestador()
{
	/* Presupuestador */
	if(document.getElementById('presupuestador'))
	{
		var vaciar = getElementsByClass("vaciar");
		for (var i=0; i < vaciar.length; i++)
			vaciar[i].onclick = function()
			{
				return confirm(document.getElementById('cmessage').value);
			}

		var forms = document.getElementsByTagName("form");
		for (var i=0; i < forms.length; i++)
		{
			if(forms[i].id.match("preactualizar"))
			{
				forms[i].onsubmit = function()
				{
					for(var j=0; j < this.childNodes.length; j++)
					{
						if(this.childNodes[j].name == "articulo")
							var articulo = this.childNodes[j].value;
						if(this.childNodes[j].name == "cantidad")
							var cantidad = this.childNodes[j].value;
						if(this.childNodes[j].name == "actualizar")
						{
							this.childNodes[j].src = "img/actualizando.gif"
							this.childNodes[j].blur();
						}
					}
					xajax_actualizar(articulo, cantidad);
					return false;
				}
			}
			if(forms[i].id.match("preborrar"))
			{
				forms[i].onsubmit = function()
				{
					for(var j=0; j < this.childNodes.length; j++)
					{
						if(this.childNodes[j].name == "articulo")
						{
							var articulo = this.childNodes[j].value;
							//this.childNodes[j].blur()
						}
					}
					xajax_borrar(articulo);
					return true;
				}
			}
			if(forms[i].id.match("preagregar"))
			{
				forms[i].onsubmit = function()
				{
					for(var j=0; j < this.childNodes.length; j++)
					{
						if(this.childNodes[j].name == "articulo")
							var articulo = this.childNodes[j].value;
					}
					xajax_agregar(articulo, 1);
					return false;
				}
			}
		}
	}
}

addLoadEvent(xajax_presupuestador);
addLoadEvent(populateRequest);
addLoadEvent(comportamiento);
addLoadEvent(presupuestador);