	$(document).ready(function() 
	{
			
			/* Javascript para validar Formularios */

			$("form").bind("submit", function(e)
			{
				/******************
				 *Config***********
				 ******************/
				var bgcolor = "#666666";
				var fontcolor = "#FFFFFF";

				/******************
				 *Filtros**********
				 ******************/
				var filtros = 
				{
					obligatorio:function(el) 
							   	{
									return ($(el).val() != '' && $(el).val() != -1);
							   	},
					email: 		function(el) 
								{
									if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test($(el).val()))
									{
										return true;
									}
									else
									{
										return false;
									}
								},
					numerico: function(el)
								{
									if (/^[0-9]*$/.test($(el).val()) && $(el).val() != "")
									{
										return true;
									}
									else
									{
										return false;
									}
								},
					moneda: function(el)
								{
									if (/^[0-9]+[\.]?[0-9]+$/.test($(el).val()) && $(el).val() != "")
									{
										return true;
									}
									else
									{
										return false;
									}
								}
				}
				
				/******************
				 *CORE*************
				 ******************/
				 
				var aux = true;
				$(this).find("input, textarea, select").each(function(index, element)
				{
					if ($(element).attr("rel"))
					{
						var filtroCompleto = $(element).attr("rel").split(":");
						var tipoFiltro = filtroCompleto[0];
						var mensajeFiltro = filtroCompleto[1];
						if (!filtros[tipoFiltro](element) || $(element).attr("value") == mensajeFiltro)
						{
							$(element).css({"background":bgcolor, "color":fontcolor});
							$(this).val(mensajeFiltro);
							$(element).focus(function()
							{
								if ($(this).attr("value") == mensajeFiltro)
								{
									$(this).val("");
									$(this).removeAttr("style");
								}
							});
							$(element).focus(function()
							{
									$(this).removeAttr("style");
							});
							aux = false;
						}
						else
						{
							$(element).val();
						}
					}
				});
				
				/*Si aux es false quiere decir que un filtro dio false*/
				if (!aux)
				{
					/*Paro el evento submit*/
					if (e.preventDefault) e.preventDefault();
					if (e.stopPropagation) e.stopPropagation();
					return false;
				}
				else /*Sino elimino los campos con los atributos*/
				{
					$(this).find('input[id=_bgcolor]').remove();
					$(this).find('input[id=_fontcolor]').remove();
				}
			});
			
			$("#submit").click(function(){
											$('.formValidar').submit();
										});
			
		/*-------------------*/
	});
