Ayuda con calendario

Hola bhean
Mi cuestión es la siguiente: tengo un script con un calendario que te muestra el mes y el día. Además todos los días de ese mes son sensibles de recibir un enlace para ver la información. El hecho es que funciona pero no como yo quiero: 1)coge el sistema de días de la semana americano (Sunday,Monday...) y yo quiero que lo haga con el europeo (Lunes,Martes,...) 2)Lo que quiero es que el calendario me salga en una ventana emergente (pop up) y que al pinchar en los días me muestre el resultado en la ventana padre y el calendario siga presente por arriba para volver a consultar. El problema es que al intentar meterle una dirección con javascript, me falla el formulario.
¿Puedes ayudarme? Lo necesito con urgencia. Aquí abajo te mando el código.
Gracias mil
<HTML>
<HEAD>
<TITLE>JavaScript Calendar-</TITLE>
</HEAD>
<BODY bgcolor="white" text="black" link="0000FF" VLINK="purple">
<CENTER>
<BR>
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
CURRENT_DAY_HIGHLITE_BGCOLOR="#FFFFCC";
MONTH_NAME_BGCOLOR="white";
MONTH_NAME_FONT_SIZE="3";
MONTH_NAME_FONT_COLOR="black";
MONTH_DAYS_BGCOLOR="white";
MONTH_DAYS_FONT_SIZE="2";
WEEK_DAY_HEADING_BGCOLOR="#8B96AB";
WEEK_DAY_HEADING_FONT_SIZE="2";
WEEK_DAY_FONT_COLOR="white";
NON_MONTH_DAY_BGCOLOR="#aaaaaa";
monthnames = new Array(
"Enero",
"Febrero",
"Marzo",
"Abril",
"Mayo",
"Junio",
"Julio",
"Agosto",
"Septiembre",
"Octubre",
"Noviembre",
"Diciembre");
var linkcount=0;
function addlink(month, day, href)
{
var entry = new Array(3);
entry[0] = month;
entry[1] = day;
entry[2] = href;
this[linkcount++] = entry;
}
Array.prototype.addlink = addlink;
linkdays = new Array();
monthdays = new Array(12);
monthdays[0]=31;
monthdays[1]=28;
monthdays[2]=31;
monthdays[3]=30;
monthdays[4]=31;
monthdays[5]=30;
monthdays[6]=31;
monthdays[7]=31;
monthdays[8]=30;
monthdays[9]=31;
monthdays[10]=30;
monthdays[11]=31;
todayDate=new Date();
thisday=todayDate.getDay();
thismonth=todayDate.getMonth();
thisdate=todayDate.getDate();
thisyear=todayDate.getYear();
thisyear = thisyear % 100;
thisyear = ((thisyear < 50) ? (2000 + thisyear) : (1900 + thisyear));
if (((thisyear % 4 == 0) && !(thisyear % 100 == 0)) || (thisyear % 400 == 0))
monthdays[1]++;
startspaces=thisdate;
while (startspaces > 7)
startspaces-=7;
startspaces = thisday - startspaces + 1;
if (startspaces < 0)
startspaces+=7;
document.write("<table border=2 bgcolor=white ");
document.write("bordercolor=\"black\"><font color=\"black\" face=\"arial, helvetica, sans-serif, swiss, verdana\">");
document.write("<tr><td colspan=7 bgcolor='"+MONTH_NAME_BGCOLOR+"'><font color=\""+MONTH_NAME_FONT_COLOR+"\" size="+MONTH_NAME_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdana\"><center><strong>" + monthnames[thismonth] + " " + thisyear + "</strong></center></font></td></tr>");
document.write("<tr bgcolor='"+WEEK_DAY_HEADING_BGCOLOR+"'>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">Su</font></td>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">M</font></td>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">Tu</font></td>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">W</font></td>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">Th</font></td>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">F</font></td>");
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">Sa</font></td>"); 
document.write("</tr>");
document.write("<tr>");
for (s=0;s<startspaces;s++)
document.write("<td bgcolor='"+NON_MONTH_DAY_BGCOLOR+"'> </td>");
count=1;
while (count <= monthdays[thismonth])
{
for (b = startspaces;b<7;b++) 
{
linktrue=true;
if(count==thisdate)
document.write("<td bgcolor='"+CURRENT_DAY_HIGHLITE_BGCOLOR+"'><font size='"+MONTH_DAYS_FONT_SIZE+"'>");
else if(count <= monthdays[thismonth])
document.write("<td bgcolor="+MONTH_DAYS_BGCOLOR+"><font size='"+MONTH_DAYS_FONT_SIZE+"'>");
else
document.write("<td bgcolor='"+NON_MONTH_DAY_BGCOLOR+"'><font size='"+MONTH_DAYS_FONT_SIZE+"'>");
for (c=0;c<linkdays.length;c++)
{
if (linkdays[c] != null)
{
if ((linkdays[c][0]==thismonth + 1) && (linkdays[c][1]==count))
{
document.write("<font size='"+MONTH_DAYS_FONT_SIZE+"'><a href=\"" + linkdays[c][2] + "\">");
linktrue=true;
}
}
}
if (count==thisdate)
document.write("<font size='"+MONTH_DAYS_FONT_SIZE+"'><strong>");
if (count <= monthdays[thismonth])
{
document.write("<a href=http://intvam/especiales/noticias_agenda.htm#"+count+">")
document.write("<font face='verdana,helvetica, sans-serif, swiss, arial'>")
document.write(count);
document.write("</font>")
document.write("</a>")
}
else
document.write(" ");
if (count==thisdate)
document.write("</strong></font>");
if...
1

1 Respuesta

13.975 pts.
Veamos, en primer lugar, para que salgan los dias en formato Europea en vez de en Ingles, solo tienes que cambiar el texto que quieres que salga.
Hay una parte del codigo que pone esto:
document.write("<td align=center><font color='"+WEEK_DAY_FONT_COLOR+"' size="+WEEK_DAY_HEADING_FONT_SIZE+" face=\"arial, helvetica, sans-serif, swiss, verdand\">Mo</font></td>");
Solo tiene que sustituir donde aparece "Mo" por "L", asi, en vez de Mo de Monday aparecera L de Lunes.
Y asi sucesivamente con los demas dias.
Para que la ventana se abra en un popup, debes hacer otra pagina que a su vez llame a esta, pero en un popup. Esto se hace con:
window.open("calendario.html","","width=400,height=200");
La pagina "calendario.html" es la que contiene el calendario que me has enviado.
Y por ultimo, para hacer que al pulsar se muestre el resultado en la ventana padre, en lugar de hacer que un enlace sea asi:
<a href="pagina.html">hola</a>
debes hacer asi:
<a href="javascript:opener.location.href='pagina.html' ">hola</a>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas