function Editor_CompruebaSeleccion(Formulario,Campo)
	{	
document.getElementById(Formulario).name = Formulario;

		if ( eval('document.' + Formulario + '.' + Campo + '.createTextRange') )
		{

			eval('document.' + Formulario + '.' + Campo + '.focus()');

			if( document.selection.createRange().duplicate().text.length > 0 )
			{
				return document.selection.createRange().duplicate().text;
			}
			else
			{
				return '';
			}
		}
		else
		{		
			return '';
		}
	}

	function Editor_AnadeTexto(Which,Formulario,Campo)
	{

		if ( eval('document.' + Formulario + '.' + Campo + '.createTextRange') )
		{
			eval('document.' + Formulario + '.' + Campo + '.focus()');
			document.selection.createRange().duplicate().text = Which;
			document.selection.empty();
		}
		else
		{
			eval('document.' + Formulario + '.' + Campo + '.value += Which');
		}
	}


	function Editor_email(Formulario,Campo)
	{
		Seleccionado = Editor_CompruebaSeleccion(Formulario,Campo);

		txt1 = '';
		while( txt1 == '' && txt1 != null )
		{
			txt1 = prompt("Introduce la direccion de correo electronico.",Seleccionado);
			if( txt1 != null )
			{
				if( txt1.search(/^.+@{1}.+\.{1}.+/i) == -1 )
				{
					alert("El texto escrito no parece ser una direccion de correo electronico.\nIntentalo de nuevo.");
					txt1 = '';
				}
			}
		}
		if( txt1 != null )
		{
			txt2 = prompt("Introduce el texto para el enlace.\nSi lo dejas vacio se mostrara el email",Seleccionado);
			if( txt2 != null )
			{
				if( txt2 != '' )
				{
					Insertar = "[email href=" + txt1 + "]" + txt2 + "[/email]";
				}
				else
				{
					Insertar = "[email href=" + txt1 + "]" + txt1 + "[/email]";
				}

				Editor_AnadeTexto(Insertar,Formulario,Campo);
			}
		}
	}

	function Editor_normal(Titulo,letra,Formulario,Campo)
	{
		Seleccionado = Editor_CompruebaSeleccion(Formulario,Campo);

		if( letra == 'img' )
		{
			txt1 = '';
			while( txt1 == '' && txt1 != null )
			{
				txt1 = prompt("Introduce la url de la imagen.",Seleccionado);
				if( txt1 != null )
				{
					if( txt1.search(/^(http:\/\/).+/i) == -1 )
					{
						alert("El texto escrito no parece ser una URL.\nIntentalo de nuevo (tiene que empezar por http:// seguido de la direccion)");
						txt1 = '';
					}
				}
			}

			if( txt1!=null )
			{
				Editor_AnadeTexto("["+letra+"]"+txt1+"[/"+letra+"]",Formulario,Campo);
			}
		}
		else
		{
			if( Seleccionado == '' )
			{
				Seleccionado = prompt(Titulo,"");
			}

			if( Seleccionado != null )
			{
				if( letra == 'left' || letra == 'right' || letra == 'center' )
				{
					Editor_AnadeTexto("["+letra+"]"+Seleccionado+"[/"+letra+"]",Formulario,Campo);
				}else
				{
					Editor_AnadeTexto("["+letra+"]"+Seleccionado+"[/"+letra+"]",Formulario,Campo);
				}
			}
		}
	}
	function Editor_img(Formulario,Campo)
	{
		Seleccionado = Editor_CompruebaSeleccion(Formulario,Campo);
		txt1 = '';
		while( txt1 == '' && txt1 != null )
		{
			txt1 = prompt("Introduce la direccion URL de la imagen.",Seleccionado);
			if( txt1 != null )
			{
				if( txt1.search(/^(http(s?):\/\/).+/i) == -1 )
				{
					alert("El texto escrito no parece ser una URL.\nIntentalo de nuevo (tiene que empezar por http:// seguido de la direccion)");
					txt1 = '';
				}
			}
		}
		if( txt1 != null )
		{
			   Insertar = "[img=" + txt1 + " /]" ;				

				Editor_AnadeTexto(Insertar,Formulario,Campo);
			
		}
	}

	function Editor_url(Formulario,Campo)
	{
		Seleccionado = Editor_CompruebaSeleccion(Formulario,Campo);
		txt1 = '';
		while( txt1 == '' && txt1 != null )
		{
			txt1 = prompt("Introduce una direccion URL.",Seleccionado);
			if( txt1 != null )
			{
				if( txt1.search(/^(http(s?):\/\/).+/i) == -1 )
				{
					alert("El texto escrito no parece ser una URL.\nIntentalo de nuevo (tiene que empezar por http:// seguido de la direccion)");
					txt1 = '';
				}
			}
		}
		if( txt1 != null )
		{
			txt2 = prompt("Introduce el texto para el enlace.\nSi lo dejas vacio se mostrara la URL",Seleccionado);
			if( txt2 != null )
			{
				if( txt2 != '' )
				{
					Insertar = "[url href=\"" + txt1 + "\"]" + txt2 + "[/url]";				}
				else
				{
					Insertar = "[url href=\"" + txt1 + "\"]" + txt1 + "[/url]";				}

				Editor_AnadeTexto(Insertar,Formulario,Campo);
			}
		}
	}

	function Editor_CambiaTextoAyuda(cual, Formulario, Campo)
	{
		if( cual == '' ) cual = "Esta es la ayuda del editor de textos<br>Pase por encima de los botones para ayuda.";

		obj = document.getElementById(Formulario+'-'+Campo+'-ayuda');

		if( obj.innerHTML != cual )
		{
			obj.innerHTML = cual;
		}
	}

	function Editor_MostrarHerramienta(cual, Formulario, Campo)
	{
		eval('dummy = '+Formulario+'_'+Campo);
		if( dummy != cual )
		{
			document.getElementById(Formulario+'-'+Campo+'-'+dummy).style.display = 'none';
			document.getElementById(Formulario+'-'+Campo+'-'+cual).style.display = '';
			eval(Formulario + '_' + Campo + '= "' + cual +'"');
		}
	}
