diff --git a/libraries/cms/html/html.php b/libraries/cms/html/html.php index e885715d2edb2..ac4cebba82932 100644 --- a/libraries/cms/html/html.php +++ b/libraries/cms/html/html.php @@ -1026,6 +1026,13 @@ public static function calendar($value, $name, $id, $format = '%Y-%m-%d', $attri $singleHeader = isset($attribs['singleHeader']) ? $attribs['singleHeader'] : false; $hint = isset($attribs['placeholder']) ? $attribs['placeholder'] : ''; $class = isset($attribs['class']) ? $attribs['class'] : ''; + $onchange = isset($attribs['onChange']) ? $attribs['onChange'] : ''; + + $showTime = !empty($showTime) ? ($showTime === 'true' ? "1" : "0") : "1"; + $todayBtn = !empty($todayBtn) ? ($todayBtn === 'true' ? "1" : "0") : "1"; + $weekNumbers = !empty($weekNumbers) ? ($weekNumbers === 'true' ? "1" : "0") : "0"; + $fillTable = !empty($fillTable) ? ($fillTable === 'true' ? "1" : "0") : "1"; + $singleHeader = !empty($singleHeader) ? ($singleHeader === 'true' ? "1" : "0") : "0"; // Format value when not nulldate ('0000-00-00 00:00:00'), otherwise blank it as it would result in 1970-01-01. if ($value && $value != JFactory::getDbo()->getNullDate() && strtotime($value) !== false) @@ -1063,6 +1070,8 @@ public static function calendar($value, $name, $id, $format = '%Y-%m-%d', $attri 'helperPath' => $helperPath, 'localesPath' => $localesPath, 'direction' => $direction, + 'onchange' => $onchange, + ); return JLayoutHelper::render('joomla.form.field.calendar', $data, null, null); diff --git a/media/system/js/fields/calendar.js b/media/system/js/fields/calendar.js index b147ef385343e..ec299eeeea63b 100644 --- a/media/system/js/fields/calendar.js +++ b/media/system/js/fields/calendar.js @@ -1058,9 +1058,10 @@ if (!instance) { instance = new JoomlaCalendar(element); - instance.inputField.form.addEventListener('submit', function () { - instance.setAltValue(); - }); + if (instance.inputField.form) + instance.inputField.form.addEventListener('submit', function () { + instance.setAltValue(); + }); } } }; diff --git a/media/system/js/fields/calendar.min.js b/media/system/js/fields/calendar.min.js index 0fe150056c4aa..8fe398b5681dc 100644 --- a/media/system/js/fields/calendar.min.js +++ b/media/system/js/fields/calendar.min.js @@ -1 +1 @@ -!function(a,b){"use strict";Date.convertNumbers=function(a){var a=a.toString();if("[object Array]"===Object.prototype.toString.call(JoomlaCalLocale.localLangNumbers))for(var b=0;b0;)for(var g=f[--e],h=g.getElementsByTagName("td"),i=h.length;i>0;){h[--i]}this.dropdownElement.style.display="block",this.hidden=!1,b.addEventListener("keydown",this._calKeyEvent,!0),b.addEventListener("keypress",this._calKeyEvent,!0),b.addEventListener("mousedown",this._documentClick,!0);var k=this.element.querySelector(".js-calendar");a.innerHeight+a.scrollYc.params.minYear&&f.setOtherFullYear(c.params.dateType,h-1);break;case-1:var j=f.getLocalDate(c.params.dateType);if(i>0){var k=f.getLocalMonthDays(c.params.dateType,i-1);j>k&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,i-1)}else if(h-- >c.params.minYear){f.setOtherFullYear(c.params.dateType,h);var k=f.getLocalMonthDays(c.params.dateType,11);j>k&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,11)}break;case 1:var j=f.getLocalDate(c.params.dateType);if(i<11){var k=f.getLocalMonthDays(c.params.dateType,i+1);j>k&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,i+1)}else if(hk&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,0)}break;case 2:c.params.compressedHeader||h48||c<57||186===c||189===c||190===c||32===c))return d(a)},c.prototype._create=function(){var a=this,b=this.element,c=e("table"),d=e("div");this.table=c,c.className="table",c.cellSpacing=0,c.cellPadding=0,c.style.marginBottom=0,this.dropdownElement=d,b.appendChild(d),this.params.direction&&(d.style.direction=this.params.direction),d.className="js-calendar",d.style.position="absolute",d.style.boxShadow="0px 0px 70px 0px rgba(0,0,0,0.67)",d.style.minWidth=this.inputField.width,d.style.padding="0",d.style.display="none",d.style.left="auto",d.style.top="auto",d.style.zIndex=1060,d.style.borderRadius="20px",this.wrapper=e("div"),this.wrapper.className="calendar-container",d.appendChild(this.wrapper),this.wrapper.appendChild(c);var f=e("thead",c);f.className="calendar-header";var g=null,h=null,i=this,j=function(b,c,d,f,j,k){f=f?f:"td",k=k?'class="'+k+'"':"",j=j?j:{},g=e(f,h),g.colSpan=c;for(var l in j)g.style[l]=j[l];return 0!=d&&Math.abs(d)<=2&&(g.className+=" nav"),g.addEventListener("mousedown",a._dayMouseDown,!0),g.calendar=i,g.navtype=d,0!=d&&Math.abs(d)<=2?g.innerHTML=""+b+"":g.innerHTML="
"+b+"
",g};this.params.compressedHeader===!1&&(h=e("tr",f),h.className="calendar-head-row",this._nav_py=j("‹",1,-2,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-prev-year"),this.title=j('
',this.params.weekNumbers?6:5,300),this.title.className="title",this._nav_ny=j(" ›",1,2,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-next-year")),h=e("tr",f),h.className="calendar-head-row",this._nav_pm=j("‹",1,-1,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-prev-month"),this._nav_month=j('
',this.params.weekNumbers?6:5,888,"td",{textAlign:"center"}),this._nav_month.className="title",this._nav_nm=j(" ›",1,1,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-next-month"),h=e("tr",f),h.className=a.params.weekNumbers?"daynames wk":"daynames",this.params.weekNumbers&&(g=e("td",h),g.className="day-name wn",g.innerHTML=JoomlaCalLocale.wk);for(var k=7;k>0;--k)g=e("td",h),k||(g.calendar=a);this.firstdayname=this.params.weekNumbers?h.firstChild.nextSibling:h.firstChild;for(var l=this.params.firstDayOfWeek,g=this.firstdayname,m=JoomlaCalLocale.weekend,k=0;k<7;++k){var n=(k+l)%7;g.classList.add("day-name"),this.params.weekNumbers?g.classList.add("day-name-week"):"",k&&(g.calendar=a,g.fdow=n),m.indexOf(m)!=-1&&g.classList.add("weekend"),g.innerHTML=JoomlaCalLocale.shortDays[(k+l)%7],g=g.nextSibling}var o=e("tbody",c);for(this.tbody=o,k=6;k>0;--k){h=e("tr",o),this.params.weekNumbers&&(g=e("td",h));for(var p=7;p>0;--p)g=e("td",h),g.calendar=this,g.addEventListener("mousedown",this._dayMouseDown,!0)}if(this.params.showsTime){h=e("tr",o),h.className="time",g=e("td",h),g.className="time time-title",g.colSpan=1,g.style.verticalAlign="middle",g.innerHTML=JoomlaCalLocale.time||" ";var q=e("td",h);q.className="time hours-select",q.colSpan=2;var r=e("td",h);r.className="time minutes-select",r.colSpan=2,function(){function b(b,c,d,f,g){var i,h=e("select",g);h.calendar=a,h.className=b,h.setAttribute("data-chosen",!0),h.style.width="100%",h.navtype=50,h._range=[];for(var j=d;j<=f;++j){var k,l="";j==c&&(l=!0),j<10&&f>=10?(i="0"+j,k=Date.convertNumbers("0")+Date.convertNumbers(j)):(i=""+j,k=""+Date.convertNumbers(j)),h.options.add(new Option(k,i,l,l))}return h}var c=a.date.getHours(),d=a.date.getMinutes(),f=!a.params.time24,i=a.date.getHours()>12;f&&i&&(c-=12);var j=b("time time-hours",c,f?1:0,f?12:23,q),k=b("time time-minutes",d,0,59,r),l=null;if(g=e("td",h),g.className="time ampm-select",g.colSpan=a.params.weekNumbers?1:2,f){var m=!0,n=Date.parseFieldDate(a.inputField.getAttribute("data-alt-value"),a.params.dateFormat,"gregorian");i=n.getHours()>12;var o=e("select",g);o.className="time-ampm",o.style.width="100%",o.options.add(new Option(JoomlaCalLocale.PM,"pm",i?m:"",i?m:"")),o.options.add(new Option(JoomlaCalLocale.AM,"am",i?"":m,i?"":m)),l=o,l.addEventListener("change",function(b){a.updateTime(b.target.parentNode.parentNode.childNodes[1].childNodes[0].value,b.target.parentNode.parentNode.childNodes[2].childNodes[0].value,b.target.parentNode.parentNode.childNodes[3].childNodes[0].value)},!1)}else g.innerHTML=" ",g.colSpan=a.params.weekNumbers?3:2;j.addEventListener("change",function(b){a.updateTime(b.target.parentNode.parentNode.childNodes[1].childNodes[0].value,b.target.parentNode.parentNode.childNodes[2].childNodes[0].value,b.target.parentNode.parentNode.childNodes[3].childNodes[0].value)},!1),k.addEventListener("change",function(b){a.updateTime(b.target.parentNode.parentNode.childNodes[1].childNodes[0].value,b.target.parentNode.parentNode.childNodes[2].childNodes[0].value,b.target.parentNode.parentNode.childNodes[3].childNodes[0].value)},!1)}()}h=e("tr",o),h.className="btn-row";var s=this.inputField.hasAttribute("required")?"none;":"block;";if(this._nav_save=j(''+JoomlaCalLocale.save+"",2,100,"td",{textAlign:"center"}),!this.inputField.hasAttribute("required")){var t=h.querySelector('a[data-action="clear"]');t.addEventListener("click",function(b){var c=t.parentNode.parentNode;"TD"===c.tagName&&a.cellClick(a._nav_save,b)},!0)}if(this.params.showsTodayBtn){this._nav_now=j(''+JoomlaCalLocale.today+"",this.params.weekNumbers?4:3,0,"td",{textAlign:"center"});var u=h.querySelector('a[data-action="today"]');u.addEventListener("click",function(b){var c=u.parentNode.parentNode;"TD"===c.tagName&&a.cellClick(a._nav_now,b)},!0)}else g=e("td",h),g.innerHTML=" ",g.colSpan=this.params.weekNumbers?4:3;this._nav_exit=j(''+JoomlaCalLocale.exit+"",2,200,"td",{textAlign:"center"});var v=h.querySelector('a[data-action="exit"]');v.addEventListener("click",function(b){var c=v.parentNode.parentNode;"TD"===c.tagName&&a.cellClick(a._nav_exit,b)},!0),this.processCalendar()},c.prototype.processCalendar=function(){this.table.style.visibility="hidden";var a=this.params.firstDayOfWeek,b=this.date,c=new Date,d=c.getLocalFullYear(this.params.dateType),e=c.getLocalMonth(this.params.dateType),f=c.getLocalDate(this.params.dateType),g=b.getOtherFullYear(this.params.dateType),h=b.getHours(),i=b.getMinutes(),k=(b.getSeconds(),!this.params.time24);gthis.params.maxYear&&(g=this.params.maxYear,b.getOtherFullYear(this.params.dateType,g)),this.params.firstDayOfWeek=a,this.date=new Date(b);var l=b.getLocalMonth(this.params.dateType),m=b.getLocalDate(this.params.dateType);b.setLocalDate(this.params.dateType,1);var n=(b.getLocalDay(this.params.dateType)-this.params.firstDayOfWeek)%7;n<0&&(n+=7),b.setLocalDate(this.params.dateType,-n),b.setLocalDate(this.params.dateType,b.getLocalDate(this.params.dateType)+1);for(var o=this.tbody.firstChild,p=this.ar_days=new Array,q=JoomlaCalLocale.weekend,r=parseInt(b.getLocalWeekDays(this.params.dateType)),s=0;s12&&k&&(h-=12),h=h<10?"0"+h:h,i=i<10?"0"+i:i;var B=this.table.querySelector(".time-hours"),C=this.table.querySelector(".time-minutes");if(this.resetSelected(B),B.value=h,this.resetSelected(C),C.value=i,!this.params.time24){var D=new Date(this.inputField.getAttribute("data-alt-value")),E=this.table.querySelector(".time-ampm"),F=D.getHours();F>12&&(this.resetSelected(E),E.value="pm")}}if(this.params.compressedHeader){var G=Date.convertNumbers(g.toString());this._nav_month.getElementsByTagName("span")[0].innerHTML=this.params.monthBefore?G+" - "+JoomlaCalLocale.months[l]:JoomlaCalLocale.months[l]+" - "+G}else this._nav_month.getElementsByTagName("span")[0].innerHTML=this.params.debug?l+" "+JoomlaCalLocale.months[l]:JoomlaCalLocale.months[l],this.title.getElementsByTagName("span")[0].innerHTML=this.params.debug?g+" "+Date.convertNumbers(g.toString()):Date.convertNumbers(g.toString());this.table.style.visibility="visible"},c.prototype._bindEvents=function(){var a=this;this.inputField.addEventListener("focus",function(){a.show()},!0),this.inputField.addEventListener("blur",function(b){if(null==b.relatedTarget||!(b.relatedTarget.classList.contains("time-hours")||b.relatedTarget.classList.contains("time-minutes")||b.relatedTarget.classList.contains("time-ampm"))){for(var c=b.target;c.parentNode;)if(c=c.parentNode,c.classList.contains("field-calendar"))return;a.close()}},!0),this.button.addEventListener("click",function(){a.show()},!1)};var d=function(b){return b||(b=a.event),b.preventDefault(),b.stopPropagation(),!1},e=function(a,c){var d=null;return d=b.createElement(a),"undefined"!=typeof c&&c.appendChild(d),d},f=function(a){return!isNaN(a)&&function(a){return(0|a)===a}(parseFloat(a))},g=function(a,b){var c=new Date,d=c.getLocalFullYear(b);return d+a};Array.prototype.indexOf||(Array.prototype.indexOf=function(a){var b=this.length>>>0,c=Number(arguments[1])||0;for(c=c<0?Math.ceil(c):Math.floor(c),c<0&&(c+=b);c0;)for(var g=f[--e],h=g.getElementsByTagName("td"),i=h.length;i>0;){h[--i]}this.dropdownElement.style.display="block",this.hidden=!1,b.addEventListener("keydown",this._calKeyEvent,!0),b.addEventListener("keypress",this._calKeyEvent,!0),b.addEventListener("mousedown",this._documentClick,!0);var k=this.element.querySelector(".js-calendar");a.innerHeight+a.scrollYc.params.minYear&&f.setOtherFullYear(c.params.dateType,h-1);break;case-1:var j=f.getLocalDate(c.params.dateType);if(i>0){var k=f.getLocalMonthDays(c.params.dateType,i-1);j>k&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,i-1)}else if(h-- >c.params.minYear){f.setOtherFullYear(c.params.dateType,h);var k=f.getLocalMonthDays(c.params.dateType,11);j>k&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,11)}break;case 1:var j=f.getLocalDate(c.params.dateType);if(i<11){var k=f.getLocalMonthDays(c.params.dateType,i+1);j>k&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,i+1)}else if(hk&&f.setLocalDate(c.params.dateType,k),f.setLocalMonth(c.params.dateType,0)}break;case 2:c.params.compressedHeader||h48||c<57||186===c||189===c||190===c||32===c))return d(a)},c.prototype._create=function(){var a=this,b=this.element,c=e("table"),d=e("div");this.table=c,c.className="table",c.cellSpacing=0,c.cellPadding=0,c.style.marginBottom=0,this.dropdownElement=d,b.appendChild(d),this.params.direction&&(d.style.direction=this.params.direction),d.className="js-calendar",d.style.position="absolute",d.style.boxShadow="0px 0px 70px 0px rgba(0,0,0,0.67)",d.style.minWidth=this.inputField.width,d.style.padding="0",d.style.display="none",d.style.left="auto",d.style.top="auto",d.style.zIndex=1060,d.style.borderRadius="20px",this.wrapper=e("div"),this.wrapper.className="calendar-container",d.appendChild(this.wrapper),this.wrapper.appendChild(c);var f=e("thead",c);f.className="calendar-header";var g=null,h=null,i=this,j=function(b,c,d,f,j,k){f=f?f:"td",k=k?'class="'+k+'"':"",j=j?j:{},g=e(f,h),g.colSpan=c;for(var l in j)g.style[l]=j[l];return 0!=d&&Math.abs(d)<=2&&(g.className+=" nav"),g.addEventListener("mousedown",a._dayMouseDown,!0),g.calendar=i,g.navtype=d,0!=d&&Math.abs(d)<=2?g.innerHTML=""+b+"":g.innerHTML="
"+b+"
",g};this.params.compressedHeader===!1&&(h=e("tr",f),h.className="calendar-head-row",this._nav_py=j("‹",1,-2,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-prev-year"),this.title=j('
',this.params.weekNumbers?6:5,300),this.title.className="title",this._nav_ny=j(" ›",1,2,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-next-year")),h=e("tr",f),h.className="calendar-head-row",this._nav_pm=j("‹",1,-1,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-prev-month"),this._nav_month=j('
',this.params.weekNumbers?6:5,888,"td",{textAlign:"center"}),this._nav_month.className="title",this._nav_nm=j(" ›",1,1,"",{"text-align":"center","font-size":"2em","line-height":"1em"},"js-btn btn-next-month"),h=e("tr",f),h.className=a.params.weekNumbers?"daynames wk":"daynames",this.params.weekNumbers&&(g=e("td",h),g.className="day-name wn",g.innerHTML=JoomlaCalLocale.wk);for(var k=7;k>0;--k)g=e("td",h),k||(g.calendar=a);this.firstdayname=this.params.weekNumbers?h.firstChild.nextSibling:h.firstChild;for(var l=this.params.firstDayOfWeek,g=this.firstdayname,m=JoomlaCalLocale.weekend,k=0;k<7;++k){var n=(k+l)%7;g.classList.add("day-name"),this.params.weekNumbers?g.classList.add("day-name-week"):"",k&&(g.calendar=a,g.fdow=n),m.indexOf(m)!=-1&&g.classList.add("weekend"),g.innerHTML=JoomlaCalLocale.shortDays[(k+l)%7],g=g.nextSibling}var o=e("tbody",c);for(this.tbody=o,k=6;k>0;--k){h=e("tr",o),this.params.weekNumbers&&(g=e("td",h));for(var p=7;p>0;--p)g=e("td",h),g.calendar=this,g.addEventListener("mousedown",this._dayMouseDown,!0)}if(this.params.showsTime){h=e("tr",o),h.className="time",g=e("td",h),g.className="time time-title",g.colSpan=1,g.style.verticalAlign="middle",g.innerHTML=JoomlaCalLocale.time||" ";var q=e("td",h);q.className="time hours-select",q.colSpan=2;var r=e("td",h);r.className="time minutes-select",r.colSpan=2,function(){function b(b,c,d,f,g){var i,h=e("select",g);h.calendar=a,h.className=b,h.setAttribute("data-chosen",!0),h.style.width="100%",h.navtype=50,h._range=[];for(var j=d;j<=f;++j){var k,l="";j==c&&(l=!0),j<10&&f>=10?(i="0"+j,k=Date.convertNumbers("0")+Date.convertNumbers(j)):(i=""+j,k=""+Date.convertNumbers(j)),h.options.add(new Option(k,i,l,l))}return h}var c=a.date.getHours(),d=a.date.getMinutes(),f=!a.params.time24,i=a.date.getHours()>12;f&&i&&(c-=12);var j=b("time time-hours",c,f?1:0,f?12:23,q),k=b("time time-minutes",d,0,59,r),l=null;if(g=e("td",h),g.className="time ampm-select",g.colSpan=a.params.weekNumbers?1:2,f){var m=!0,n=Date.parseFieldDate(a.inputField.getAttribute("data-alt-value"),a.params.dateFormat,"gregorian");i=n.getHours()>12;var o=e("select",g);o.className="time-ampm",o.style.width="100%",o.options.add(new Option(JoomlaCalLocale.PM,"pm",i?m:"",i?m:"")),o.options.add(new Option(JoomlaCalLocale.AM,"am",i?"":m,i?"":m)),l=o,l.addEventListener("change",function(b){a.updateTime(b.target.parentNode.parentNode.childNodes[1].childNodes[0].value,b.target.parentNode.parentNode.childNodes[2].childNodes[0].value,b.target.parentNode.parentNode.childNodes[3].childNodes[0].value)},!1)}else g.innerHTML=" ",g.colSpan=a.params.weekNumbers?3:2;j.addEventListener("change",function(b){a.updateTime(b.target.parentNode.parentNode.childNodes[1].childNodes[0].value,b.target.parentNode.parentNode.childNodes[2].childNodes[0].value,b.target.parentNode.parentNode.childNodes[3].childNodes[0].value)},!1),k.addEventListener("change",function(b){a.updateTime(b.target.parentNode.parentNode.childNodes[1].childNodes[0].value,b.target.parentNode.parentNode.childNodes[2].childNodes[0].value,b.target.parentNode.parentNode.childNodes[3].childNodes[0].value)},!1)}()}h=e("tr",o),h.className="btn-row";var s=this.inputField.hasAttribute("required")?"none;":"block;";if(this._nav_save=j(''+JoomlaCalLocale.save+"",2,100,"td",{textAlign:"center"}),!this.inputField.hasAttribute("required")){var t=h.querySelector('a[data-action="clear"]');t.addEventListener("click",function(b){var c=t.parentNode.parentNode;"TD"===c.tagName&&a.cellClick(a._nav_save,b)},!0)}if(this.params.showsTodayBtn){this._nav_now=j(''+JoomlaCalLocale.today+"",this.params.weekNumbers?4:3,0,"td",{textAlign:"center"});var u=h.querySelector('a[data-action="today"]');u.addEventListener("click",function(b){var c=u.parentNode.parentNode;"TD"===c.tagName&&a.cellClick(a._nav_now,b)},!0)}else g=e("td",h),g.innerHTML=" ",g.colSpan=this.params.weekNumbers?4:3;this._nav_exit=j(''+JoomlaCalLocale.exit+"",2,200,"td",{textAlign:"center"});var v=h.querySelector('a[data-action="exit"]');v.addEventListener("click",function(b){var c=v.parentNode.parentNode;"TD"===c.tagName&&a.cellClick(a._nav_exit,b)},!0),this.processCalendar()},c.prototype.processCalendar=function(){this.table.style.visibility="hidden";var a=this.params.firstDayOfWeek,b=this.date,c=new Date,d=c.getLocalFullYear(this.params.dateType),e=c.getLocalMonth(this.params.dateType),f=c.getLocalDate(this.params.dateType),g=b.getOtherFullYear(this.params.dateType),h=b.getHours(),i=b.getMinutes(),k=(b.getSeconds(),!this.params.time24);gthis.params.maxYear&&(g=this.params.maxYear,b.getOtherFullYear(this.params.dateType,g)),this.params.firstDayOfWeek=a,this.date=new Date(b);var l=b.getLocalMonth(this.params.dateType),m=b.getLocalDate(this.params.dateType);b.setLocalDate(this.params.dateType,1);var n=(b.getLocalDay(this.params.dateType)-this.params.firstDayOfWeek)%7;n<0&&(n+=7),b.setLocalDate(this.params.dateType,-n),b.setLocalDate(this.params.dateType,b.getLocalDate(this.params.dateType)+1);for(var o=this.tbody.firstChild,p=this.ar_days=new Array,q=JoomlaCalLocale.weekend,r=parseInt(b.getLocalWeekDays(this.params.dateType)),s=0;s12&&k&&(h-=12),h=h<10?"0"+h:h,i=i<10?"0"+i:i;var B=this.table.querySelector(".time-hours"),C=this.table.querySelector(".time-minutes");if(this.resetSelected(B),B.value=h,this.resetSelected(C),C.value=i,!this.params.time24){var D=new Date(this.inputField.getAttribute("data-alt-value")),E=this.table.querySelector(".time-ampm"),F=D.getHours();F>12&&(this.resetSelected(E),E.value="pm")}}if(this.params.compressedHeader){var G=Date.convertNumbers(g.toString());this._nav_month.getElementsByTagName("span")[0].innerHTML=this.params.monthBefore?G+" - "+JoomlaCalLocale.months[l]:JoomlaCalLocale.months[l]+" - "+G}else this._nav_month.getElementsByTagName("span")[0].innerHTML=this.params.debug?l+" "+JoomlaCalLocale.months[l]:JoomlaCalLocale.months[l],this.title.getElementsByTagName("span")[0].innerHTML=this.params.debug?g+" "+Date.convertNumbers(g.toString()):Date.convertNumbers(g.toString());this.table.style.visibility="visible"},c.prototype._bindEvents=function(){var a=this;this.inputField.addEventListener("focus",function(){a.show()},!0),this.inputField.addEventListener("blur",function(b){if(null==b.relatedTarget||!(b.relatedTarget.classList.contains("time-hours")||b.relatedTarget.classList.contains("time-minutes")||b.relatedTarget.classList.contains("time-ampm"))){for(var c=b.target;c.parentNode;)if(c=c.parentNode,c.classList.contains("field-calendar"))return;a.close()}},!0),this.button.addEventListener("click",function(){a.show()},!1)};var d=function(b){return b||(b=a.event),b.preventDefault(),b.stopPropagation(),!1},e=function(a,c){var d=null;return d=b.createElement(a),"undefined"!=typeof c&&c.appendChild(d),d},f=function(a){return!isNaN(a)&&function(a){return(0|a)===a}(parseFloat(a))},g=function(a,b){var c=new Date,d=c.getLocalFullYear(b);return d+a};Array.prototype.indexOf||(Array.prototype.indexOf=function(a){var b=this.length>>>0,c=Number(arguments[1])||0;for(c=c<0?Math.ceil(c):Math.floor(c),c<0&&(c+=b);c