/*
Módulo		: xI18N.js
Versión		: 1.0 03-04-2003
Autor		: Altia Consultores
Descripción	: Rutinas para el soporte de la internacionalización en JavaScript. Es capaz de formatear
		 una cadena de texto con parámetros según las normas de foramteos para internacionalización JAVA.
Historia	:
	0.1 BCS 06-03-2002 Versión inicial. 
	0.2 BCS 03-04-2003 Añadida función para foramteado de párrafos.
*/

	function i18nFormateaParrafo(cadena,objetos,ancho)
	{

		var cadenaX = i18nFormatea(cadena,objetos);
		var palabras = cadenaX.split(" ");
		var cadenaFinal ="";
		var linea="";
		var separador="\n";
		
		if (palabras.length > 1)
		{
			linea=palabras[0];
			for (var i=1; i < palabras.length; i++)
			{
	
				if ((linea.length + palabras[i].length) > ancho)
				{
					cadenaFinal = cadenaFinal + separador + linea;		
					linea=palabras[i];
				}
				else
				{
	    			linea = linea +" "+ palabras[i];
	    		}
			}
			cadenaFinal = cadenaFinal + separador + linea;
		}
		else
		{
			cadenaFinal = palabras[0];
		}
		
		return cadenaFinal;
	}
	
	function i18nFormatea(cadena, objetos)
	{
		
		var cadenaFormateada="";
		var x;
		var parametro;
		var parametrosPasados = objetos.length;
		
		x= cadena
		
		var posToken = x.indexOf("{");
		var posFinToken = x.indexOf("}");
		if (posToken == -1) cadenaFormateada = cadena;
		
		while (posToken > -1)
		{
			parametro = x.substring(posToken+1,posFinToken);
			if (parametro <= parametrosPasados)
				cadenaFormateada +=  x.substring(0,posToken)+objetos[parametro];
			else
				cadenaFormateada +=  x.substring(0,posToken);
			x = x.substring(posFinToken+1);
			posToken = x.indexOf("{");
			posFinToken = x.indexOf("}");
		}
		cadenaFormateada = cadenaFormateada+x;
		
		return cadenaFormateada;
	}
	