function parseEventos(obj)
{
	var itens = obj.value.split(/[\r\n]/i);
	itens.sort();
	obj.style.display="none";
	var eventos=new Array();
	var item =new Array();
	for(var i=0;i<itens.length;i++)
	{
		if(itens[i]!="")
		{
			item=itens[i].replace(/<!--.*?-->/g,"").split("|");
			for(var j=0;j<item.length;j++)
			{
				eventos.push(item[j]);
			}
		}
	}
	
	return eventos;
}

function parseDate(d)
{
	var new_d = new Date();
	new_d.setFullYear(1900);//year
  new_d.setMonth(d.substring(0,2)-1);//month
  new_d.setDate(d.substring(2,4));//day
	new_d.setHours(0);
	new_d.setMinutes(0);
	new_d.setSeconds(0);
	new_d.setMilliseconds(0);
	return new_d;
}

function formatDate(data)
{
	data = parseDate(data);
	diat = data.getDate();
	if (diat < 10) {
		diat = '0'+(data.getDate()+1)
	}
	mesat = data.getMonth();
	if (mesat < 10) {
		mesat = '0'+(data.getMonth()+1)
	}
	var new_data = diat+"/"+mesat;
	return new_data;
}

function getStringDate(date)
{
	var str = new String();
	//str+=date.getFullYear().toString();
	str+=((date.getMonth()+1).toString().length==1)?"0":"";
	str+=(date.getMonth()+1).toString();
	str+=(date.getDate().toString().length==1)?"0":"";
	str+=date.getDate().toString();
	return str;
}

function getWeekDays()
{
	var days=new Array('Dom','Seg','Ter','Qua','Qui','Sex','Sab');
	return days;
}

function getTodayWeekDay()
{
	days=getWeekDays();
	var week_day=-1;
	for(i=0;i<days.length;i++)
	{
		if(days[i]==week_date)
		{
			week_day=i;
		}
	}
	return week_day;
}

function addDate(date,n_add)
{
	var new_date=new Date();
	date=date.getTime();
	n_add=n_add*1000*60*60*24;
	new_date.setTime(date+n_add);
	return new_date;
}

function getBeginDate()
{
	today=parseDate(date_now);
	n_add=getTodayWeekDay()*-1;
	begin_date=addDate(today,n_add)
	begin_date=getStringDate(begin_date);
	return begin_date;
}

function getEndDate()
{
	today=parseDate(date_now);
	n_add=6 - getTodayWeekDay();
	end_date=addDate(today,n_add)
	end_date=getStringDate(end_date);
	return end_date;
}

function writeAgenda(nome_obj)
{
	var obj=document.getElementById(nome_obj);
	var begin=getBeginDate();
	var end=getEndDate();
	var lastEvent = "";
	var eventos = parseEventos(obj);
	var html="<dl>";
	var jan = "";
	var dez = "";
	
	for(i=0;i<eventos.length-1;i++)
	{
		//Alterado por Melão, bug na última semana do ano
		if((eventos[i]>=begin && eventos[i]<=end) || (begin > end && eventos[i] > 0 && (eventos[i]>=begin || eventos[i]<=end)))		
		//if(eventos[i]>=begin && eventos[i]<=end)
		{
			var htmlTemp = "";
			
			if(eventos[i]!=lastEvent)
			{
				htmlTemp+="<h2>"+eventos[i].replace(/([0-9]{2})([0-9]{2})/,'$2/$1')+"</h2>";
			}
			htmlTemp+=(eventos[i+1]!="")?"<h3>":"";
			htmlTemp+=(eventos[i+2]!="")?"<a href="+eventos[i+2]+" target=blank style=text-decoration:underline>":"";
			htmlTemp+=(eventos[i+1]!="")?""+eventos[i+1]+"":"";
			htmlTemp+=(eventos[i+2]!="")?"</a>":"";
			htmlTemp+=(eventos[i+3]!="")?"<a href="+eventos[i+3]+" target=blank style=text-decoration:underline><img src=http://ce.i.uol.com.br/but_mapa_astral.gif valign=absmiddle></a>":"";
			htmlTemp+=(eventos[i+4]!="")?" - "+eventos[i+4]+"":"";
			htmlTemp+=(eventos[i+1]!="")?"</h3>":"";
			
			lastEvent = eventos[i];
			
			//Na última semana do ano inverte a ordem de mes, janeiro fica depois de dezembro.
			if(begin > end && eventos[i] < 0201) {
				jan += htmlTemp;
			} else if(begin > end && eventos[i] > 1201) {
				dez += htmlTemp;
			}	else { 
				//Se não apenas escreve o html, já estará na ordem
				html += htmlTemp;
			}
			
		}
	}
	
	//Escreve o html da última semana do ano
	html += dez + jan;
	
	html+="</dl>";
	document.write(html);
	//writeSemana("h1-periodo");
	document.getElementById('h1-periodo').innerHTML = begin.replace(/([0-9]{2})([0-9]{2})/,'$2/$1')+" a "+end.replace(/([0-9]{2})([0-9]{2})/,'$2/$1');
}

function writeSemana(n_obj)
{
	obj=document.getElementById(n_obj);
	begin=getBeginDate();
	end=getEndDate();
	end=parseDate(end);
	end=getStringDate(end);
	txt="";
	txt+="Aniversariantes da semana - ";
	txt+=formatDate(begin);
	txt+=" a ";
	txt+=formatDate(end);
	obj.innerHTML=txt;
	return void(0);
}

// EOF
