var strArrSeparadores = "/.:";
var strCaracteresExcluidos = "ºª,;_[]&*?!^~´`«»<>#$%={}+£§¨0123456789\\";

var lngValorBaseUmaEdicaoNormal = 5.60;
var lngValorBaseUmaEdicaoBold = 6.90;
var lngValorBaseTresEdicoesNormal = 7.10;
var lngValorBaseTresEdicoesBold = 9.30;
var lngValorBaseSeisEdicoesNormal = 8.60;
var lngValorBaseSeisEdicoesBold = 11.60;
var lngValorPalavraNormal = 0.28;
var lngValorPalavraBold = 0.57;
var lngValorMaximoPalavras = 10;

var lngTotalEdicoes = 0;

function Preco(strTexto)
{
	strTexto = LimparSeparadores(strTexto);
	var lngPrecoBase = PrecoBase();
	var lngPrecoExtra = 0;
	var strArrTexto = strTexto.split(" ")
	var intContador;
	var intContadorPalavras = 0;
	
	for(intContador = 0; intContador < strArrTexto.length; intContador++)
		if(ContabilizarPalavra(strArrTexto[intContador]))
			intContadorPalavras++;

	lngPreco = lngPrecoBase;

	if((intContadorPalavras > lngValorMaximoPalavras) && (lngPrecoBase > 0))
	{
		intContadorPalavras = (Math.round((parseFloat(intContadorPalavras) - parseFloat(lngValorMaximoPalavras))*100))/100;

		if(document.all.item("NO").checked)
			lngPrecoExtra = (Math.round((parseFloat(intContadorPalavras) * parseFloat(lngValorPalavraNormal))*100))/100;
		else	
			lngPrecoExtra = (Math.round((parseFloat(intContadorPalavras) * parseFloat(lngValorPalavraBold))*100))/100;

		lngPrecoExtra = (Math.round((parseFloat(lngTotalEdicoes) * parseFloat(lngPrecoExtra))*100))/100;
		
		lngPreco = (Math.round((parseFloat(lngPrecoBase) + parseFloat(lngPrecoExtra))*100))/100;
	}

	return lngPreco;
}

function ContabilizarPalavra(strPalavra)
{
	strPalavra = LimparPalavra(strPalavra)
	if(strPalavra.length > 2)
		return true;
	else
		return false;
}

function LimparPalavra(strPalavra)
{
	var strNovaPalavra = "";
	var blnFlag = 0;

	for(var intContador = 0; intContador < strPalavra.length; intContador++)
	{
		for(var intContador2 = 0; intContador2 < strCaracteresExcluidos.length; intContador2++)
			if(strPalavra.charAt(intContador) == strCaracteresExcluidos.charAt(intContador2))
			{
				blnFlag = 1;
				break;
			}
		if(!blnFlag)
			strNovaPalavra = strNovaPalavra + strPalavra.charAt(intContador);
		blnFlag = 0;
	}
	return strNovaPalavra;
}

function LimparSeparadores(strPalavra)
{
	var strNovaPalavra = "";
	var blnFlag = 0;

	for(var intContador = 0; intContador < strPalavra.length; intContador++)
	{
		for(var intContador2 = 0; intContador2 < strArrSeparadores.length; intContador2++)
			if(strPalavra.charAt(intContador) == strArrSeparadores.charAt(intContador2))
			{
				blnFlag = 1;
				break;
			}
		if(blnFlag)
			strNovaPalavra = strNovaPalavra + " ";
		else
			strNovaPalavra = strNovaPalavra + strPalavra.charAt(intContador);
		blnFlag = 0;
	}
	return strNovaPalavra;
}

function PrecoBase()
{
	var lngPrecoBase = 0;
	var lngPrecoBaseEdicoes = 0;
	
	lngTotalEdicoes = 0;

	if(document.all.item("5_EDI").checked && document.all.item("BO").checked)
	{
		lngTotalEdicoes = 1;
		return lngValorBaseSeisEdicoesBold;
	}
	
	if(document.all.item("5_EDI").checked && document.all.item("NO").checked)
	{
		lngTotalEdicoes = 1;
		return lngValorBaseSeisEdicoesNormal;
	}
	
	if(document.all.item("CA_OE_SI").checked && document.all.item("NO").checked)
		lngPrecoBase = lngValorBaseTresEdicoesNormal;
	
	if(document.all.item("CA_OE_SI").checked && document.all.item("BO").checked)
		lngPrecoBase = lngValorBaseTresEdicoesBold;
	
	if(document.all.item("AL").checked)
		lngTotalEdicoes = lngTotalEdicoes + 1;

	if(document.all.item("AM").checked)
		lngTotalEdicoes = lngTotalEdicoes + 1;


	if(document.all.item("CA").checked)
		lngTotalEdicoes = lngTotalEdicoes + 1;

	if(document.all.item("OE").checked)
		lngTotalEdicoes = lngTotalEdicoes + 1;

	if(document.all.item("SI").checked)
		lngTotalEdicoes = lngTotalEdicoes + 1;
		
	if(document.all.item("NO").checked)
		lngPrecoBaseEdicoes = (Math.round((parseFloat(lngTotalEdicoes) * parseFloat(lngValorBaseUmaEdicaoNormal))*100))/100;
	else
		lngPrecoBaseEdicoes = (Math.round((parseFloat(lngTotalEdicoes) * parseFloat(lngValorBaseUmaEdicaoBold))*100))/100;
	
	lngPrecoBase = (Math.round((parseFloat(lngPrecoBase) + parseFloat(lngPrecoBaseEdicoes))*100))/100;

	if(document.all.item("CA_OE_SI").checked)
		lngTotalEdicoes = lngTotalEdicoes + 1;

	return lngPrecoBase;
}
