var c_nTilde = unescape("%F1")
var c_aTilde = unescape("%E1")
var c_eTilde = unescape("%E9")
var c_iTilde = unescape("%ED")
var c_oTilde = unescape("%F3")
var c_uTilde = unescape("%FA")
var c_NTilde = unescape("%D1")
var c_ATilde = unescape("%C1")
var c_ETilde = unescape("%C9")
var c_ITilde = unescape("%CD")
var c_OTilde = unescape("%D3")
var c_UTilde = unescape("%DA")
var objPopCalendar = null
var imagesDir = null
function getCalendarInstance(){
if (!PopCalInstanceCreated())
{
objPopCalendar = new PoPCalCreateCalendarInstance();
if (!objPopCalendar.ns4)
{
if (objPopCalendar.dom)
{
document.write ("
")
var PopCal = PopCalInstanceCreated()
if (PopCal)
{
if (objPopCalendar.ie)
{
PopCal.style.filter="alpha()"
PopCal.style.filter="blendTrans()"
}
PopCal.initialized = 0
}
}
}
}
return (objPopCalendar)
}
function PoPCalCreateCalendarInstance()
{
if (!PopCalInstanceCreated())
{
this.initCalendar = PopCalInitCalendar
this.show = PopCalShow
this.addHoliday = PopCalAddHoliday
this.formatDate = PopCalFormatDate
this.forcedToday = PopCalForcedToday
this.selectWeekendHoliday = PopCalSelectWeekendHoliday
this.scroll = PopCalScroll
this.selectSinLogin = PopCalSelectWithOutLogin
this.selectWithOutLogin = 0
this.startAt = 0 // 0 - sunday, 1 - monday
this.showWeekNumber = 0 // 0 - don't show, 1 - show
this.showToday = 1 // 0 - don't show, 1 - show
this.showWeekend = 0 // 0 - don't show, 1 - show
this.showHolidays = 1 // 0 - don't show, 1 - show
this.selectWeekend = 1 // 0 - don't Select, 1 - Select
this.selectHoliday = 1 // 0 - don't Select, 1 - Select
this.addCarnival = 0 // 0 - don't Add, Add to Holiday (Tuesday)
this.addGoodFriday = 0 // 0 - don't Add, Add to Holiday
this.language = 1 // 0 - Spanish, 1 - English
this.defaultFormat = "dd-mm-yyyy" //Default Format
this.fixedX = -1 // x position (-1 if to appear below control)
this.fixedY = -1 // y position (-1 if to appear below control)
this.fade = 0 // 0 - don't fade, .1 to 1 - fade (Only IE)
this.shadow = 0 // 0 - don't shadow, 1 - shadow
this.move = 0 // 0 - don't move, 1 - move
this.saveMovePos = 0 // 0 - don't save, 1 - save
this.centuryLimit = 40 // 1940 - 2039
this.GXLink = 0
this.showEndOfWeek = null // compatibility version 2.0
this.selectEndOfWeek = null // compatibility version 2.0
this.executeFade = true
this.forceTodayTo = null
this.forceTodayFormat = null
this.overWriteSelectWeekend = null
this.overWriteSelectHoliday = null
this.overWriteWeekend = null
this.overWriteHoliday = null
this.imgDir = contextPath+"/resources/images/calendar/"; // directory for images ... e.g. var imgDir="/img/"
this.gotoString = ""
this.todayString = ""
this.weekString = ""
this.scrollLeftMessage = ""
this.scrollRightMessage = ""
this.selectMonthMessage = ""
this.selectYearMessage = ""
this.selectDateMessage = ""
this.crossobj = null
this.crossShadowRObj = null
this.crossShadowBObj = null
this.crossMonthObj = null
this.crossYearObj = null
this.monthSelected = null
this.yearSelected = null
this.dateSelected = null
this.omonthSelected = null
this.oyearSelected = null
this.odateSelected = null
this.monthConstructed = null
this.yearConstructed = null
this.intervalID1 = null
this.intervalID2 = null
this.timeoutID1 = null
this.timeoutID2 = null
this.timeoutID3 = null
this.ctlToPlaceValue = null
this.ctlNow = null
this.dateFormat = null
this.nStartingYear = null
this.onKeyPress = null
this.onClick = null
this.onSelectStart = null
this.onContextMenu = null
this.onmousemove = null
this.onmouseup = null
this.onresize = null
this.onscroll = null
this.ie = document.all
this.dom = document.getElementById
this.ns4 = document.layers
this.ieVersion = 0
var ms = navigator.appVersion.indexOf("MSIE")
if (ms>0)
{
this.ieVersion = parseFloat(navigator.appVersion.substring(ms+5, ms+8))
}
this.dateFrom = 01
this.monthFrom = 00
this.yearFrom = 1900
this.dateUpTo = 31
this.monthUpTo = 11
this.yearUpTo = 2099
this.oDate = null
this.oMonth = null
this.oYear = null
this.countMonths = 12
this.today = null
this.dayNow = 0
this.dateNow = 0
this.monthNow = 0
this.yearNow = 0
this.defaultX = 0
this.defaultY = 0
this.keepMonth = false
this.keepYear = false
this.bShow = false
this.HalfYearList = 5
this.HolidaysCounter = 0
this.Holidays = new Array()
this.movePopCal = false
this.styleAnchor="text-decoration:none;color:black;cursor:default;"
this.styleLightBorder="border-style:solid;border-width:1px;border-color:#a0a0a0;"
this.commandExecute = null
}
}
function PopCalInitCalendar()
{
var PopCal=PopCalInstanceCreated()
if (PopCal)
{
if (PopCal.initialized==0)
{
if ((objPopCalendar.language > 1) || (objPopCalendar.language < 0))
{
objPopCalendar.language = 0
}
if (objPopCalendar.showEndOfWeek!=null) // compatibility
{
objPopCalendar.showWeekend = objPopCalendar.showEndOfWeek
}
if (objPopCalendar.selectEndOfWeek!=null) // compatibility
{
objPopCalendar.selectWeekend = objPopCalendar.selectEndOfWeek
}
if ((objPopCalendar.centuryLimit < 0) || (objPopCalendar.centuryLimit > 99))
{
objPopCalendar.centuryLimit = 40
}
document.write ("
")
document.write ("
")
document.write ("")
document.write ("")
document.write ("")
if (objPopCalendar.language == 0)
{
objPopCalendar.monthName = new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre")
if (objPopCalendar.startAt==0)
{
objPopCalendar.dayName = new Array ("Domingo","Lunes","Martes","Mi" + c_eTilde + "rcoles","Jueves","Viernes","Sabado")
}
else
{
objPopCalendar.dayName = new Array ("Lunes","Martes","Mi" + c_eTilde + "rcoles","Jueves","Viernes","Sabado","Domingo")
}
objPopCalendar.gotoString = "Mes Actual"
objPopCalendar.weekString = "Sem"
objPopCalendar.scrollLeftMessage = "Mes Anterior. Presionar el boton del mouse para ir autom" + c_aTilde + "ticamente."
objPopCalendar.scrollRightMessage = "Mes Siguiente. Presionar el boton del mouse para ir autom" + c_aTilde + "ticamente."
objPopCalendar.selectMonthMessage = "Seleccionar Mes."
objPopCalendar.selectYearMessage = "Seleccionar A" + c_nTilde + "o."
objPopCalendar.selectDateMessage = "Seleccionar [date] ." // do not replace [date], it will be replaced by date.
}
else
{
objPopCalendar.monthName = new Array("January","February","March","April","May","June","July","August","September","October","November","December")
if (objPopCalendar.startAt==0)
{
objPopCalendar.dayName = new Array ("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
}
else
{
objPopCalendar.dayName = new Array ("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday")
}
objPopCalendar.gotoString = "Current Month"
objPopCalendar.weekString = "Week"
objPopCalendar.scrollLeftMessage = "Previous Month."
objPopCalendar.scrollRightMessage = "Next Month."
objPopCalendar.selectMonthMessage = "Select Month."
objPopCalendar.selectYearMessage = "Select Year."
objPopCalendar.selectDateMessage = "Select [date] ." // do not replace [date], it will be replaced by date.
}
objPopCalendar.today = new Date()
if (objPopCalendar.forceTodayTo!=null)
{
if (objPopCalendar.forceTodayFormat==null)
{
objPopCalendar.forceTodayFormat = objPopCalendar.defaultFormat
}
if (PopCalSetDMY(objPopCalendar.forceTodayTo, objPopCalendar.forceTodayFormat))
{
objPopCalendar.today = new Date(objPopCalendar.oYear, objPopCalendar.oMonth, objPopCalendar.oDate)
}
}
objPopCalendar.dayNow = objPopCalendar.today.getDay()
objPopCalendar.dateNow = objPopCalendar.today.getDate()
objPopCalendar.monthNow = objPopCalendar.today.getMonth()
objPopCalendar.yearNow = objPopCalendar.today.getFullYear()
if (objPopCalendar.language == 0)
{
objPopCalendar.todayString = "Hoy es " + objPopCalendar.dayName[(objPopCalendar.dayNow-objPopCalendar.startAt==-1)?6:(objPopCalendar.dayNow-objPopCalendar.startAt)]+ ", " + objPopCalendar.dateNow + " de " + objPopCalendar.monthName[objPopCalendar.monthNow] + " de " + objPopCalendar.yearNow
}
else
{
objPopCalendar.todayString = "Today is " + objPopCalendar.dayName[(objPopCalendar.dayNow-objPopCalendar.startAt==-1)?6:(objPopCalendar.dayNow-objPopCalendar.startAt)]+ ", " + objPopCalendar.monthName[objPopCalendar.monthNow] + " " + objPopCalendar.dateNow + ", " + objPopCalendar.yearNow
}
objPopCalendar.crossShadowRObj = (objPopCalendar.dom)?document.getElementById("popupSuperShadowRight").style : objPopCalendar.ie? document.all.popupSuperShadowRight : document.popupSuperShadowRight
objPopCalendar.crossShadowBObj = (objPopCalendar.dom)?document.getElementById("popupSuperShadowBottom").style : objPopCalendar.ie? document.all.popupSuperShadowBottom : document.popupSuperShadowBottom
if(objPopCalendar.ie)
{
objPopCalendar.crossShadowRObj.filter="alpha(opacity=50)"
objPopCalendar.crossShadowBObj.filter="alpha(opacity=50)"
}
else
{
objPopCalendar.crossShadowRObj.MozOpacity=.5
objPopCalendar.crossShadowBObj.MozOpacity=.5
}
objPopCalendar.crossobj = (objPopCalendar.dom)?document.getElementById("popupSuperCalendar").style : objPopCalendar.ie? document.all.popupSuperCalendar : document.popupSuperCalendar
if (objPopCalendar.ie)
{
objPopCalendar.crossobj.filter="blendTrans()"
}
objPopCalendar.crossMonthObj=(objPopCalendar.dom)?document.getElementById("popupSuperMonth").style : objPopCalendar.ie? document.all.popupSuperMonth : document.popupSuperMonth
objPopCalendar.crossYearObj=(objPopCalendar.dom)?document.getElementById("popupSuperYear").style : objPopCalendar.ie? document.all.popupSuperYear : document.popupSuperYear
objPopCalendar.monthConstructed=false
objPopCalendar.yearConstructed=false
if (objPopCalendar.showToday==1)
{
document.getElementById("popupSuperToday").innerHTML = "" + objPopCalendar.todayString + " "
}
var sHTML1=" "
sHTML1+=" "
sHTML1+=" "
sHTML1+=" "
document.getElementById("popupSuperCaption").innerHTML = sHTML1
if (objPopCalendar.ie)
{
if (objPopCalendar.move == 1)
{
document.getElementById("popupSuperMoveCalendar").width="100%"
document.getElementById("popupSuperMoveCalendar").onmousedown=PopCalDrag
document.getElementById("popupSuperMoveCalendar").ondblclick=PopCalMoveDefault
document.getElementById("popupSuperMoveCalendar").onmouseup=PopCalDrop
}
}
PopCalAddRegularHolidays()
PopCal.startAt = objPopCalendar.startAt
PopCal.showWeekNumber = objPopCalendar.showWeekNumber
PopCal.showToday = objPopCalendar.showToday
PopCal.showWeekend = objPopCalendar.showWeekend
PopCal.showHolidays = objPopCalendar.showHolidays
PopCal.selectWeekend = objPopCalendar.selectWeekend
PopCal.selectHoliday = objPopCalendar.selectHoliday
PopCal.addCarnival = objPopCalendar.addCarnival
PopCal.addGoodFriday = objPopCalendar.addGoodFriday
PopCal.language = objPopCalendar.language
PopCal.defaultFormat = objPopCalendar.defaultFormat
PopCal.fixedX = objPopCalendar.fixedX
PopCal.fixedY = objPopCalendar.fixedY
PopCal.fade = objPopCalendar.fade
PopCal.shadow = objPopCalendar.shadow
PopCal.centuryLimit = objPopCalendar.centuryLimit
PopCal.move = objPopCalendar.move
PopCal.saveMovePos = objPopCalendar.saveMovePos
PopCal.GXLink = objPopCalendar.GXLink
if(objPopCalendar.ie)
{
if ((objPopCalendar.ieVersion < 5.5) || (typeof(PopCal.filters)!="object"))
{
PopCal.fade = 0
}
}
PopCal.initialized = 1
}
}
}
function PopCalShow(ctl, format, from, to, execute)
{
var PopCal=PopCalInstanceCreated()
var CenturyOn = true
if (PopCal)
{
if (PopCal.initialized==1)
{
objPopCalendar.movePopCal = false
if (objPopCalendar.timeoutID3 != null)
{
clearTimeout(objPopCalendar.timeoutID3)
objPopCalendar.timeoutID3 = null
}
if ( objPopCalendar.crossobj.visibility == "hidden" )
{
objPopCalendar.overWriteSelectWeekend = objPopCalendar.overWriteWeekend
objPopCalendar.overWriteSelectHoliday = objPopCalendar.overWriteHoliday
objPopCalendar.overWriteWeekend = null
objPopCalendar.overWriteHoliday = null
objPopCalendar.commandExecute = null
if (execute!=null)
{
objPopCalendar.commandExecute = execute
}
if (objPopCalendar.ie)
{
objPopCalendar.onKeyPress = document.onkeypress
document.onkeypress = PopCalPressEscape
if (PopCal.move == 1)
{
objPopCalendar.onmousemove = document.onmousemove
document.onmousemove=PopCalTrackMouse
objPopCalendar.onmouseup = document.onmouseup
document.onmouseup=new Function("objPopCalendar.movePopCal=false;")
}
objPopCalendar.onresize = window.onresize
window.onresize = PopCalResizeWindow
objPopCalendar.onscroll = window.onscroll
window.onscroll = PopCalScroll
}
else
{
objPopCalendar.onKeyPress = document.onkeyup
document.captureEvents(Event.KEYUP)
document.onkeyup = PopCalPressEscape
}
objPopCalendar.onClick = document.onclick
document.onclick = PopCalClickDocumentBody
if (objPopCalendar.ie)
{
objPopCalendar.onSelectStart = document.onselectstart
document.onselectstart=new Function('return(false);')
objPopCalendar.onContextMenu = document.oncontextmenu
document.oncontextmenu=new Function('return(false);')
}
objPopCalendar.yearConstructed=false
objPopCalendar.monthConstructed=false
objPopCalendar.ctlToPlaceValue = ctl
objPopCalendar.dateFormat=""
if (format!=null)
{
objPopCalendar.dateFormat = format.toLowerCase()
}
else if (PopCal.defaultFormat!=null)
{
objPopCalendar.dateFormat = PopCal.defaultFormat.toLowerCase()
}
objPopCalendar.dateFrom = 01
objPopCalendar.monthFrom = 00
objPopCalendar.yearFrom = 1900
objPopCalendar.dateUpTo = 31
objPopCalendar.monthUpTo = 11
objPopCalendar.yearUpTo = 2099
objPopCalendar.dateSelected = 0
objPopCalendar.monthSelected = objPopCalendar.monthNow
objPopCalendar.yearSelected = objPopCalendar.yearNow
if (PopCalSetDMY(ctl.value, objPopCalendar.dateFormat))
{
objPopCalendar.dateSelected = objPopCalendar.oDate
objPopCalendar.monthSelected = objPopCalendar.oMonth
objPopCalendar.yearSelected = objPopCalendar.oYear
}
if (from!=null)
{
if ((from.toLowerCase() == "hoy") || (from.toLowerCase() == "now"))
{
objPopCalendar.dateFrom = objPopCalendar.dateNow
objPopCalendar.monthFrom = objPopCalendar.monthNow
objPopCalendar.yearFrom = objPopCalendar.yearNow
}
else if (PopCalSetDMY(from, objPopCalendar.dateFormat))
{
objPopCalendar.dateFrom = objPopCalendar.oDate
objPopCalendar.monthFrom = objPopCalendar.oMonth
objPopCalendar.yearFrom = objPopCalendar.oYear
}
}
if (to!=null)
{
if ((to.toLowerCase() == "hoy") || (to.toLowerCase() == "now"))
{
objPopCalendar.dateUpTo = objPopCalendar.dateNow
objPopCalendar.monthUpTo = objPopCalendar.monthNow
objPopCalendar.yearUpTo = objPopCalendar.yearNow
}
else if (PopCalSetDMY(to, objPopCalendar.dateFormat))
{
objPopCalendar.dateUpTo = objPopCalendar.oDate
objPopCalendar.monthUpTo = objPopCalendar.oMonth
objPopCalendar.yearUpTo = objPopCalendar.oYear
}
}
if (!PopCalCenturyOn(objPopCalendar.dateFormat))
{
if (PopCalDateFrom() < PopCalPadZero4(1900 + objPopCalendar.centuryLimit) + "0001")
{
objPopCalendar.dateFrom = 01
objPopCalendar.monthFrom = 00
objPopCalendar.yearFrom = 1900 + objPopCalendar.centuryLimit
}
if (PopCalDateUpTo() > PopCalPadZero4(2000 + (objPopCalendar.centuryLimit-1)) + "1131")
{
objPopCalendar.dateUpTo = 31
objPopCalendar.monthUpTo = 11
objPopCalendar.yearUpTo = 2000 + (objPopCalendar.centuryLimit-1)
}
}
if (PopCalDateFrom() > PopCalDateUpTo())
{
objPopCalendar.oDate = objPopCalendar.dateFrom
objPopCalendar.oMonth = objPopCalendar.monthFrom
objPopCalendar.oYear = objPopCalendar.yearFrom
objPopCalendar.dateFrom = objPopCalendar.dateUpTo
objPopCalendar.monthFrom = objPopCalendar.monthUpTo
objPopCalendar.yearFrom = objPopCalendar.yearUpTo
objPopCalendar.dateUpTo = objPopCalendar.oDate
objPopCalendar.monthUpTo = objPopCalendar.oMonth
objPopCalendar.yearUpTo = objPopCalendar.oYear
}
if (PopCalDateSelect() < PopCalDateFrom())
{
objPopCalendar.dateSelected = 0
objPopCalendar.monthSelected = objPopCalendar.monthFrom
objPopCalendar.yearSelected = objPopCalendar.yearFrom
}
if (PopCalDateSelect() > PopCalDateUpTo())
{
objPopCalendar.dateSelected = 0
objPopCalendar.monthSelected = objPopCalendar.monthUpTo
objPopCalendar.yearSelected = objPopCalendar.yearUpTo
}
objPopCalendar.odateSelected = objPopCalendar.dateSelected
objPopCalendar.omonthSelected = objPopCalendar.monthSelected
objPopCalendar.oyearSelected = objPopCalendar.yearSelected
PopCalMoveDefaultPos()
if (objPopCalendar.ie)
{
if ((PopCal.move == 1) && (PopCal.saveMovePos == 1))
{
if (objPopCalendar.ctlToPlaceValue != null)
{
if (objPopCalendar.ctlToPlaceValue.CalendarTop != null)
{
objPopCalendar.crossobj.top = objPopCalendar.ctlToPlaceValue.CalendarTop
}
if (objPopCalendar.ctlToPlaceValue.CalendarLeft != null)
{
objPopCalendar.crossobj.left = objPopCalendar.ctlToPlaceValue.CalendarLeft
}
}
}
}
PopCalConstructCalendar()
PopCalFadeIn()
PopCalScroll()
objPopCalendar.bShow = (PopCal.GXLink == 0)
}
else
{
objPopCalendar.executeFade = (objPopCalendar.ctlNow==ctl)
PopCalHideCalendar()
if (objPopCalendar.ctlToPlaceValue != null)
{
objPopCalendar.ctlToPlaceValue = null
}
if (objPopCalendar.ctlNow!=ctl)
{
objPopCalendar.show(ctl, format, from, to, execute)
}
objPopCalendar.executeFade = true
}
objPopCalendar.ctlNow = ctl
}
}
}
function PopCalResizeWindow()
{
if ((objPopCalendar.ctlToPlaceValue.CalendarTop == null) && (objPopCalendar.ctlToPlaceValue.CalendarLeft == null))
{
PopCalDownMonth()
PopCalDownYear()
PopCalMoveDefault()
}
}
function PopCalScroll()
{
if (objPopCalendar.crossobj.visibility != "hidden")
{
if ((objPopCalendar.ctlToPlaceValue.CalendarTop == null) && (objPopCalendar.ctlToPlaceValue.CalendarLeft == null))
{
PopCalDownMonth()
PopCalDownYear()
PopCalMoveDefault()
}
}
}
function PopCalMoveDefaultPos()
{
var oCal = document.getElementById("popupSuperCalendar")
var leftpos=0
var toppos=0
var PopCal = PopCalInstanceCreated()
var aTag = objPopCalendar.ctlToPlaceValue
do
{
aTag = aTag.offsetParent
leftpos += aTag.offsetLeft
toppos += aTag.offsetTop
if (aTag.tagName == "DIV")
{
leftpos -= aTag.scrollLeft
toppos -= aTag.scrollTop
}
}
while(aTag.tagName!="BODY")
leftpos = parseInt(PopCal.fixedX==-1 ? objPopCalendar.ctlToPlaceValue.offsetLeft + leftpos-101: PopCal.fixedX, 0)
toppos = parseInt(PopCal.fixedY==-1 ? objPopCalendar.ctlToPlaceValue.offsetTop + toppos + objPopCalendar.ctlToPlaceValue.offsetHeight + 7 : PopCal.fixedY, 0)
if (leftpos + oCal.clientWidth + 20 > aTag.clientWidth)
{
leftpos -= (((leftpos + oCal.clientWidth) - aTag.clientWidth) + 20)
}
if (toppos + oCal.clientHeight + 20 > aTag.clientHeight)
{
toppos -= (((toppos + oCal.clientHeight) - aTag.clientHeight) + 20)
}
if (leftpos < aTag.scrollLeft + 20)
{
leftpos = aTag.scrollLeft + 20
}
if (toppos < aTag.scrollTop + 20)
{
toppos = aTag.scrollTop + 20
}
objPopCalendar.crossobj.left = leftpos - 20
objPopCalendar.crossobj.top = toppos
}
function PopCalMoveDefault()
{
var PopCal = PopCalInstanceCreated()
PopCalMoveDefaultPos()
PopCalMoveShadow()
PopCalShowAllElements()
if (PopCal.saveMovePos == 1)
{
if (objPopCalendar.ctlToPlaceValue != null)
{
objPopCalendar.ctlToPlaceValue.CalendarLeft = null
objPopCalendar.ctlToPlaceValue.CalendarTop = null
}
}
objPopCalendar.bShow = false
}
function PopCalDrag()
{
if (!objPopCalendar.movePopCal)
{
var PopCal = PopCalInstanceCreated()
var ex = event.clientX+document.body.scrollLeft
var ey = event.clientY+document.body.scrollTop
document.getElementById("popupSuperHighLight").style.borderColor = "red"
objPopCalendar.crossobj.xoff=parseInt(objPopCalendar.crossobj.left)-ex
objPopCalendar.crossobj.yoff=parseInt(objPopCalendar.crossobj.top)-ey
if (PopCal.shadow==1)
{
objPopCalendar.crossShadowRObj.xoff=parseInt(objPopCalendar.crossShadowRObj.left)-ex
objPopCalendar.crossShadowRObj.yoff=parseInt(objPopCalendar.crossShadowRObj.top)-ey
objPopCalendar.crossShadowBObj.xoff=parseInt(objPopCalendar.crossShadowBObj.left)-ex
objPopCalendar.crossShadowBObj.yoff=parseInt(objPopCalendar.crossShadowBObj.top)-ey
}
PopCalDownMonth()
PopCalDownYear()
objPopCalendar.movePopCal = true
}
objPopCalendar.bShow = true
}
function PopCalTrackMouse()
{
var PopCal = PopCalInstanceCreated()
if (objPopCalendar.movePopCal)
{
var lLeft = (objPopCalendar.crossobj.xoff + event.clientX+document.body.scrollLeft)
var lTop = (objPopCalendar.crossobj.yoff + event.clientY+document.body.scrollTop)
if ((parseInt(objPopCalendar.crossobj.left) != parseInt(lLeft)) || (parseInt(objPopCalendar.crossobj.top) != parseInt(lTop)))
{
objPopCalendar.crossobj.left = lLeft
objPopCalendar.crossobj.top = lTop
if (PopCal.shadow==1)
{
objPopCalendar.crossShadowRObj.left = (objPopCalendar.crossShadowRObj.xoff + event.clientX+document.body.scrollLeft)
objPopCalendar.crossShadowRObj.top = (objPopCalendar.crossShadowRObj.yoff + event.clientY+document.body.scrollTop)
objPopCalendar.crossShadowBObj.left = (objPopCalendar.crossShadowBObj.xoff + event.clientX+document.body.scrollLeft)
objPopCalendar.crossShadowBObj.top = (objPopCalendar.crossShadowBObj.yoff + event.clientY+document.body.scrollTop)
}
PopCalShowAllElements()
if (PopCal.saveMovePos == 1)
{
if (objPopCalendar.ctlToPlaceValue != null)
{
objPopCalendar.ctlToPlaceValue.CalendarLeft = parseInt(objPopCalendar.crossobj.left)
objPopCalendar.ctlToPlaceValue.CalendarTop = parseInt(objPopCalendar.crossobj.top)
}
}
}
objPopCalendar.bShow = true
}
}
function PopCalDrop()
{
objPopCalendar.bShow = true
objPopCalendar.movePopCal = false
document.getElementById("popupSuperHighLight").style.borderColor = "#a0a0a0"
}
function PopCalSelectWithOutLogin(flag)
{
objPopCalendar.selectWithOutLogin = flag
}
function PopCalSelectWeekendHoliday(weekend, holidays)
{
objPopCalendar.overWriteWeekend = weekend
objPopCalendar.overWriteHoliday = holidays
}
function PopCalHolidayRec (d, m, y, desc0, desc1)
{
this.d = d
this.m = m
this.y = y
this.desc = Array("","")
this.desc[0] = desc0
this.desc[1] = desc1
if (desc1==null) this.desc[1] = this.desc[0]
if (desc0==null) this.desc[0] = this.desc[1]
}
function PopCalAddHoliday (d, m, y, desc0, desc1)
{
//commentado by trebor.
//esta linea marca los dias festivos
//objPopCalendar.Holidays[objPopCalendar.HolidaysCounter++] = new PopCalHolidayRec ( d, m, y, desc0, desc1 )
}
function PopCalFormatDate(dateValue, oldFormat, newFormat)
{
var PopCal = PopCalInstanceCreated()
if (PopCal)
{
var formatOld = PopCal.defaultFormat
if (oldFormat!=null)
{
formatOld = oldFormat
}
var formatNew = PopCal.defaultFormat
if (newFormat!=null)
{
formatNew = newFormat
}
var newValue = ""
if (PopCalSetDMY(dateValue, formatOld))
{
newValue = PopCalConstructDate(objPopCalendar.oDate,objPopCalendar.oMonth,objPopCalendar.oYear,formatNew)
}
return newValue
}
else
{
return ""
}
}
function PopCalForcedToday(dateValue, format)
{
if (PopCalInstanceCreated())
{
objPopCalendar.forceTodayTo = dateValue
objPopCalendar.forceTodayFormat = format
}
}
function PopCalInstanceCreated()
{
if (!document.layers)
{
if (document.getElementById)
{
return (document.getElementById("CalendarInstanceCreated"))
}
}
return false
}
/* hides and objects (for IE only) */
function PopCalHideElement( elmID, overDiv )
{
if( objPopCalendar.ie )
{
for( var i = 0; i < document.all.tags( elmID ).length; i++ )
{
var obj = document.all.tags( elmID )[i]
if( !obj || !obj.offsetParent )
{
continue
}
// Find the element's offsetTop and offsetLeft relative to the BODY tag.
var objLeft = obj.offsetLeft
var objTop = obj.offsetTop
var objParent = obj.offsetParent
while( objParent.tagName.toUpperCase() != "BODY" )
{
objLeft += objParent.offsetLeft
objTop += objParent.offsetTop
objParent = objParent.offsetParent
}
objHeight = obj.offsetHeight
objWidth = obj.offsetWidth
if(( overDiv.offsetLeft + overDiv.offsetWidth ) <= objLeft )
continue
else if(( overDiv.offsetTop + overDiv.offsetHeight ) <= objTop )
continue
else if( overDiv.offsetTop >= ( objTop + objHeight ))
continue
else if( overDiv.offsetLeft >= ( objLeft + objWidth ))
continue
else
{
if (obj.savedStyleDisplay==null)
{
obj.savedStyleDisplay = obj.style.visibility
}
obj.style.visibility = "hidden"
}
}
}
}
/*
* unhides and objects (for IE only)
*/
function PopCalShowElement( elmID )
{
if ( objPopCalendar.ie )
{
for( var i = 0; i < document.all.tags( elmID ).length; i++ )
{
var obj = document.all.tags( elmID )[i]
if( !obj || !obj.offsetParent )
{
continue
}
if (obj.savedStyleDisplay!=null)
{
if (obj.savedStyleDisplay.toLowerCase() != "hidden")
{
obj.style.visibility = ""
}
}
obj.savedStyleDisplay = null
}
}
}
function PopCalShowAllElements()
{
var PopCal = PopCalInstanceCreated()
PopCalShowElement( 'SELECT' )
PopCalShowElement( 'APPLET' )
PopCalHideElement( 'SELECT', document.getElementById("popupSuperCalendar") )
PopCalHideElement( 'APPLET', document.getElementById("popupSuperCalendar") )
if (PopCal.shadow==1)
{
PopCalHideElement( 'SELECT', document.getElementById("popupSuperShadowRight") )
PopCalHideElement( 'APPLET', document.getElementById("popupSuperShadowRight") )
PopCalHideElement( 'SELECT', document.getElementById("popupSuperShadowBottom") )
PopCalHideElement( 'APPLET', document.getElementById("popupSuperShadowBottom") )
}
}
function PopCalSwapImage(srcImg, destImg)
{
if (objPopCalendar.ie)
{
document.getElementById(srcImg).setAttribute("src",objPopCalendar.imgDir + destImg)
}
}
function PopCalHideCalendar()
{
var PopCal = PopCalInstanceCreated()
if (objPopCalendar.ie)
{
document.onkeypress = objPopCalendar.onKeyPress
}
else
{
document.releaseEvents(Event.KEYUP)
document.onkeyup = objPopCalendar.onKeyPress
}
document.onclick = objPopCalendar.onClick
if (objPopCalendar.ie)
{
document.onselectstart = objPopCalendar.onSelectStart
document.oncontextmenu = objPopCalendar.onContextMenu
}
if (objPopCalendar.ie)
{
if (PopCal.move == 1)
{
document.onmousemove = objPopCalendar.onmousemove
document.onmouseup = objPopCalendar.onmouseup
}
window.onresize = objPopCalendar.onresize
window.onscroll = objPopCalendar.onscroll
}
objPopCalendar.onKeyPress = null
objPopCalendar.onClick = null
objPopCalendar.onSelectStart = null
objPopCalendar.onContextMenu = null
objPopCalendar.onmousemove = null
objPopCalendar.onmouseup = null
objPopCalendar.onresize = null
objPopCalendar.onscroll = null
if (objPopCalendar.crossMonthObj != null)
{
objPopCalendar.crossMonthObj.display="none"
}
if (objPopCalendar.crossYearObj != null)
{
objPopCalendar.crossYearObj.display="none"
}
PopCalShowElement( 'SELECT' )
PopCalShowElement( 'APPLET' )
PopCalFadeOut()
}
function PopCalFadeIn()
{
var PopCal = PopCalInstanceCreated()
var objCal = document.getElementById("popupSuperCalendar")
var objShdR = document.getElementById("popupSuperShadowRight")
var objShdB = document.getElementById("popupSuperShadowBottom")
if (!objPopCalendar.ie)
{
if (PopCal.shadow==1)
{
objShdR.style.display="none"
objShdR.style.visibility="visible"
objShdR.style.display=""
objShdB.style.display="none"
objShdB.style.visibility="visible"
objShdB.style.display=""
}
objCal.style.display="none"
objCal.style.visibility="visible"
objCal.style.display=""
}
else if ((PopCal.fade>0) && (objPopCalendar.executeFade))
{
objCal.filters.blendTrans.Stop()
if (PopCal.fade > 1) PopCal.fade = 1
objCal.style.filter="blendTrans(duration=" + PopCal.fade + ")"
if ((objCal.style.visibility != "visible") && (objCal.filters.blendTrans.status != 2))
{
if (PopCal.shadow==1)
{
objShdR.style.filter="alpha(opacity=50)"
objShdB.style.filter="alpha(opacity=50)"
}
objCal.filters.blendTrans.Apply()
objCal.style.visibility="visible"
objCal.filters.blendTrans.Play()
if (PopCal.shadow==1)
{
objShdR.style.visibility="visible"
objShdB.style.visibility="visible"
}
}
else
{
if (PopCal.shadow==1)
{
objShdR.style.visibility="visible"
objShdB.style.visibility="visible"
}
objCal.style.visibility="visible"
}
}
else
{
if (PopCal.shadow==1)
{
objShdR.style.visibility="visible"
objShdB.style.visibility="visible"
}
objCal.style.visibility="visible"
}
}
function PopCalFadeOut()
{
var PopCal = PopCalInstanceCreated()
var objCal = document.getElementById("popupSuperCalendar")
var objShdR = document.getElementById("popupSuperShadowRight")
var objShdB = document.getElementById("popupSuperShadowBottom")
if ((objPopCalendar.ie) && (PopCal.fade>0) && (objPopCalendar.executeFade))
{
objCal.filters.blendTrans.Stop()
if (PopCal.fade > 1) PopCal.fade = 1
objCal.style.filter="blendTrans(duration=" + PopCal.fade + ")"
if ((objCal.style.visibility != "hidden") && (objCal.filters.blendTrans.status != 2))
{
if (PopCal.shadow==1)
{
objShdR.style.filter="alpha(opacity=0)"
objShdB.style.filter="alpha(opacity=0)"
}
objCal.filters.blendTrans.Apply()
objCal.style.visibility="hidden"
objCal.filters.blendTrans.Play()
objPopCalendar.timeoutID3=setTimeout("PopCalMoveTo(0, 0)",(PopCal.fade + .05) * 1000)
}
else
{
objCal.style.visibility="hidden"
PopCalMoveTo(0, 0)
}
}
else
{
objCal.style.visibility="hidden"
PopCalMoveTo(0, 0)
}
}
function PopCalMoveTo(t, l)
{
var objShdR = document.getElementById("popupSuperShadowRight")
var objShdB = document.getElementById("popupSuperShadowBottom")
var PopCal = document.getElementById("popupSuperCalendar")
PopCal.style.top = t
PopCal.style.left = l
objShdR.style.visibility="hidden"
objShdB.style.visibility="hidden"
objShdR.style.top = t
objShdR.style.left = l
objShdR.style.height = 1
objShdB.style.left = l
objShdB.style.top = t
objShdB.style.width = 1
if (objPopCalendar.timeoutID3 != null)
{
clearTimeout(objPopCalendar.timeoutID3)
objPopCalendar.timeoutID3 = null
}
}
function PopCalPadZero(num)
{
return (num < 10)? '0' + num : num
}
function PopCalPadZero4(num)
{
if (num < 10)
{
return ('000' + num)
}
else if (num < 100)
{
return ('00' + num)
}
else if (num < 1000)
{
return ('0' + num)
}
else
{
return ('' + num)
}
}
function PopCalIsVisible(o)
{
return (o.display != "none")
}
function PopCalConstructDate(d,m,y,format)
{
var sTmp = format
sTmp = sTmp.replace ("dd","")
sTmp = sTmp.replace ("d","")
sTmp = sTmp.replace ("",PopCalPadZero(d))
sTmp = sTmp.replace ("",d)
sTmp = sTmp.replace ("mmmm","")
sTmp = sTmp.replace ("mmm","")
sTmp = sTmp.replace ("mm","")
sTmp = sTmp.replace ("m","")
sTmp = sTmp.replace ("yyyy",PopCalPadZero4(y))
sTmp = sTmp.replace ("yy",PopCalPadZero4(y).substr(2))
sTmp = sTmp.replace ("",m+1)
sTmp = sTmp.replace ("",PopCalPadZero(m+1))
sTmp = sTmp.replace ("",objPopCalendar.monthName[m].substr(0,3))
sTmp = sTmp.replace ("",objPopCalendar.monthName[m])
return sTmp
}
function PopCalCloseCalendar()
{
PopCalHideCalendar()
objPopCalendar.ctlToPlaceValue.value = PopCalConstructDate(objPopCalendar.dateSelected,objPopCalendar.monthSelected,objPopCalendar.yearSelected,objPopCalendar.dateFormat)
if (objPopCalendar.ctlToPlaceValue.type)
{
if (objPopCalendar.ctlToPlaceValue.type.toLowerCase() == "text")
{
if (objPopCalendar.ctlToPlaceValue.style.display.toLowerCase() != "none")
{
if (objPopCalendar.ctlToPlaceValue.style.visibility.toLowerCase() != "hidden")
{
objPopCalendar.ctlToPlaceValue.focus()
}
}
}
}
if (objPopCalendar.commandExecute!=null)
{
eval(objPopCalendar.commandExecute)
}
}
function PopCalPressEscape(e)
{
if (objPopCalendar.ie)
{
if (event.keyCode==27)
{
PopCalHideCalendar()
}
}
else
{
if (e.which == 27)
{
PopCalHideCalendar()
}
}
}
function PopCalClickDocumentBody()
{
if (!objPopCalendar.bShow)
{
PopCalHideCalendar()
}
objPopCalendar.bShow = false
}
/*** Month Pulldown ***/
function PopCalStartDecMonth()
{
objPopCalendar.intervalID1=setInterval("PopCalDecMonth()",80)
}
function PopCalStartIncMonth()
{
objPopCalendar.intervalID1=setInterval("PopCalIncMonth()",80)
}
function PopCalIncMonth ()
{
objPopCalendar.monthSelected++
if (objPopCalendar.monthSelected>11) {
objPopCalendar.monthSelected=0
objPopCalendar.yearSelected++
}
if ((objPopCalendar.yearSelected > objPopCalendar.yearUpTo) || (objPopCalendar.yearSelected == objPopCalendar.yearUpTo && objPopCalendar.monthSelected > objPopCalendar.monthUpTo))
{
PopCalDecMonth()
}
else
{
PopCalConstructCalendar()
}
PopCalShowAllElements()
}
function PopCalDecMonth ()
{
objPopCalendar.monthSelected--
if (objPopCalendar.monthSelected<0)
{
objPopCalendar.monthSelected=11
objPopCalendar.yearSelected--
}
if ((objPopCalendar.yearSelected < objPopCalendar.yearFrom) || (objPopCalendar.yearSelected == objPopCalendar.yearFrom && objPopCalendar.monthSelected < objPopCalendar.monthFrom))
{
PopCalIncMonth()
}
else
{
PopCalConstructCalendar()
}
PopCalShowAllElements()
}
function PopCalConstructMonth()
{
PopCalDownYear()
if (!objPopCalendar.monthConstructed)
{
var beginMonth = 0
var endMonth = 11
objPopCalendar.countMonths = 0
if (objPopCalendar.yearSelected == objPopCalendar.yearFrom)
{
beginMonth = objPopCalendar.monthFrom
}
if (objPopCalendar.yearSelected == objPopCalendar.yearUpTo)
{
endMonth = objPopCalendar.monthUpTo
}
var sHTML = ""
for (var i=beginMonth; i<=endMonth; i++)
{
objPopCalendar.countMonths++
var sName = objPopCalendar.monthName[i]
if (i==objPopCalendar.monthSelected){
sName = "" + sName + " "
}
sHTML += " "
}
document.getElementById("popupSuperMonth").innerHTML = ""
objPopCalendar.monthConstructed=true
}
}
function PopCalUpMonth()
{
if ((objPopCalendar.yearSelected == objPopCalendar.yearFrom) || (objPopCalendar.yearSelected == objPopCalendar.yearUpTo))
{
objPopCalendar.monthConstructed=false
}
else if (objPopCalendar.countMonths != 12)
{
objPopCalendar.monthConstructed=false
}
PopCalConstructMonth()
objPopCalendar.crossMonthObj.display = ""
objPopCalendar.crossMonthObj.left = parseInt(objPopCalendar.crossobj.left, 10) + 50
objPopCalendar.crossMonthObj.top = parseInt(objPopCalendar.crossobj.top, 10) + 26
PopCalHideElement( 'SELECT', document.getElementById("popupSuperMonth") )
PopCalHideElement( 'APPLET', document.getElementById("popupSuperMonth") )
}
function PopCalDownMonth()
{
if (objPopCalendar.crossMonthObj.display != "none")
{
if (!objPopCalendar.keepMonth)
{
objPopCalendar.crossMonthObj.display = "none"
PopCalShowAllElements()
}
}
objPopCalendar.keepMonth = false
}
/*** Year Pulldown ***/
function PopCalWheelYear()
{
if (PopCalIsVisible(objPopCalendar.crossYearObj))
{
if (event.wheelDelta >= 120)
{
for (var i=0; i<3; i++)
{
PopCalDecYear()
}
}
else if (event.wheelDelta <= -120)
{
for (var i=0; i<3; i++)
{
PopCalIncYear()
}
}
}
}
function PopCalIncYear()
{
if ((objPopCalendar.nStartingYear+(objPopCalendar.HalfYearList*2+1)) <= objPopCalendar.yearUpTo)
{
for (var i=0; i<(objPopCalendar.HalfYearList*2+1); i++){
var newYear = (i+objPopCalendar.nStartingYear)+1
var txtYear
if (newYear==objPopCalendar.yearSelected)
{
txtYear = " " + newYear + " "
}
else
{
txtYear = " " + newYear + " "
}
document.getElementById("popupSuperYear"+i).innerHTML = txtYear
}
objPopCalendar.nStartingYear ++
}
objPopCalendar.bShow=true
}
function PopCalDecYear()
{
if (objPopCalendar.nStartingYear-1 >= objPopCalendar.yearFrom)
{
for (var i=0; i<(objPopCalendar.HalfYearList*2+1); i++)
{
var newYear = (i+objPopCalendar.nStartingYear)-1
var txtYear
if (newYear==objPopCalendar.yearSelected)
{
txtYear = " "+ newYear + " "
}
else
{
txtYear = " " + newYear + " "
}
document.getElementById("popupSuperYear"+i).innerHTML = txtYear
}
objPopCalendar.nStartingYear --
}
objPopCalendar.bShow=true
}
function PopCalSelectYear(nYear)
{
objPopCalendar.yearSelected=parseInt(nYear+objPopCalendar.nStartingYear, 10)
if ((objPopCalendar.yearSelected == objPopCalendar.yearFrom) && (objPopCalendar.monthSelected < objPopCalendar.monthFrom))
{
objPopCalendar.monthSelected = objPopCalendar.monthFrom
}
else if ((objPopCalendar.yearSelected == objPopCalendar.yearUpTo) && (objPopCalendar.monthSelected > objPopCalendar.monthUpTo))
{
objPopCalendar.monthSelected = objPopCalendar.monthUpTo
}
objPopCalendar.yearConstructed=false
PopCalConstructCalendar()
PopCalDownYear()
}
function PopCalConstructYear()
{
PopCalDownMonth()
var sHTML = ""
var longList = true
if (!objPopCalendar.yearConstructed)
{
var beginYear = objPopCalendar.yearSelected-objPopCalendar.HalfYearList
var endYear = objPopCalendar.yearSelected+objPopCalendar.HalfYearList
if ((objPopCalendar.yearUpTo - objPopCalendar.yearFrom + 1) <= (objPopCalendar.HalfYearList * 2 + 1))
{
beginYear = objPopCalendar.yearFrom
endYear = objPopCalendar.yearUpTo
longList = false
}
else if (beginYear < objPopCalendar.yearFrom)
{
beginYear = objPopCalendar.yearFrom
endYear = beginYear + objPopCalendar.HalfYearList * 2
}
else if (endYear > objPopCalendar.yearUpTo)
{
endYear = objPopCalendar.yearUpTo
beginYear = endYear - (objPopCalendar.HalfYearList * 2)
}
objPopCalendar.nStartingYear = beginYear
if (longList)
{
sHTML += " "
}
var j = 0
for (var i=(beginYear); i<=(endYear); i++)
{
var sName = i
if (i==objPopCalendar.yearSelected)
{
sName = "" + sName + " "
}
sHTML += " "
j ++
}
if (longList)
{
sHTML += " "
}
document.getElementById("popupSuperYear").innerHTML = ""
objPopCalendar.yearConstructed = true
}
}
function PopCalDownYear()
{
if (objPopCalendar.crossYearObj.display != "none")
{
if (!objPopCalendar.keepYear)
{
clearInterval(objPopCalendar.intervalID1)
clearTimeout(objPopCalendar.timeoutID1)
clearInterval(objPopCalendar.intervalID2)
clearTimeout(objPopCalendar.timeoutID2)
objPopCalendar.crossYearObj.display = "none"
PopCalShowAllElements()
}
}
objPopCalendar.keepYear = false
}
function PopCalUpYear()
{
var leftOffset
PopCalConstructYear()
objPopCalendar.crossYearObj.display = ""
leftOffset = parseInt(objPopCalendar.crossobj.left, 10) + document.getElementById("popupSuperSpanYear").offsetLeft
if (objPopCalendar.ie)
{
leftOffset += 6
}
else
{
leftOffset += 7
}
objPopCalendar.crossYearObj.left = leftOffset
objPopCalendar.crossYearObj.top = parseInt(objPopCalendar.crossobj.top, 10) + 26
PopCalHideElement( 'SELECT', document.getElementById("popupSuperYear") )
PopCalHideElement( 'APPLET', document.getElementById("popupSuperYear") )
}
/*** calendar ***/
function PopCalWeekNbr(n)
{
// Algorithm used:
// From Klaus Tondering's Calendar document (The Authority/Guru)
// hhtp://www.tondering.dk/claus/calendar.html
// a = (14-month) / 12
// y = year + 4800 - a
// m = month + 12a - 3
// J = day + (153m + 2) / 5 + 365y + y / 4 - y / 100 + y / 400 - 32045
// d4 = (J + 31741 - (J mod 7)) mod 146097 mod 36524 mod 1461
// L = d4 / 1460
// d1 = ((d4 - L) mod 365) + L
// WeekNumber = d1 / 7 + 1
var PopCal=PopCalInstanceCreated()
var year = n.getFullYear()
var month = n.getMonth() + 1
var day
if (PopCal.startAt == 0)
{
day = n.getDate() + 1
}
else
{
day = n.getDate()
}
var a = Math.floor((14-month) / 12)
var y = year + 4800 - a
var m = month + 12 * a - 3
var b = Math.floor(y/4) - Math.floor(y/100) + Math.floor(y/400)
var J = day + Math.floor((153 * m + 2) / 5) + 365 * y + b - 32045
var d4 = (((J + 31741 - (J % 7)) % 146097) % 36524) % 1461
var L = Math.floor(d4 / 1460)
var d1 = ((d4 - L) % 365) + L
var week = Math.floor(d1/7) + 1
return week
}
function PopCalConstructCalendar ()
{
var PopCal=PopCalInstanceCreated()
var aNumDays = Array (31,0,31,30,31,30,31,31,30,31,30,31)
var dateMessage
var startDate = new Date(objPopCalendar.yearSelected,objPopCalendar.monthSelected,1)
var endDate
var numDaysInMonth
var notSelect
var selectWeekends = PopCal.selectWeekend
var selectHolidays = PopCal.selectHoliday
if (objPopCalendar.overWriteSelectWeekend!=null)
{
selectWeekends = objPopCalendar.overWriteSelectWeekend
}
if (objPopCalendar.overWriteSelectHoliday!=null)
{
selectHolidays = objPopCalendar.overWriteSelectHoliday
}
if (objPopCalendar.monthSelected==1)
{
endDate = new Date(objPopCalendar.yearSelected,2,1)
endDate = new Date(endDate - (86400000))
numDaysInMonth = endDate.getDate()
}
else
{
numDaysInMonth = aNumDays[objPopCalendar.monthSelected]
}
var datePointer = 0
dayPointer = startDate.getDay() - PopCal.startAt
if (dayPointer<0)
{
dayPointer = 6
}
var sHTML = ""
if (PopCal.showWeekNumber==1)
{
sHTML += "" + objPopCalendar.weekString + " "
}
for (var i=0; i<7; i++)
{
sHTML += ""+ objPopCalendar.dayName[i].substr(0,3)+" "
}
sHTML +=" "
if (PopCal.showWeekNumber==1)
{
sHTML += "" + PopCalWeekNbr(startDate) + " "
}
for (var i=1; i<=dayPointer;i++ )
{
sHTML += " "
}
//Martes de Carnaval y Viernes Santo para el año actual
if ((PopCal.addCarnival==1) || (PopCal.addGoodFriday==1))
{
var dtDomingoPascuas = PopCalDomingoPascuas(objPopCalendar.yearSelected)
if (PopCal.addCarnival==1)
{
var dtDate = new Date(dtDomingoPascuas - (47 * 86400000))
PopCalAddHoliday(dtDate.getDate(), dtDate.getMonth() + 1, dtDate.getFullYear(),"Martes de Carnaval", "Carnival's Tuesday")
}
if (PopCal.addGoodFriday==1)
{
var dtDate = new Date(dtDomingoPascuas - (2 * 86400000))
PopCalAddHoliday(dtDate.getDate(), dtDate.getMonth() + 1, dtDate.getFullYear() ,"Viernes Santo", "Good Friday")
}
}
for (var datePointer=1; datePointer<=numDaysInMonth; datePointer++ )
{
dayPointer++
sHTML += ""
var sStyle=objPopCalendar.styleAnchor
if ((datePointer==objPopCalendar.odateSelected) && (objPopCalendar.monthSelected==objPopCalendar.omonthSelected) && (objPopCalendar.yearSelected==objPopCalendar.oyearSelected))
{
sStyle+=objPopCalendar.styleLightBorder
}
notSelect = false
var sHint = ""
for (var k=0;k objPopCalendar.dateUpTo)
{
notSelect = true
}
}
if ((selectWeekends!=1) && (!notSelect))
{
if ((dayPointer % 7 == (PopCal.startAt * -1)+1) || (dayPointer % 7 == (PopCal.startAt * -1)+7) || (dayPointer % 7 == (PopCal.startAt * -1)))
{
notSelect = true
}
}
if (notSelect)
{
if ((datePointer==objPopCalendar.dateNow)&&(objPopCalendar.monthSelected==objPopCalendar.monthNow)&&(objPopCalendar.yearSelected==objPopCalendar.yearNow))
{
sHTML += " " + datePointer + " "
}
else if (((dayPointer % 7 == (PopCal.startAt * -1)+1) || (dayPointer % 7 == (PopCal.startAt * -1)+7) || (dayPointer % 7 == (PopCal.startAt * -1))) && (PopCal.showWeekend==1))
{
sHTML += " " + datePointer + " "
}
else
{
sHTML += " " + datePointer + " "
}
}
else if ((datePointer==objPopCalendar.dateNow)&&(objPopCalendar.monthSelected==objPopCalendar.monthNow)&&(objPopCalendar.yearSelected==objPopCalendar.yearNow))
{
sHTML += " " + datePointer + " "
}
else if (((dayPointer % 7 == (PopCal.startAt * -1)+1) || (dayPointer % 7 == (PopCal.startAt * -1)+7) || (dayPointer % 7 == (PopCal.startAt * -1))) && (PopCal.showWeekend==1))
{
//deshabilita los fines de semana anteriores a la fecha actual
if (objPopCalendar.monthSelected == objPopCalendar.monthNow && objPopCalendar.yearSelected == objPopCalendar.yearNow) {
if(datePointer >= objPopCalendar.dateNow || objPopCalendar.selectWithOutLogin=='1' ){
sHTML += " " + datePointer + " "
}
else
{
sHTML += " " + datePointer + " "
}
}
else
if (objPopCalendar.yearSelected > objPopCalendar.yearNow || objPopCalendar.selectWithOutLogin=='1' ){
sHTML += " " + datePointer + " "
}
else if (objPopCalendar.yearSelected < objPopCalendar.yearNow){
sHTML += " " + datePointer + " "
}
else if (objPopCalendar.yearSelected == objPopCalendar.yearNow && objPopCalendar.monthSelected < objPopCalendar.monthNow){
sHTML += " " + datePointer + " "
}
else if (objPopCalendar.yearSelected == objPopCalendar.yearNow && objPopCalendar.monthSelected > objPopCalendar.monthNow){
sHTML += " " + datePointer + " "
}
//end
}
else
{
//deshabilita los días anteriores a la fecha actual
if (objPopCalendar.monthSelected == objPopCalendar.monthNow && objPopCalendar.yearSelected == objPopCalendar.yearNow) {
if(datePointer >= objPopCalendar.dateNow || objPopCalendar.selectWithOutLogin=='1' ){
sHTML += " " + datePointer + " "
}
else
{
sHTML += " " + datePointer + " "
}
}
else
if (objPopCalendar.yearSelected > objPopCalendar.yearNow || objPopCalendar.selectWithOutLogin=='1' ){
sHTML += " " + datePointer + " "
}
else if (objPopCalendar.yearSelected < objPopCalendar.yearNow){
sHTML += " " + datePointer + " "
}
else if (objPopCalendar.yearSelected == objPopCalendar.yearNow && objPopCalendar.monthSelected < objPopCalendar.monthNow){
sHTML += " " + datePointer + " "
}
else if (objPopCalendar.yearSelected == objPopCalendar.yearNow && objPopCalendar.monthSelected > objPopCalendar.monthNow){
sHTML += " " + datePointer + " "
}
//end
}
sHTML += ""
if ((dayPointer+PopCal.startAt) % 7 == PopCal.startAt) {
sHTML += " "
if ((PopCal.showWeekNumber==1)&&(datePointer" + (PopCalWeekNbr(new Date(objPopCalendar.yearSelected,objPopCalendar.monthSelected,datePointer+1))) + " "
}
}
}
if (PopCal.addGoodFriday==1)
{
objPopCalendar.Holidays[objPopCalendar.HolidaysCounter--]
}
if (PopCal.addCarnival==1)
{
objPopCalendar.Holidays[objPopCalendar.HolidaysCounter--]
}
document.getElementById("popupSuperContent").innerHTML = sHTML
document.getElementById("popupSuperSpanMonth").innerHTML = " " + objPopCalendar.monthName[objPopCalendar.monthSelected] + " "
document.getElementById("popupSuperSpanYear").innerHTML = " " + objPopCalendar.yearSelected + " "
PopCalMoveShadow()
}
function PopCalMoveShadow()
{
var PopCal=PopCalInstanceCreated()
if (PopCal.shadow==1)
{
objPopCalendar.crossShadowRObj.height = document.getElementById("popupSuperCalendar").offsetHeight - 10
objPopCalendar.crossShadowRObj.top = (document.getElementById("popupSuperCalendar").offsetTop + 10)
objPopCalendar.crossShadowRObj.left = (document.getElementById("popupSuperCalendar").offsetLeft + document.getElementById("popupSuperCalendar").offsetWidth)
objPopCalendar.crossShadowBObj.width = document.getElementById("popupSuperCalendar").offsetWidth
objPopCalendar.crossShadowBObj.top = (document.getElementById("popupSuperCalendar").offsetTop + document.getElementById("popupSuperCalendar").offsetHeight)
objPopCalendar.crossShadowBObj.left = ((document.getElementById("popupSuperCalendar").offsetLeft + document.getElementById("popupSuperCalendar").offsetWidth) + 10) - document.getElementById("popupSuperCalendar").offsetWidth
}
}
function PopCalDateNow()
{
return PopCalPadZero4(objPopCalendar.yearNow) + PopCalPadZero(objPopCalendar.monthNow) + PopCalPadZero(objPopCalendar.dateNow)
}
function PopCalDateSelect()
{
return PopCalPadZero4(objPopCalendar.yearSelected) + PopCalPadZero(objPopCalendar.monthSelected) + PopCalPadZero(objPopCalendar.dateSelected)
}
function PopCalDateFrom()
{
return PopCalPadZero4(objPopCalendar.yearFrom) + PopCalPadZero(objPopCalendar.monthFrom) + PopCalPadZero(objPopCalendar.dateFrom)
}
function PopCalDateUpTo()
{
return PopCalPadZero4(objPopCalendar.yearUpTo) + PopCalPadZero(objPopCalendar.monthUpTo) + PopCalPadZero(objPopCalendar.dateUpTo)
}
function PopCalCenturyOn(dateFormat)
{
var formatChar = " "
dateFormat = dateFormat.toLowerCase()
var aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
formatChar = "/"
aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
formatChar = "."
aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
formatChar = "-"
aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
// invalid date format
formatChar = ""
}
}
}
}
if ( formatChar != "" )
{
for (var i=0;i<3;i++)
{
if (aFormat[i]=="yyyy")
{
return true
}
}
}
return false
}
function PopCalSetDMY(dateValue, dateFormat)
{
var PopCal=PopCalInstanceCreated()
objPopCalendar.oDate = null
objPopCalendar.oMonth = null
objPopCalendar.oYear = null
var formatChar = " "
dateFormat = dateFormat.toLowerCase()
var aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
formatChar = "/"
aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
formatChar = "."
aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
formatChar = "-"
aFormat = dateFormat.split(formatChar)
if (aFormat.length<3)
{
// invalid date format
formatChar = ""
}
}
}
}
var tokensChanged = 0
if ( formatChar != "" )
{
// use user's date
var aData = dateValue.split(formatChar)
for (var i=0;i<3;i++)
{
if ((aFormat[i]=="d") || (aFormat[i]=="dd"))
{
objPopCalendar.oDate = parseInt(aData[i], 10)
tokensChanged ++
}
else if ((aFormat[i]=="m") || (aFormat[i]=="mm"))
{
if (((parseInt(aData[i], 10) - 1)>=0) && ((parseInt(aData[i], 10) - 1)<=11))
{
objPopCalendar.oMonth = parseInt(aData[i], 10) - 1
tokensChanged ++
}
}
else if ((aFormat[i]=="yy") || (aFormat[i]=="yyyy"))
{
objPopCalendar.oYear = parseInt(aData[i], 10)
tokensChanged ++
if (objPopCalendar.oYear < 100)
{
if (objPopCalendar.oYear < PopCal.centuryLimit)
{
objPopCalendar.oYear += 100
}
objPopCalendar.oYear += 1900
}
}
else if ((aFormat[i]=="mmm") || (aFormat[i]=="mmmm"))
{
for (j=0; j<12; j++)
{
if (aData[i])
{
if (aData[i].toLowerCase().substr(0,3)==objPopCalendar.monthName[j].toLowerCase().substr(0,3))
{
objPopCalendar.oMonth=j
tokensChanged ++
break
}
}
}
}
}
}
return ((tokensChanged==3)&&!isNaN(objPopCalendar.oDate)&&!isNaN(objPopCalendar.oMonth)&&!isNaN(objPopCalendar.oYear))
}
function PopCalChangeCurrentMonth()
{
if ((PopCalDateFrom().substr(0,6) <= PopCalDateNow().substr(0,6)) && (PopCalDateNow().substr(0,6) <= PopCalDateUpTo().substr(0,6)))
{
objPopCalendar.monthSelected=objPopCalendar.monthNow
objPopCalendar.yearSelected=objPopCalendar.yearNow
objPopCalendar.yearConstructed=false
objPopCalendar.monthConstructed=false
PopCalConstructCalendar()
}
}
function PopCalDomingoPascuas(y)
{
var lnCentena
var lnAux
var lnNroAureo
var lnDomingo
var lnEpactaJul
var lnCorrSolar
var lnCorrLunar
var lnEpactaGreg
var lnDiasLunaP
var lnDiasLuna15
var lnDiasPascua
var dtFecIni
var dtFecPascua
lnCentena = parseInt(y/100, 10)
lnAux = (y+1)%19
lnNroAureo = lnAux+(19*parseInt((19-lnAux)/19, 10))
lnDomingo = 7+(1-y-parseInt(y/4, 10)+lnCentena-parseInt(lnCentena/4, 10))%7
lnEpactaJul = ((11*lnNroAureo)-10)%30
lnCorrSolar = -(lnCentena-16)+parseInt((lnCentena-16)/4, 10)
lnCorrLunar = parseInt((lnCentena-15-parseInt((lnCentena-17)/25, 10))/3, 10)
lnEpactaGreg = (30+lnEpactaJul+lnCorrSolar+lnCorrLunar)%30
lnDiasLunaP = 24-lnEpactaGreg+(30*parseInt(lnEpactaGreg/24, 10))
lnDiasLuna15 = (27-lnEpactaGreg+(30*parseInt(lnEpactaGreg/24, 10)))%7
lnDiasPascua = lnDiasLunaP+(7+lnDomingo-lnDiasLuna15)%7
dtFecIni = new Date(y, 2, 21)
dtFecPascua = new Date(dtFecIni -(-(lnDiasPascua * 86400000)))
return (dtFecPascua)
}
function PopCalAddRegularHolidays()
{
//Dias libres (Panamá)
PopCalAddHoliday(1,1,0,"A" + c_nTilde + "o Nuevo","Happy New Year")
PopCalAddHoliday(9,1,0,"D" + c_iTilde + "a de los M" + c_aTilde + "rtires", "Martyr's Day")
PopCalAddHoliday(1,5,0,"D" + c_iTilde + "a del Trabajo", "Labor Day")
PopCalAddHoliday(3,11,0,"Separaci" + c_oTilde + "n de Colombia", "Separation of Colombia")
PopCalAddHoliday(10,11,0,"1er. Grito de Independencia", "First warning of Independence" )
PopCalAddHoliday(28,11,0,"Independencia de Espa" + c_nTilde + "a", "Independence of Spain")
PopCalAddHoliday(8,12,0,"D" + c_iTilde + "a de la Madre", "Mother's Day")
PopCalAddHoliday(25,12,0,"Navidad", "Christmas")
}
function configPopCalendar(year){
PopCalendar = getCalendarInstance();
PopCalendar.startAt = 0 // 0 - sunday ; 1 - monday
PopCalendar.showWeekNumber = 0 // 0 - don't show; 1 - show
PopCalendar.showToday = 1 // 0 - don't show; 1 - show
PopCalendar.showWeekend = 1 // 0 - don't show; 1 - show
PopCalendar.showHolidays = 1 // 0 - don't show; 1 - show
PopCalendar.selectWeekend = 0 // 0 - don't Select; 1 - Select
PopCalendar.selectHoliday = 0 // 0 - don't Select; 1 - Select
PopCalendar.addCarnival = 1 // 0 - don't Add; Add to Holiday (Tuesday of Carnival)
PopCalendar.addGoodFriday = 1 // 0 - don't Add; Add to Holiday
PopCalendar.language = 1 // 0 - Spanish; 1 - English
PopCalendar.defaultFormat = "mm-dd-yyyy" //Default Format dd-mm-yyyy
PopCalendar.fixedX = -1 // x position (-1 if to appear below control)
PopCalendar.fixedY = -1 // y position (-1 if to appear below control)
PopCalendar.fade = .5 // 0 - don't fade; .1 to 1 - fade (Only IE)
PopCalendar.shadow = 1 // 0 - don't shadow, 1 - shadow
PopCalendar.move = 1 // 0 - don't move, 1 - move (Only IE)
PopCalendar.saveMovePos = 1 // 0 - don't save, 1 - save
PopCalendar.centuryLimit = 40 // 1940 - 2039
PopCalendar.initCalendar()
if (year!='')objPopCalendar.yearNow = year;
}