var dtToday=new Date();
var Cal;
var winCal;
var docCal;
var MonthName=["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio","Julio", 
	"Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];
var WeekDayName=["Domingo","Lunes","Martes","Mi&eacute;rcoles","Jueves","Viernes","Sabado"];	
var cnTop="200";
var cnLeft="500";
var WindowTitle ="Ediciones Anteriores";
var WeekChar=2;
var CellWidth=20;
var ShowLongMonth=true;
var ShowMonthYear=true;
var IdPrincipalesAct="1";
var IdPrincipalesAnt="6";
var IdTitularesAct="9";
var IdTitularesAnt="31";
var IdErrorPage="155";
var urlTitularesAct="/hoy/titulares/nc/";
var urlEdActual="/hoy/nc/";
var urlEdImpresa="/edicion_anterior/nc/";
var urlTitularesAnt="/edicion_anterior/titulares/nc/";
var urlTapaAct="/hoy/tapa/nc/";
var urlTapaAnt="/edicion_anterior/tapa/nc/";
var urlOlimpicos="/juegosolimpicos2008/";
var hostnameRef = new String(top.location.host);
var domainRef=hostnameRef.slice(4);
var urlClasif="http://clasificados."+ domainRef;
var expires=createExpires(1);

function createExpires(hours) 
{
	if (hours) 
	{
		var date = new Date();
		date.setTime(date.getTime()+(hours*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	return expires;
}

function setCookie()
{
  var day=dtToday.getDate();
  var month=dtToday.getMonth()+1;
  var year=dtToday.getFullYear();
  
  if (validDate(document.date.day.value,document.date.month.value,document.date.year.value))
    {
      document.cookie= "day=" + document.date.day.value + expires + "; path=/; domain="+ domainRef;
      document.cookie= "month=" + document.date.month.value + expires +"; path=/; domain="+ domainRef;
      document.cookie= "year=" + document.date.year.value + expires +"; path=/; domain="+ domainRef;
      if ((document.date.day.value==day)&&(document.date.month.value==month)&&(document.date.year.value==year))
           { window.location=urlEdActual;}
      else
           {window.location=urlEdImpresa;}
     }
   else
     {
      document.cookie= "day=" + day + expires +"; path=/; domain="+ domainRef;
      document.cookie= "month=" + month +expires + "; path=/; domain="+ domainRef;
      document.cookie= "year=" + year + expires +"; path=/; domain="+ domainRef; 
      window.location=urlEdActual;
     }
}

function setDate(day,month,year)
{
  document.cookie= "day=" + day + expires +"; path=/; domain="+ domainRef;
  document.cookie= "month=" + month + expires +"; path=/; domain="+ domainRef;
  document.cookie= "year=" + year + expires +"; path=/; domain="+ domainRef;
}

function tapa(day,month,year)
{
  var aday=dtToday.getDate();
  var amonth=dtToday.getMonth()+1;
  var ayear=dtToday.getFullYear();
  
  document.cookie= "day=" + day + expires +"; path=/; domain="+ domainRef;
  document.cookie= "month=" + month + expires +"; path=/; domain="+ domainRef;
  document.cookie= "year=" + year + expires +"; path=/; domain="+ domainRef;
  if ((day==aday)&&(month==amonth)&&(year==ayear))
     {window.location=urlTapaAct;}
  else
     {window.location=urlTapaAnt;}
}

function titulares(day,month,year)
{
  var aday=dtToday.getDate();
  var amonth=dtToday.getMonth()+1;
  var ayear=dtToday.getFullYear();
  
  document.cookie= "day=" + day + expires +"; path=/; domain="+ domainRef;
  document.cookie= "month=" + month + expires +"; path=/; domain="+ domainRef;
  document.cookie= "year=" + year + expires +"; path=/; domain="+ domainRef;
  if ((day==aday)&&(month==amonth)&&(year==ayear))
     { window.location=urlTitularesAct;}
  else
     { window.location=urlTitularesAnt;}
  
}

function clasificados()
{
  var day=getCookie('day');
  var month=getCookie('month');
  var year=getCookie('year');
  var actualDate=new Date();
  var auxDate= new Date(actualDate.getTime()-2592000000);
  var aday=actualDate.getDate();
  var amonth=actualDate.getMonth()+1;
  var ayear=actualDate.getFullYear();
  var dayClasif;
  var monthClasif;
  var yearClasif; 
  
  if ((day!=null)&&(month!=null)&&(year!=null))
    { 
        var selectedDate= new Date(year,month-1,day);
	if ((selectedDate.getTime()>=auxDate.getTime())&&(selectedDate.getTime()<=actualDate.getTime()))
  	  {
	    	dayClasif= day;
  	    	monthClasif= month;
  	    	yearClasif= year;
	   }
	 else 
	  {
	  	dayClasif=aday;
      		monthClasif=amonth;
      		yearClasif=ayear;
		window.open("avisos/error/","No existen clasificados en esta fecha","left=10,top=10,width=620,height=215,scrollbars=no");
	  }
	}
  else
     {
      
      dayClasif=aday;
      monthClasif= amonth;
      yearClasif= ayear ;
     }
  document.cookie= "day_clasif=" + dayClasif + expires +"; path=/; domain="+ domainRef;
  document.cookie= "month_clasif=" + monthClasif + expires +"; path=/; domain="+ domainRef;
  document.cookie= "year_clasif=" + yearClasif + expires +"; path=/; domain="+ domainRef;     
  window.location=urlClasif;
  }

function go_to(page)
{
  var day=dtToday.getDate();
  var month=dtToday.getMonth()+1;
  var year=dtToday.getFullYear();
  document.cookie= "day=" + day + expires +"; path=/; domain="+ domainRef;
  document.cookie= "month=" + month + expires +"; path=/; domain="+ domainRef;
  document.cookie= "year=" + year + expires +"; path=/; domain="+ domainRef;
  window.location="http://www.lanueva.com/"+page;
  }

  
  
function getCookie(name){
  var cname = name + "=";               
  var dc = document.cookie;             
  if (dc.length > 0) {              
    begin = dc.indexOf(cname);       
    if (begin != -1) {           
      begin += cname.length;       
      end = dc.indexOf(";", begin);
      if (end == -1) end = dc.length;
        return unescape(dc.substring(begin, end));
    } 
  }
  return null;
}

function NewCal(idDay,idMonth,idYear)
{
	Cal=new Calendar(dtToday,idDay,idMonth,idYear);
	if (idDay!=null)
		Cal.idDay=idDay;
	if (idMonth!=null)
		Cal.idMonth=idMonth;
	if (idYear!=null)
		Cal.idYear=idYear;
       	winCal=window.open("","DateTimePicker","toolbar=0,status=0,menubar=0,fullscreen=no,width=290,height=280,resizable=0,top="+cnTop+",left="+cnLeft);
	docCal=winCal.document;
	RenderCal();
}

function RenderCal()
{
	var vCalHeader;
	var vCalData;
	var i;
	var j;
	var SelectStr;
	var vDayCount=0;
	var vFirstDay;
	

	docCal.open();
	docCal.writeln("<html><head><title>"+WindowTitle+"</title>");
	docCal.writeln("<script>var winMain=window.opener;</script>");
	docCal.writeln("<base href=\"http://"+hostnameRef+"/\" />");
	docCal.writeln("<style type=\"text/css\" media=\"all\">@import url(fileadmin/template/main/css/style.css);</style>");
	docCal.writeln("</head><body><form name='Calendar'>");

	vCalHeader="<table border=0 cellpadding=1 cellspacing=1 width='100%' align=\"center\" valign=\"top\" id=\"calendario\">\n";
	//Month Selector
	vCalHeader+="<tr><td colspan='7' class=\"titulo\">Ediciones anteriores</td></tr><tr>";
	vCalHeader+="<tr>\n<td colspan='7'><table border=0 width='100%' cellpadding=0 cellspacing=0><tr><td align='left'>\n";
	vCalHeader+="<select name=\"MonthSelector\" onChange=\"javascript:winMain.Cal.SwitchMth(this.selectedIndex);winMain.RenderCal();\">\n";
	for (i=0;i<12;i++)
	{
		if (i==Cal.Month)
			SelectStr="Selected";
		else
			SelectStr="";	
		vCalHeader+="<option "+SelectStr+" value >"+MonthName[i]+"\n";
	}
	vCalHeader+="</select></td>";
	
	vCalHeader+="<td align='right'><select name=\"YearSelector\" onChange=\"javascript:winMain.Cal.SwitchYear(this.selectedIndex);winMain.RenderCal();\">\n";
	year=dtToday.getFullYear();
	for (i=2002;i<year+1;i++)
	{
		if (i==Cal.Year)
			SelectStr="Selected";
		else
			SelectStr="";	
		vCalHeader+="<option "+SelectStr+" value >"+i+"\n";
	}
	vCalHeader+="</select></td></tr></table></td>\n";
	vCalHeader+="</tr>";
	//Calendar header shows Month and Year
	if (ShowMonthYear)
		vCalHeader+="<tr><td colspan='7' class=\"calmonth\"><b>"+Cal.GetMonthName(ShowLongMonth)+" "+Cal.Year+"</b></td></tr>\n";
	//Week day header
	vCalHeader+="<tr>";
	for (i=0;i<7;i++)
	{
		if (i==0)
		  vCalHeader+="<td align='center' id=\"sundayname\">"+WeekDayName[i].substr(0,WeekChar)+"</td>";
		else
		  vCalHeader+="<td align='center' id=\"dayname\">"+WeekDayName[i].substr(0,WeekChar)+"</td>";
	}
	vCalHeader+="</tr>";	
	docCal.write(vCalHeader);
	
	
	
	CalDate=new Date(Cal.Year,Cal.Month);
	CalDate.setDate(1);
	vFirstDay=CalDate.getDay();
	vCalData="<tr>";
	for (i=0;i<vFirstDay;i++)
	{
		vCalData=vCalData+GenCell();
		vDayCount=vDayCount+1;
	}
	for (j=1;j<=Cal.GetMonDays();j++)
	{
		var strCell;
		vDayCount=vDayCount+1;
		if (notEdition(j))
			 strCell=GenCell(j,"noedition",true);
	        else if ((j==dtToday.getDate())&&(Cal.Month==dtToday.getMonth())&&(Cal.Year==dtToday.getFullYear()))
			strCell=GenCell(j,"today",false);
		else if (isSelected(j))
		        strCell=GenCell(j,"selected",false);
		else if (vDayCount%7==0)
			strCell=GenCell(j,"weekday",false);
		else if ((vDayCount+6)%7==0)
			strCell=GenCell(j,"sunday",false);
		else 
		      strCell=GenCell(j,"weekday",false);
		vCalData=vCalData+strCell;

		if((vDayCount%7==0)&&(j<Cal.GetMonDays()))
		{
			vCalData=vCalData+"</tr>\n<tr>";
		}
	}
	docCal.writeln(vCalData);	
	docCal.writeln("\n</table>");
	docCal.writeln("</form></body></html>");
	docCal.close();
}

function GenCell(pValue,Id,nolink)
{
	var PValue;
	var PCellStr;
	var vIdStyle;
	
	if (pValue==null)
		PValue="";
	else
		PValue=pValue;
	if (Id != null)
	  {vIdStyle = "id='"+Id+"'"; }
	else   
	  {vIdStyle = ""; }
	month=Cal.Month+1;
	if (nolink)
	      {
	         PCellStr="<td width="+CellWidth+" align='center' "+vIdStyle+">"+PValue+"</td>";
	      }
	 else
	     {
	      PCellStr="<td width="+CellWidth+" align='center' "+vIdStyle+" ><a href=\"javascript:winMain.document.getElementById('"+Cal.idDay+"').value='"+pValue+"';javascript:winMain.document.getElementById('"+Cal.idMonth+"').value='"+month+"';javascript:winMain.document.getElementById('"+Cal.idYear+"').value='"+Cal.Year+"';javascript:winMain.setCookie();window.close();\">"+PValue+"</a></td>";
	     }
	return PCellStr;
}

function validDate(day,month,year)
{
 if (isNaN(day) || isNaN(month) || isNaN(year) )
   return false;
 else if (year > dtToday.getFullYear())
    return false;
 else if ( ( year < 2002 ) || ( year==2002 && month < 5 ))
    return false;
 else 
    return true;
}
Calendar.prototype.validDate=validDate;

function notEdition(day)
{
 /*if ((Cal.Month==0)&&(day==1))
   return true;
 else if ((Cal.Month==4)&&(day==1)) 
   return true;
 else if ((Cal.Month==11)&&(day==25)) 
   return true;*/
 if (Cal.Year>dtToday.getFullYear())
   return true;
 else if ((Cal.Year==2002)&&(Cal.Month<5))
   return true;
 else if (Cal.Month>dtToday.getMonth()&&(Cal.Year==dtToday.getFullYear()))
   return true;
 else if ((day>dtToday.getDate()) && (Cal.Month==dtToday.getMonth()) && (Cal.Year==dtToday.getFullYear()) )
   return true;
 else 
  return false;
}
Calendar.prototype.notEdition=notEdition;

function isSelected(day)
{
 if ((Cal.Month+1==getCookie('month'))&&(Cal.Year==getCookie('year'))&&(day==getCookie('day')))
   return true;
 else 
   return false;
}
Calendar.prototype.isSelected=isSelected;

function Calendar(pDate,idDay,idMonth,idYear)
{
   this.Date=document.getElementById(idDay).value;
   this.Month=document.getElementById(idMonth).value-1;
   this.Year=document.getElementById(idYear).value;
   this.MyWindow=winCal;
   this.idDay=idDay;
   this.idMonth=idMonth;
   this.idYear=idYear;
     
}

function IncYear()
{	Cal.Year++;}
Calendar.prototype.IncYear=IncYear;

function DecYear()
{	Cal.Year--;}
Calendar.prototype.DecYear=DecYear;
	
function SwitchMth(intMth)
{	Cal.Month=intMth;}
Calendar.prototype.SwitchMth=SwitchMth;
function SwitchYear(intMth)
{	Cal.Year=intMth+2002;}


Calendar.prototype.SwitchYear=SwitchYear;

function GetMonthName(IsLong)
{
	var Month=MonthName[this.Month];
	if (IsLong)
		return Month;
	else
		return Month.substr(0,3);
}
Calendar.prototype.GetMonthName=GetMonthName;

function GetMonDays()
{
	var DaysInMonth=[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
	if (this.IsLeapYear())
	{
		DaysInMonth[1]=29;
	}	
	return DaysInMonth[this.Month];	
}
Calendar.prototype.GetMonDays=GetMonDays;

function IsLeapYear()
{
	if ((this.Year%4)==0)
	{
		if ((this.Year%100==0) && (this.Year%400)!=0)
		{
			return false;
		}
		else
		{
			return true;
		}
	}
	else
	{
		return false;
	}
}
Calendar.prototype.IsLeapYear=IsLeapYear;

function asignateDate(pDate)
{
        winMain.document.getElementById(Cal.idDay).value=pDate;
	winMain.document.getElementById(Cal.idMonth).value=this.Month+1;
	winMain.document.getElementById(Cal.idYear).value=this.Year;
}
Calendar.prototype.asignateDate=asignateDate;	

function olympicsDay(day)
{
  
  if (isNaN(day))
    day=8;
  else if ((day < 7) || (day > 27))
    day=8;
  document.cookie= "day=" + day + expires +"; path=/; domain="+ domainRef;
  document.cookie= "month=8" + expires +"; path=/; domain="+ domainRef;
  document.cookie= "year=2008" + expires +"; path=/; domain="+ domainRef;
  window.location="http://www.lanueva.com"+urlOlimpicos;
  }