',
monthHtml,
yearHtml,
prev = true,
next = true;
for (arr = [], i = 0; i < 12; i++) {
arr.push('
');
}
monthHtml = '
' + opts.i18n.months[month] + '
';
if (isArray(opts.yearRange)) {
i = opts.yearRange[0];
j = opts.yearRange[1] + 1;
} else {
i = year - opts.yearRange;
j = 1 + year + opts.yearRange;
}
for (arr = []; i < j && i <= opts.maxYear; i++) {
if (i >= opts.minYear) {
arr.push('
');
}
}
yearHtml = '
' + year + opts.yearSuffix + '
';
if (opts.showMonthAfterYear) {
html += yearHtml + monthHtml;
} else {
html += monthHtml + yearHtml;
}
if (isMinYear && (month === 0 || opts.minMonth >= month)) {
prev = false;
}
if (isMaxYear && (month === 11 || opts.maxMonth <= month)) {
next = false;
}
if (c === 0) {
html += '
';
}
if (c === (instance._o.numberOfMonths - 1) ) {
html += '
';
}
return html += '
';
},
renderTable = function(opts, data)
{
return '' + renderHead(opts) + renderBody(data) + '' + renderTitle(this, c, this.calendars[c].year, this.calendars[c].month, this.calendars[0].year) + this.render(this.calendars[c].year, this.calendars[c].month) + '
';
}
this.el.innerHTML = html;
if (opts.bound) {
if(opts.field.type !== 'hidden') {
sto(function() {
opts.trigger.focus();
}, 1);
}
}
if (typeof this._o.onDraw === 'function') {
var self = this;
sto(function() {
self._o.onDraw.call(self);
}, 0);
}
},
adjustPosition: function()
{
if (this._o.container) return;
var field = this._o.trigger, pEl = field,
width = this.el.offsetWidth, height = this.el.offsetHeight,
viewportWidth = window.innerWidth || document.documentElement.clientWidth,
viewportHeight = window.innerHeight || document.documentElement.clientHeight,
scrollTop = window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop,
left, top, clientRect;
if (typeof field.getBoundingClientRect === 'function') {
clientRect = field.getBoundingClientRect();
left = clientRect.left + window.pageXOffset;
top = clientRect.bottom + window.pageYOffset;
} else {
left = pEl.offsetLeft;
top = pEl.offsetTop + pEl.offsetHeight;
while((pEl = pEl.offsetParent)) {
left += pEl.offsetLeft;
top += pEl.offsetTop;
}
}
// default position is bottom & left
if ((this._o.reposition && left + width > viewportWidth) ||
(
this._o.position.indexOf('right') > -1 &&
left - width + field.offsetWidth > 0
)
) {
left = left - width + field.offsetWidth;
}
if ((this._o.reposition && top + height > viewportHeight + scrollTop) ||
(
this._o.position.indexOf('top') > -1 &&
top - height - field.offsetHeight > 0
)
) {
top = top - height - field.offsetHeight;
}
this.el.style.cssText = [
'position: absolute',
'left: ' + left + 'px',
'top: ' + top + 'px'
].join(';');
},
/**
* render HTML for a particular month
*/
render: function(year, month)
{
var opts = this._o,
now = new Date(),
days = getDaysInMonth(year, month),
before = new Date(year, month, 1).getDay(),
data = [],
row = [];
setToStartOfDay(now);
if (opts.firstDay > 0) {
before -= opts.firstDay;
if (before < 0) {
before += 7;
}
}
var cells = days + before,
after = cells;
while(after > 7) {
after -= 7;
}
cells += 7 - after;
for (var i = 0, r = 0; i < cells; i++)
{
var day = new Date(year, month, 1 + (i - before)),
// isDisabled = (opts.minDate && day < opts.minDate) || (opts.maxDate && day > opts.maxDate),
isSelected = isDate(this._d) ? compareDates(day, this._d) : false,
isToday = compareDates(day, now),
isEmpty = i < before || i >= (days + before),
isDisabled = (opts.minDate && day < opts.minDate) ||
(opts.maxDate && day > opts.maxDate) ||
(opts.disableWeekends && isWeekend(day));
if(!isDisabled){
var giorno=25;
var mese=12;
var anno=2024;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=26;
var mese=12;
var anno=2024;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=31;
var mese=12;
var anno=2024;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=1;
var mese=1;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=4;
var mese=1;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=6;
var mese=1;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=19;
var mese=4;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=21;
var mese=4;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=25;
var mese=4;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=26;
var mese=4;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=1;
var mese=5;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=2;
var mese=5;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=3;
var mese=5;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=2;
var mese=6;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=24;
var mese=12;
var anno=2024;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=30;
var mese=12;
var anno=2024;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=31;
var mese=5;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=5;
var mese=7;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=12;
var mese=7;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=19;
var mese=7;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=26;
var mese=7;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=2;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=30;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=9;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=16;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=23;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=11;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=12;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=13;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=14;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=15;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=4;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=5;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=6;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=6;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=8;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=7;
var mese=8;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=1;
var mese=11;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=6;
var mese=12;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=8;
var mese=12;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=25;
var mese=12;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=26;
var mese=12;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=27;
var mese=12;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=1;
var mese=1;
var anno=2026;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=2;
var mese=1;
var anno=2026;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=3;
var mese=1;
var anno=2026;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=5;
var mese=1;
var anno=2026;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=5;
var mese=1;
var anno=2026;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=6;
var mese=1;
var anno=2026;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
var giorno=18;
var mese=4;
var anno=2025;
if(day.getDate()==giorno && (day.getMonth()+1)==mese && (day.getFullYear())==anno )
{
isDisabled=true;
}
}
row.push(renderDay(1 + (i - before), month, year, isSelected, isToday, isDisabled, isEmpty));
if (++r === 7) {
if (opts.showWeekNumber) {
row.unshift(renderWeek(i - before, month, year));
}
data.push(renderRow(row, opts.isRTL));
row = [];
r = 0;
}
}
return renderTable(opts, data);
},
isVisible: function()
{
return this._v;
},
show: function()
{
if (!this._v) {
removeClass(this.el, 'is-hidden');
this._v = true;
this.draw();
if (this._o.bound) {
addEvent(document, 'click', this._onClick);
this.adjustPosition();
}
if (typeof this._o.onOpen === 'function') {
this._o.onOpen.call(this);
}
}
},
hide: function()
{
var v = this._v;
if (v !== false) {
if (this._o.bound) {
removeEvent(document, 'click', this._onClick);
}
this.el.style.cssText = '';
addClass(this.el, 'is-hidden');
this._v = false;
if (v !== undefined && typeof this._o.onClose === 'function') {
this._o.onClose.call(this);
}
}
},
/**
* GAME OVER
*/
destroy: function()
{
this.hide();
removeEvent(this.el, 'mousedown', this._onMouseDown, true);
removeEvent(this.el, 'change', this._onChange);
if (this._o.field) {
removeEvent(this._o.field, 'change', this._onInputChange);
if (this._o.bound) {
removeEvent(this._o.trigger, 'click', this._onInputClick);
removeEvent(this._o.trigger, 'focus', this._onInputFocus);
removeEvent(this._o.trigger, 'blur', this._onInputBlur);
}
}
if (this.el.parentNode) {
this.el.parentNode.removeChild(this.el);
}
}
};
return Pikaday;
}));