<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>El Blog de Albert Mata &#187; JavaScript</title>
	<atom:link href="http://www.albertmata.net/category/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.albertmata.net</link>
	<description>// anotaciones de análisis y programación en mi día a día como consultor de software</description>
	<lastBuildDate>Mon, 03 Aug 2009 19:22:21 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Calendario en JavaScript traído del baúl de los recuerdos.</title>
		<link>http://www.albertmata.net/2008/07/calendario-en-javascript-traido-del-baul-de-los-recuerdos/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=calendario-en-javascript-traido-del-baul-de-los-recuerdos</link>
		<comments>http://www.albertmata.net/2008/07/calendario-en-javascript-traido-del-baul-de-los-recuerdos/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 12:08:25 +0000</pubDate>
		<dc:creator>Albert Mata</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Páginas web]]></category>
		<category><![CDATA[calendario]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.albertmata.net/?p=57</guid>
		<description><![CDATA[Ordenando estos días viejos archivos que tenía en discos duros varios, he topado con algunas cosas que había desarrollado hace ya tiempo y que en algunos casos ni recordaba. Una de las que me ha parecido más interesante es este calendario para página web creado con JavaScript que presento hoy. Recuerdo que lo creé para [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-58" title="javascript" src="http://www.albertmata.net/public/uploads/2008/07/javascript.jpg" alt="" width="216" height="261" />Ordenando estos días viejos archivos que tenía en discos duros varios, he topado con algunas cosas que había desarrollado hace ya tiempo y que en algunos casos ni recordaba. Una de las que me ha parecido más interesante es este calendario para página web creado con <strong>JavaScript </strong>que presento hoy. Recuerdo que lo creé para recoger una fecha con la que acotar una consulta. Quería evitar problemas con los formatos de entrada de fechas (día/mes/año, mes/día/año, etc) y además me apetecía crear algo más estético que un simple cuadro de texto. Por eso surgió este calendario. De modo que todo el código es de hace unos cuantos años, cuando era un programador 100% amateur, así que no se aceptan críticas despiadadas sobre su corrección... <img src='http://www.albertmata.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Ahora simplemente le he echado un vistazo por encima y le he puesto algún comentario y alguna tabulación, nada más.</p>
<p>No tiene mucho misterio explicar cómo funciona, solo hay que crear el calendario en el punto de la página web que se desee con una llamada así:</p>
<div class="code">&#60;script&#62;drawCalendar&#40;&#39;date01&#39;&#41;&#59;&#60;&#47;script&#62;</div>
<p>Y después tener algún cuadro de texto que recoja la fecha que se selecciona en el calendario. Este cuadro lo podemos hacer visible o invisible a nuestro antojo, pero tenemos que tener la precaución de asignarle un identificador igual al parámetro que hemos pasado como argumento a la función <strong>drawCalendar</strong>:</p>
<div class="code">&#60;input&#160;type&#61;&#34;textbox&#34;&#160;id&#61;&#34;date01&#34;&#160;value&#61;&#34;&#160;&#34;&#47;&#62;</div>
<p>Con esto el calendario queda ya plenamente operativo. Aquí va un ejemplo:<br />
<script type='text/JavaScript' src='http://www.albertmata.net/public/uploads/2008/07/calendar.js'></script><br />
<center><script>drawCalendar('date01');</script></p>
<input type="textbox" style="width: 100px; background-color: #CCCCFF; border: 1px #000000 dotted; font-size: 10px; text-align: center; font-family: Arial, Helvetica, sans-serif;" id="date01" value=" "/>
</center></p>
<p>Y aquí os dejo el código <strong>JavaScript </strong>completo del archivo <strong>calendar.js</strong>:</p>
<div class="code">&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Author&#58;&#160;&#160;&#160;&#160;&#160;&#160;Albert&#160;Mata&#160;&#40;www&#46;albertmata&#46;net&#41;<br />
&#160;Date&#58;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;20080718<br />
&#160;Description&#58;&#160;Old&#160;JavaScript&#160;calendar&#160;I&#160;programmed&#160;a&#160;long&#160;time&#160;ago&#46;&#160;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Attributes&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;</p>
<p>var&#160;monthShown&#59;<br />
var&#160;yearShown&#59;<br />
var&#160;textboxId&#59;<br />
var&#160;firstMonthWeekDay&#59;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Draws&#160;calendar&#160;giving&#160;identifiers&#160;to&#160;each&#160;button&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;drawCalendar&#40;txtId&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;var&#160;currentDate&#59;</p>
<p>&#160;&#160;&#160;&#160;textboxId&#160;&#61;&#160;txtId&#59;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Getting&#160;current&#160;month&#160;and&#160;year&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;currentDate&#160;&#61;&#160;new&#160;Date&#40;&#41;&#59;<br />
&#160;&#160;&#160;&#160;monthShown&#160;&#61;&#160;currentDate&#46;getMonth&#40;&#41;&#59;<br />
&#160;&#160;&#160;&#160;yearShown&#160;&#61;&#160;currentDate&#46;getFullYear&#40;&#41;&#59;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Opening&#160;HTML&#160;table&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;table&#160;width&#61;&#34;126&#34;&#160;bgcolor&#61;&#34;&#35;FFFFFF&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;align&#61;&#34;center&#34;&#160;cellspacing&#61;&#34;0&#34;&#160;cellpadding&#61;&#34;0&#34;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;border&#61;&#34;0&#34;&#62;&#39;&#41;&#59;<br />
&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;tr&#62;&#60;td&#160;width&#61;&#34;6&#34;&#62;&#60;img&#160;src&#61;&#34;left&#46;gif&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;style&#61;&#34;cursor&#58;&#160;hand&#59;&#34;&#160;onClick&#61;&#34;SafeRefill&#40;1&#41;&#59;&#34;&#47;&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;&#47;td&#62;&#60;td&#160;width&#61;&#34;60&#34;&#62;&#60;input&#160;type&#61;&#34;button&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;style&#61;&#34;width&#58;&#160;60px&#59;&#160;background&#45;color&#58;&#160;&#35;FFFFFF&#59;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;font&#45;size&#58;&#160;10px&#59;&#160;text&#45;align&#58;&#160;center&#59;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;font&#45;family&#58;&#160;Arial&#44;&#160;Helvetica&#44;&#160;sans&#45;serif&#59;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;border&#58;&#160;0px&#59;&#34;&#160;id&#61;&#34;mth&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;value&#61;&#34;&#39;&#43;monthName&#40;monthShown&#41;&#43;&#39;&#34;&#47;&#62;&#60;&#47;td&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;td&#160;width&#61;&#34;6&#34;&#62;&#60;img&#160;src&#61;&#34;right&#46;gif&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;style&#61;&#34;cursor&#58;&#160;hand&#59;&#34;&#160;onClick&#61;&#34;SafeRefill&#40;2&#41;&#59;&#34;&#47;&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;&#47;td&#62;&#60;td&#160;width&#61;&#34;10&#34;&#62;&#60;&#47;td&#62;&#60;td&#160;width&#61;&#34;6&#34;&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;img&#160;src&#61;&#34;left&#46;gif&#34;&#160;style&#61;&#34;cursor&#58;&#160;hand&#59;&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;onClick&#61;&#34;SafeRefill&#40;3&#41;&#59;&#34;&#47;&#62;&#60;&#47;td&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;td&#160;width&#61;&#34;32&#34;&#62;&#60;input&#160;type&#61;&#34;button&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;style&#61;&#34;width&#58;&#160;32px&#59;&#160;background&#45;color&#58;&#160;&#35;FFFFFF&#59;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;font&#45;size&#58;&#160;10px&#59;&#160;text&#45;align&#58;&#160;center&#59;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;font&#45;family&#58;&#160;Arial&#44;&#160;Helvetica&#44;&#160;sans&#45;serif&#59;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;border&#58;&#160;0px&#59;&#34;&#160;id&#61;&#34;yea&#34;&#160;value&#61;&#34;&#39;&#43;yearShown&#43;&#39;&#34;&#47;&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;&#47;td&#62;&#60;td&#160;width&#61;&#34;6&#34;&#62;&#60;img&#160;src&#61;&#34;right&#46;gif&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;style&#61;&#34;cursor&#58;&#160;hand&#59;&#34;&#160;onClick&#61;&#34;SafeRefill&#40;4&#41;&#59;&#34;&#47;&#62;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;&#60;&#47;td&#62;&#60;&#47;tr&#62;&#39;&#41;&#59;<br />
&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;tr&#62;&#60;td&#160;width&#61;&#34;126&#34;&#160;colspan&#61;&#34;7&#34;&#62;&#39;&#41;&#59;<br />
&#160;&#160;&#160;<br />
&#160;&#160;&#160;&#160;&#47;&#42;&#160;Adding&#160;buttons&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;for&#160;&#40;i&#160;&#61;&#160;0&#59;&#160;i&#160;&#60;&#160;42&#59;&#160;i&#43;&#43;&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;input&#160;type&#61;&#34;button&#34;&#160;style&#61;&#34;width&#58;&#160;18px&#59;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;background&#45;color&#58;&#160;&#35;FFFFFF&#59;&#160;font&#45;size&#58;&#160;10px&#59;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;text&#45;align&#58;&#160;center&#59;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;font&#45;family&#58;&#160;Arial&#44;&#160;Helvetica&#44;&#160;sans&#45;serif&#59;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;border&#58;&#160;0px&#59;&#34;&#160;id&#61;&#34;day&#39;&#160;&#43;&#160;i&#160;&#43;&#160;&#39;&#34;&#160;value&#61;&#34;&#160;&#34;&#39;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;onMouseOver&#61;&#34;Hover&#40;&#39;&#43;i&#43;&#39;&#44;1&#41;&#59;&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;onMouseOut&#61;&#34;Hover&#40;&#39;&#43;i&#43;&#39;&#44;0&#41;&#59;&#34;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;&#39;onClick&#61;&#34;ShowDate&#40;&#39;&#160;&#43;&#160;i&#160;&#43;&#160;&#39;&#41;&#59;&#34;&#47;&#62;&#39;&#41;&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if&#160;&#40;&#40;&#40;i&#43;1&#41;&#160;&#37;&#160;7&#41;&#160;&#61;&#61;&#160;0&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;br&#47;&#62;&#39;&#41;&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#125;<br />
&#160;&#160;&#160;&#160;&#125;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Closing&#160;HTML&#160;table&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;&#47;td&#62;&#60;&#47;tr&#62;&#39;&#41;&#59;<br />
&#160;&#160;&#160;&#160;document&#46;write&#40;&#39;&#60;&#47;table&#62;&#39;&#41;&#59;</p>
<p>&#160;&#160;&#160;&#160;Refill&#40;&#41;&#59;<br />
&#125;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Prevents&#160;possible&#160;wrong&#160;values&#160;for&#160;month&#160;and&#160;refills&#160;calendar&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;SafeRefill&#40;action&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#47;&#42;&#160;Increasing&#160;or&#160;decreasing&#160;month&#160;and&#160;year&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;action&#160;&#61;&#61;&#160;1&#41;&#160;&#123;&#160;monthShown&#45;&#45;&#160;&#125;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;action&#160;&#61;&#61;&#160;2&#41;&#160;&#123;&#160;monthShown&#43;&#43;&#160;&#125;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;action&#160;&#61;&#61;&#160;3&#41;&#160;&#123;&#160;yearShown&#45;&#45;&#160;&#125;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;action&#160;&#61;&#61;&#160;4&#41;&#160;&#123;&#160;yearShown&#43;&#43;&#160;&#125;<br />
&#160;&#160;&#160;<br />
&#160;&#160;&#160;&#160;&#47;&#42;&#160;Moving&#160;from&#160;January&#160;to&#160;December&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;monthShown&#160;&#61;&#61;&#160;&#45;1&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;monthShown&#160;&#61;&#160;11&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;yearShown&#45;&#45;&#59;<br />
&#160;&#160;&#160;&#160;&#125;<br />
&#160;&#160;&#160;<br />
&#160;&#160;&#160;&#160;&#47;&#42;&#160;Moving&#160;from&#160;December&#160;to&#160;January&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;monthShown&#160;&#61;&#61;&#160;12&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;monthShown&#160;&#61;&#160;0&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;yearShown&#43;&#43;&#59;<br />
&#160;&#160;&#160;&#160;&#125;<br />
&#160;&#160;&#160;<br />
&#160;&#160;&#160;&#160;Refill&#40;&#41;&#59;<br />
&#125;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Redraws&#160;calendar&#160;when&#160;month&#160;or&#160;year&#160;has&#160;changed&#44;&#160;using&#160;identifiers<br />
&#160;previously&#160;given&#160;to&#160;all&#160;buttons&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;Refill&#40;&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;var&#160;firstMonthDay&#59;<br />
&#160;&#160;&#160;&#160;var&#160;lastMonthDay&#59;<br />
&#160;&#160;&#160;&#160;var&#160;lastMonthWeekDay&#59;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Getting&#160;first&#160;month&#160;day&#160;and&#160;weekday&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;firstMonthDay&#160;&#61;&#160;new&#160;Date&#40;yearShown&#44;monthShown&#44;1&#41;&#59;<br />
&#160;&#160;&#160;&#160;firstMonthWeekDay&#160;&#61;&#160;firstMonthDay&#46;getDay&#40;&#41;&#59;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;firstMonthWeekDay&#160;&#61;&#61;&#160;0&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;firstMonthWeekDay&#160;&#61;&#160;7&#59;<br />
&#160;&#160;&#160;&#160;&#125;&#160;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Getting&#160;last&#160;month&#160;day&#160;and&#160;weekday&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;lastMonthDay&#160;&#61;&#160;new&#160;Date&#40;yearShown&#44;monthShown&#44;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;monthDays&#40;monthShown&#44;yearShown&#41;&#41;&#59;<br />
&#160;&#160;&#160;&#160;lastMonthWeekDay&#160;&#61;&#160;lastMonthDay&#46;getDay&#40;&#41;&#59;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;lastMonthWeekDay&#160;&#61;&#61;&#160;0&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;lastMonthWeekDay&#160;&#61;&#160;7&#59;<br />
&#160;&#160;&#160;&#160;&#125;&#160;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Clearing&#160;all&#160;buttons&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;for&#160;&#40;i&#160;&#61;&#160;0&#59;&#160;i&#160;&#60;&#160;42&#59;&#160;i&#43;&#43;&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;day&#39;&#43;i&#41;&#46;value&#160;&#61;&#160;&#34;&#160;&#34;&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;day&#39;&#43;i&#41;&#46;style&#46;cursor&#160;&#61;&#160;&#39;default&#39;&#59;<br />
&#160;&#160;&#160;&#160;&#125;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Giving&#160;new&#160;values&#160;to&#160;buttons&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;for&#160;&#40;i&#160;&#61;&#160;1&#59;&#160;i&#160;&#60;&#61;&#160;monthDays&#40;monthShown&#44;yearShown&#41;&#59;&#160;i&#43;&#43;&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;day&#39;&#43;&#40;i&#43;firstMonthWeekDay&#45;2&#41;&#41;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#46;value&#160;&#61;&#160;i&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;day&#39;&#43;&#40;i&#43;firstMonthWeekDay&#45;2&#41;&#41;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#46;style&#46;cursor&#160;&#61;&#160;&#39;hand&#39;&#59;<br />
&#160;&#160;&#160;&#160;&#125;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Giving&#160;new&#160;values&#160;to&#160;month&#160;and&#160;year&#160;buttons&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;mth&#39;&#41;&#46;value&#160;&#61;&#160;monthName&#40;monthShown&#41;&#59;<br />
&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;yea&#39;&#41;&#46;value&#160;&#61;&#160;yearShown&#59;<br />
&#125;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Function&#160;to&#160;calculate&#160;a&#160;month&#39;s&#160;number&#160;of&#160;days&#160;depending&#160;on&#160;it&#39;s&#160;a&#160;<br />
&#160;leap&#160;year&#160;or&#160;not&#46;&#160;It&#39;s&#160;a&#160;leap&#160;year&#160;when&#160;it&#160;can&#160;be&#160;divided&#160;by&#160;4&#44;&#160;but<br />
&#160;it&#39;s&#160;not&#160;when&#160;it&#160;can&#160;be&#160;divided&#160;by&#160;100&#160;as&#160;well&#46;&#160;And&#160;it&#39;s&#160;a&#160;leap<br />
&#160;year&#160;again&#160;when&#160;it&#160;can&#160;be&#160;divided&#160;by&#160;100&#160;and&#160;by&#160;400&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;monthDays&#160;&#40;mm&#44;&#160;yyyy&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;var&#160;februaryDays&#59;<br />
&#160;&#160;&#160;&#160;var&#160;daysNumber&#59;</p>
<p>&#160;&#160;&#160;&#160;februaryDays&#160;&#61;&#160;28&#59;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Deciding&#160;number&#160;of&#160;days&#160;for&#160;February&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;&#40;yyyy&#160;&#37;&#160;4&#41;&#160;&#61;&#61;&#160;0&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if&#160;&#40;&#40;yyyy&#160;&#37;&#160;100&#41;&#160;&#61;&#61;&#160;0&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if&#160;&#40;&#40;yyyy&#160;&#37;&#160;400&#41;&#160;&#61;&#61;&#160;0&#41;&#160;&#123;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;februaryDays&#160;&#61;&#160;29&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#125;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#125;&#160;else&#160;&#123;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;februaryDays&#160;&#61;&#160;29&#59;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#125;<br />
&#160;&#160;&#160;&#160;&#125;&#160;</p>
<p>&#160;&#160;&#160;&#160;daysNumber&#160;&#61;&#160;new&#160;Array&#160;&#40;31&#44;&#160;februaryDays&#44;&#160;31&#44;&#160;30&#44;&#160;31&#44;&#160;30&#44;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;31&#44;&#160;31&#44;&#160;30&#44;&#160;31&#44;&#160;30&#44;&#160;31&#41;&#59;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Returning&#160;number&#160;of&#160;days&#160;for&#160;selected&#160;month&#160;and&#160;year&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;return&#160;daysNumber&#91;mm&#93;&#59;<br />
&#125;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Returns&#160;month&#160;name&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;monthName&#160;&#40;mm&#41;&#160;&#123;<br />
&#160;&#160;&#160;var&#160;monthNames&#59;</p>
<p>&#160;&#160;&#160;monthNames&#160;&#61;&#160;new&#160;Array&#40;&#39;enero&#39;&#44;&#39;febrero&#39;&#44;&#39;marzo&#39;&#44;&#39;abril&#39;&#44;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#39;mayo&#39;&#44;&#39;junio&#39;&#44;&#39;julio&#39;&#44;&#39;agosto&#39;&#44;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#39;septiembre&#39;&#44;&#39;octubre&#39;&#44;&#39;noviembre&#39;&#44;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#39;diciembre&#39;&#41;&#59;</p>
<p>&#160;&#160;&#160;return&#160;monthNames&#91;mm&#93;&#59;<br />
&#125;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Customizes&#160;mouseOver&#160;effects&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;Hover&#40;dd&#44;x&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;document&#46;getElementById&#40;&#39;day&#39;&#43;dd&#41;&#46;value&#160;&#33;&#61;&#160;&#34;&#160;&#34;&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if&#160;&#40;x&#160;&#61;&#61;&#160;1&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;day&#39;&#43;dd&#41;&#46;style&#46;background&#160;&#61;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#39;&#35;CCCCFF&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#125;&#160;else&#160;&#123;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;&#39;day&#39;&#43;dd&#41;&#46;style&#46;background&#160;&#61;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#39;&#35;FFFFFF&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#125;<br />
&#160;&#160;&#160;&#160;&#125;<br />
&#125;</p>
<p>&#47;&#42;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;<br />
&#160;Returns&#160;selected&#160;data&#160;to&#160;textbox&#46;<br />
&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#45;&#42;&#47;<br />
function&#160;ShowDate&#40;dd&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;var&#160;selDay&#59;<br />
&#160;&#160;&#160;&#160;var&#160;selMonth&#59;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Formatting&#160;day&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;&#40;dd&#160;&#45;&#160;firstMonthWeekDay&#160;&#43;&#160;2&#41;&#160;&#60;&#160;10&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;selDay&#160;&#61;&#160;&#39;0&#39;&#160;&#43;&#160;&#40;dd&#160;&#45;&#160;firstMonthWeekDay&#160;&#43;&#160;2&#41;&#59;<br />
&#160;&#160;&#160;&#160;&#125;&#160;else&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;selDay&#160;&#61;&#160;&#40;dd&#160;&#45;&#160;firstMonthWeekDay&#160;&#43;&#160;2&#41;&#59;<br />
&#160;&#160;&#160;&#160;&#125;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Formatting&#160;month&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;&#40;1&#43;monthShown&#41;&#160;&#60;&#160;10&#41;&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;selMonth&#160;&#61;&#160;&#39;0&#39;&#160;&#43;&#160;&#40;1&#160;&#43;&#160;monthShown&#41;&#59;<br />
&#160;&#160;&#160;&#160;&#125;&#160;else&#160;&#123;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;selMonth&#160;&#61;&#160;&#40;1&#160;&#43;&#160;monthShown&#41;&#59;<br />
&#160;&#160;&#160;&#160;&#125;</p>
<p>&#160;&#160;&#160;&#160;&#47;&#42;&#160;Returning&#160;date&#160;to&#160;textbox&#46;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;if&#160;&#40;document&#46;getElementById&#40;&#39;day&#39;&#43;dd&#41;&#46;value&#160;&#33;&#61;&#160;&#39;&#160;&#39;&#160;&#41;&#160;&#123;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#47;&#42;&#160;Customize&#160;this&#160;line&#160;to&#160;change&#160;output&#160;format&#33;&#33;&#33;&#160;&#42;&#47;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;document&#46;getElementById&#40;textboxId&#41;&#46;value&#160;&#61;&#160;selDay&#160;&#43;&#160;&#39;&#47;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;selMonth&#160;&#43;&#160;&#39;&#47;&#39;&#160;<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#43;&#160;yearShown&#59;&#160;<br />
&#160;&#160;&#160;&#160;&#125;<br />
&#125;</p></div>
<p>Para que funcione bonito es preciso que en el mismo directorio donde esté ubicado el archivo <strong>calendar.js</strong> se encuentren también las imágenes <strong>left.gif</strong> y <strong>right.gif</strong> que se pueden descargar desde esta misma página haciendo click derecho en las propias imágenes (los triangulitos azules que aparecen en el calendario para desplazarse entre meses y/o años).</p>
<p>Por último, ni que decir tiene que este calendario es muy mejorable y ampliable en funciones... ¡pero no seré yo quien lo haga! Simplemente lo dejo aquí por si a alguien puede servirle o puede aportarle alguna idea. <img src='http://www.albertmata.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.albertmata.net/2008/07/calendario-en-javascript-traido-del-baul-de-los-recuerdos/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
