/*!
Epoch DHTML JavaScript Calendar - Version 2.0.2
Edición española
Primary JavaScript File
(c) 2006-2007 MeanFreePath
Free for NON-COMMERCIAL use - see website for details and updates
http://www.meanfreepath.com/javascript_calendar/index.html
!!*/
function Epoch(v,k,r,s,j){var m=this;function h(){m.versionNumber="2.0.2";m.displayYearInitial=m.curDate.getFullYear();m.displayMonthInitial=m.curDate.getMonth();m.displayYear=m.displayYearInitial;m.displayMonth=m.displayMonthInitial;m.minDate=new Date(1935,0,1);m.maxDate=new Date(2012,11,31);m.startDay=1;m.showWeeks=true;m.selCurMonthOnly=true}function c(){m.daylist=new Array("Do","Lu","Ma","Mi","Ju","Vi","Sa","Do","Lu","Ma","Mi","Ju","Vi","Sa");m.months_sh=new Array("Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic");m.monthup_title="Ir al mes siguiente";m.monthdn_title="Ir al mes anterior";m.clearbtn_caption="Limpiar";m.clearbtn_title="Limpiar todas las fechas seleccionadas en el calendario";m.maxrange_caption="Este es el rango máximo";m.closebtn_caption="Cierre";m.closebtn_title="Cierre el calendario"}function l(){m.daynames=new Array();var w=0;for(var x=m.startDay;x<m.startDay+7;x++){m.daynames[w++]=m.daylist[x]}m.monthDayCount=new Array(31,((m.curDate.getFullYear()-2000)%4?28:29),31,30,31,30,31,31,30,31,30,31)}function n(){var w,x,y;m.calendar=document.createElement("table");m.calendar.setAttribute("id",m.name+"_calendar");u(m.calendar,"calendar");m.calendar.style.display="none";addEventHandler(m.calendar,"selectstart",function(){return false});addEventHandler(m.calendar,"drag",function(){return false});w=document.createElement("tbody");x=document.createElement("tr");y=document.createElement("td");y.appendChild(f());x.appendChild(y);w.appendChild(x);x=document.createElement("tr");y=document.createElement("td");m.calendar.celltable=document.createElement("table");u(m.calendar.celltable,"cells");m.calendar.celltable.appendChild(d());m.calendar.celltable.appendChild(g());y.appendChild(m.calendar.celltable);x.appendChild(y);w.appendChild(x);x=document.createElement("tr");y=document.createElement("td");y.appendChild(e());x.appendChild(y);w.appendChild(x);m.calendar.appendChild(w);addEventHandler(m.calendar,"mouseover",q);addEventHandler(m.calendar,"mouseout",a)}function f(){var w=document.createElement("div");u(w,"mainheading");m.monthSelect=document.createElement("select");m.yearSelect=document.createElement("select");var D=document.createElement("input"),B=document.createElement("input");var z,y;for(y=0;y<12;y++){z=document.createElement("option");z.setAttribute("value",y);if(m.displayMonth==y){z.setAttribute("selected","selected")}z.appendChild(document.createTextNode(m.months_sh[y]));m.monthSelect.appendChild(z)}var A=m.maxDate.getFullYear(),C=m.minDate.getFullYear();for(y=C;y<=A;y++){z=document.createElement("option");z.setAttribute("value",y);if(m.displayYear==y){z.setAttribute("selected","selected")}z.appendChild(document.createTextNode(y));m.yearSelect.appendChild(z)}B.setAttribute("type","button");B.setAttribute("value",">");B.setAttribute("title",m.monthup_title);D.setAttribute("type","button");D.setAttribute("value","<");D.setAttribute("title",m.monthdn_title);m.monthSelect.owner=m.yearSelect.owner=B.owner=D.owner=m;function x(){if(m.goToMonth(m.yearSelect.value,m.monthSelect.value)){m.displayMonth=m.monthSelect.value;m.displayYear=m.yearSelect.value}else{m.monthSelect.value=m.displayMonth;m.yearSelect.value=m.displayYear}}addEventHandler(B,"click",function(){m.nextMonth()});addEventHandler(D,"click",function(){m.prevMonth()});addEventHandler(m.monthSelect,"change",x);addEventHandler(m.yearSelect,"change",x);w.appendChild(D);w.appendChild(m.monthSelect);w.appendChild(m.yearSelect);w.appendChild(B);return w}function e(){var w=document.createElement("div");var x=document.createElement("input");x.setAttribute("type","button");x.setAttribute("value",m.clearbtn_caption);x.setAttribute("title",m.clearbtn_title);x.owner=m;addEventHandler(x,"click",function(){m.resetSelections(false)});w.appendChild(x);if(m.mode=="popup"){var y=document.createElement("input");y.setAttribute("type","button");y.setAttribute("value",m.closebtn_caption);y.setAttribute("title",m.closebtn_title);addEventHandler(y,"click",function(){m.hide()});u(y,"closeBtn");w.appendChild(y)}return w}function d(){m.calHeading=document.createElement("thead");u(m.calHeading,"caldayheading");var x=document.createElement("tr"),w;m.cols=new Array(false,false,false,false,false,false,false);if(m.showWeeks){w=document.createElement("th");u(w,"wkhead");x.appendChild(w)}for(var y=0;y<7;y++){w=document.createElement("th");w.appendChild(document.createTextNode(m.daynames[y]));if(m.selectMultiple){w.headObj=new CalHeading(m,w,(y+m.startDay<7?y+m.startDay:y+m.startDay-7))}x.appendChild(w)}m.calHeading.appendChild(x);return m.calHeading}function g(){m.rows=new Array(false,false,false,false,false,false);m.cells=new Array();var H=-1,A=(m.showWeeks?48:42);var B=new Date(m.displayYear,m.displayMonth,1);var D=new Date(m.displayYear,m.displayMonth,m.monthDayCount[m.displayMonth]);var y=new Date(B);y.setDate(y.getDate()+(m.startDay-B.getDay())-(m.startDay-B.getDay()>0?7:0));m.calCells=document.createElement("tbody");var E,z;var w=0,F,x,G;for(var C=0;C<A;C++){if(m.showWeeks){if(C%8==0){H++;x=y.getWeek(m.startDay);E=document.createElement("tr");z=document.createElement("td");if(m.selectMultiple){z.weekObj=new WeekHeading(m,z,x,H)}else{u(z,"wkhead")}z.appendChild(document.createTextNode(x));E.appendChild(z);C++}}else{if(C%7==0){H++;x=y.getWeek(m.startDay);E=document.createElement("tr")}}G=y.getDate();z=document.createElement("td");z.appendChild(document.createTextNode(G));F=new CalCell(m,z,y,H,x);m.cells[w]=F;z.cellObj=F;E.appendChild(z);m.calCells.appendChild(E);m.reDraw(w++);y.setDate(G+1)}return m.calCells}function p(w){if(m.mode=="popup"){m.calendar.style.position="absolute"}if(w){switch(m.mode){case"flat":m.tgt=w;m.tgt.appendChild(m.calendar);m.visible=true;break;case"popup":m.calendar.style.position="absolute";document.body.appendChild(m.calendar);m.setTarget(s,w,false);break}}else{document.body.appendChild(m.calendar);m.visible=false}}function o(){m.calendar.celltable.removeChild(m.calendar.celltable.childNodes[1])}function u(w,x){w.setAttribute("class",x);w.setAttribute("className",x)}function b(y){var w=m.cells[y];var x;idx=m.dateInArray(m.dates,w.date);if(idx>-1){x=m.dates[idx];w.date.selected=x.selected||false;w.date.type=x.type;w.date.canSelect=x.canSelect;w.setTitle(x.title);w.setURL(x.href);w.setHTML(x.cellHTML)}else{w.date.selected=false}if(w.date.getTime()<m.minDate.getTime()||w.date.getTime()>m.maxDate.getTime()){w.date.canSelect=false}w.setClass()}function q(){m.mousein=true}function a(){m.mousein=false}function t(){var w=0;m.selectedDates=new Array();for(i=0;i<m.dates.length;i++){if(m.dates[i].selected){m.selectedDates[w++]=m.dates[i]}}}m.dateInArray=function(w,x,z){z=(z!=null?z:0);for(var y=z;y<w.length;y++){if(x.getUeDay()==w[y].getUeDay()){return y}}return -1};m.setTarget=function(D,z,w){if(m.mode=="popup"){function y(){m.show()}function x(){if(!m.mousein){m.hide()}}function C(){m.hide()}if(m.tgt){removeEventHandler(z,"click",y);removeEventHandler(z,"blur",x);removeEventHandler(z,"keydown",C)}m.tgt=D;var B=m.tgt.dateObj,A=new Array;if(B){if(m.tgt.value.length){A[0]=B}m.goToMonth(B.getFullYear(),B.getMonth())}m.selectDates(A,true,true,true);m.topOffset=m.tgt.offsetHeight;m.leftOffset=0;m.updatePos(m.tgt);addEventHandler(z,"click",y);addEventHandler(z,"blur",x);addEventHandler(z,"keydown",C);if(w!==false){y()}}else{if(m.tgt){m.tgt.removeChild(m.calendar)}m.tgt=D;m.tgt.appendChild(m.calendar);m.show()}};m.nextMonth=function(){var x=m.displayMonth;var w=m.displayYear;if(m.displayMonth<11){x++}else{if(m.yearSelect.value<m.maxDate.getFullYear()){x=0;w++}}return m.goToMonth(w,x)};m.prevMonth=function(){var x=m.displayMonth;var w=m.displayYear;if(m.displayMonth>0){x--}else{x=11;w--}return m.goToMonth(w,x)};m.goToMonth=function(x,z){var y=new Date(x,z,31);var w=new Date(x,z,1);if(y>=m.minDate&&w<=m.maxDate){m.monthSelect.value=m.displayMonth=z;m.yearSelect.value=m.displayYear=x;g();o();m.calendar.celltable.appendChild(m.calCells);return true}else{alert(m.maxrange_caption);return false}};m.updatePos=function(w){if(m.mode=="popup"){m.calendar.style.top=getTop(w)+m.topOffset+"px";m.calendar.style.left=getLeft(w)+m.leftOffset+"px"}};m.show=function(){m.updatePos(s);m.calendar.style.display="block";m.visible=true};m.hide=function(){m.calendar.style.display="none";m.visible=false};m.toggle=function(){m.visible?m.hide():m.show()};m.addDates=function(x,y){var w;for(w=0;w<x.length;w++){if(m.dateInArray(m.dates,x[w])==-1){m.dates[m.dates.length]=x[w]}}t();if(y!=false){m.reDraw()}};m.removeDates=function(y,z){var w;for(var x=0;x<y.length;x++){w=m.dateInArray(m.dates,y[x]);if(w!=-1){m.dates.splice(w,1)}}t();if(z!=false){m.reDraw()}};m.selectDates=function(z,x,B,A){var y,w;if(A==true){for(y=0;y<m.dates.length;y++){m.dates[y].selected=false}}for(y=0;y<z.length;y++){w=m.dateInArray(m.dates,z[y]);if(x==true){z[y].selected=true;if(w==-1){m.dates[m.dates.length]=z[y]}else{m.dates[w].selected=true}}else{if(w>-1){m.dates[w].selected=z[y].selected=false;if(m.dates[w].type=="normal"){m.dates.splice(w,1)}}}}t();if(B!=false){m.reDraw()}};m.sendForm=function(A,z){var x=z||"epochdates",B,y;B=(typeof(A)=="string"?document.getElementById(A):A);if(!B){alert("ERROR: Invalid form input");return false}for(var w=0;w<m.dates.length;w++){y=document.createElement("input");y.setAttribute("type","hidden");y.setAttribute("name",x+"["+w+"]");y.setAttribute("value",encodeURIComponent(m.dates[w].dateFormat("Y-m-d")));B.appendChild(y)}return true};m.resetSelections=function(z){var y=new Array();var x=m.dates;for(var w=0;w<x.length;w++){if(x[w].selected){y[y.length]=x[w]}}m.selectDates(y,false,false);m.rows=new Array(false,false,false,false,false,false,false);m.cols=new Array(false,false,false,false,false,false,false);if(m.mode=="popup"){m.tgt.value="";m.hide()}z==true?m.goToMonth(m.displayYearInitial,m.displayMonthInitial):m.reDraw()};m.reDraw=function(x){m.state=1;var w=x?x+1:m.cells.length;for(var y=x||0;y<w;y++){b(y)}m.state=2};m.getCellIndex=function(w){for(var x=0;x<m.cells.length;x++){if(m.cells[x].date.getUeDay()==w.getUeDay()){return x}}return -1};m.state=0;m.name=v;m.curDate=new Date();m.mode=k;m.selectMultiple=(j==true);m.dates=new Array();m.selectedDates=new Array();m.calendar;m.calHeading;m.calCells;m.rows;m.cols;m.cells=new Array();m.monthSelect;m.yearSelect;m.mousein=false;h();c();l();n();s=typeof(s)=="string"?document.getElementById(s):s;r=typeof(r)=="string"?document.getElementById(r):r;p(r);m.state=2;m.visible?m.show():m.hide()}function CalHeading(a,e,c){function d(){var h=a.dates;var f=a.cells;var j=new Array();a.cols[c]=!a.cols[c];for(var g=0;g<f.length;g++){if(f[g].dayOfWeek==c&&f[g].date.canSelect&&(!a.selCurMonthOnly||f[g].date.getMonth()==a.displayMonth&&f[g].date.getFullYear()==a.displayYear)){j[j.length]=f[g].date}}a.selectDates(j,a.cols[c],true)}var b=this;b.dayOfWeek=c;addEventHandler(e,"mouseup",d)}function WeekHeading(c,f,e,b){function a(){var g=c.cells;var j=c.dates;var k=new Array();c.rows[b]=!c.rows[b];for(var h=0;h<g.length;h++){if(g[h].tableRow==b&&g[h].date.canSelect&&(!c.selCurMonthOnly||g[h].date.getMonth()==c.displayMonth&&g[h].date.getFullYear()==c.displayYear)){k[k.length]=g[h].date}}c.selectDates(k,c.rows[b],true)}var d=this;d.week=e;f.setAttribute("class","wkhead");f.setAttribute("className","wkhead");addEventHandler(f,"mouseup",a)}function CalCell(c,f,j,h,b){var g=this;function a(){if(g.date.canSelect){if(c.selectMultiple==true){c.selectDates(new Array(g.date),!g.date.selected,false);g.setClass()}else{c.selectDates(new Array(g.date),true,false,true);if(c.mode=="popup"){c.tgt.value=g.date.dateFormat();c.tgt.dateObj=new Date(g.date);c.hide()}c.reDraw()}}}function e(){if(g.date.canSelect){f.setAttribute("class",g.cellClass+" hover");f.setAttribute("className",g.cellClass+" hover")}}function d(){g.setClass()}g.setClass=function(){if(g.date.canSelect!==false){if(g.date.selected){g.cellClass="cell_selected"}else{if(c.displayMonth!=g.date.getMonth()){g.cellClass="notmnth"}else{if(g.date.type=="holiday"){g.cellClass="hlday"}else{if(g.dayOfWeek>0&&g.dayOfWeek<6){g.cellClass="wkday"}else{g.cellClass="wkend"}}}}}else{g.cellClass="noselect"}if(g.date.getUeDay()==c.curDate.getUeDay()){g.cellClass=g.cellClass+" curdate"}f.setAttribute("class",g.cellClass);f.setAttribute("className",g.cellClass)};g.setURL=function(k,m){if(k){if(m=="js"){addEventHandler(g.tableCell,"mousedown",function(){window.location.href=k})}else{var l=document.createElement("a");l.setAttribute("href",k);l.appendChild(document.createTextNode(g.date.getDate()));g.tableCell.replaceChild(l,g.tableCell.firstChild)}}};g.setTitle=function(k){if(k&&k.length>0){g.title=k;g.tableCell.setAttribute("title",k)}};g.setHTML=function(l){if(l&&l.length>0){if(g.tableCell.childNodes[1]){g.tableCell.childNodes[1].innerHTML=l}else{var k=document.createElement("div");k.innerHTML=l;g.tableCell.appendChild(k)}}};g.cellClass;g.tableRow=h;g.tableCell=f;g.date=new Date(j);g.date.canSelect=true;g.date.type="normal";g.date.selected=false;g.date.cellHTML="";g.dayOfWeek=g.date.getDay();g.week=b;addEventHandler(f,"click",a);addEventHandler(f,"mouseover",e);addEventHandler(f,"mouseout",d);g.setClass()}Date.prototype.getDayOfYear=function(){return parseInt((this.getTime()-new Date(this.getFullYear(),0,1).getTime())/86400000+1)};Date.prototype.getWeek=function(d){d=typeof(d)=="int"?d:0;var c=new Date(this.getFullYear(),0,1);var a=c.getDay()-d;a=(a>=0?a:a+7);var e,b=Math.floor((this.getTime()-c.getTime()-(this.getTimezoneOffset()-c.getTimezoneOffset())*60000)/86400000)+1;if(a<4){e=Math.floor((b+a-1)/7)+1;if(e>52){nYear=new Date(this.getFullYear()+1,0,1);nday=nYear.getDay()-d;nday=nday>=0?nday:nday+7;e=nday<4?1:53}}else{e=Math.floor((b+a-1)/7)}return e};Date.prototype.getUeDay=function(){return parseInt(Math.floor((this.getTime()-this.getTimezoneOffset()*60000)/86400000))};Date.prototype.dateFormat=function(n){if(!n){n="d/m/Y"}LZ=function(c){return(c<0||c>9?"":"0")+c};var f=new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre","Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic");var g=new Array("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Dom","Lun","Mar","Mie","Jue","Vie","Sab");var r="";var e=0;var k="";var b="";var l=this.getFullYear().toString();var j=this.getMonth()+1;var h=this.getDate();var q=this.getDay();var o=this.getHours();var a=this.getMinutes();var p=this.getSeconds();value={Y:l.toString(),y:l.substring(2),n:j,m:LZ(j),F:f[j-1],M:f[j+11],j:h,d:LZ(h),D:g[q+7],l:g[q],G:o,H:LZ(o)};if(o==0){value.g=12}else{if(o>12){value.g=o-12}else{value.g=o}}value.h=LZ(value.g);if(o>11){value.a="pm";value.A="PM"}else{value.a="am";value.A="AM"}value.i=LZ(a);value.s=LZ(p);while(e<n.length){k=n.charAt(e);b="";while((n.charAt(e)==k)&&(e<n.length)){b+=n.charAt(e++)}if(value[b]!=null){r=r+value[b]}else{r=r+b}}return r};function addEventHandler(a,b,c){if(a.addEventListener){a.addEventListener(b,c,false)}else{if(a.attachEvent){a.attachEvent("on"+b,c)}}}function removeEventHandler(a,b,c){if(a.removeEventListener){a.removeEventListener(b,c,false)}else{if(a.attachEvent){a.detachEvent("on"+b,c)}}}function getTop(a){var c=a;var b=0;while(c.tagName!="HTML"){b+=c.offsetTop||0;if(c.offsetParent){c=c.offsetParent}else{break}}return b}function getLeft(a){var c=a;var b=0;while(c.tagName!="HTML"){b+=c.offsetLeft||0;if(c.offsetParent){c=c.offsetParent}else{break}}return b};
