/* JavaScript source for the Calendar Localization Demo Please note, the locale special characters may not display correctly in your browser. */ var MC = apprisant.MonthlyCalendar; var LOCALES = { de:{ startDay:1, yearMonth:true, firstLetterOnly:true, months:[ 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember' ], days:[ 'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag' ] }, fr:{ startDay:1, yearMonth:true, firstLetterOnly:true, months:[ 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre' ], days:[ 'dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi' ] }, it:{ startDay:1, yearMonth:true, firstLetterOnly:true, months:[ 'Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre' ], days:[ 'domenica', 'lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato' ] }, es:{ startDay:1, yearMonth:true, firstLetterOnly:true, months:[ 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Setiembre', 'Octubre', 'Noviembre', 'Diciembre' ], days:[ 'domingo', 'lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado' ] }, hu:{ startDay:1, yearMonth:true, firstLetterOnly:false, months:[ 'Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December' ], days:[ 'vasárnap', 'hétfő', 'kedd', 'szerda', 'csütörtök', 'péntek', 'szombat' ], dayAbbrevs:[ 'v', 'h', 'k', 'sz', 'cs', 'p', 'sz' ] }, se:{ startDay:1, yearMonth:true, firstLetterOnly:true, months:[ 'Januari', 'Februari', 'Mars', 'April', 'Maj', 'Juni', 'Juli', 'Augusti', 'September', 'Oktober', 'November', 'December' ], days:[ 'söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag' ] } }; LOCALES.mx = { startDay:0, yearMonth:true, firstLetterOnly:true, months:LOCALES.es.months, days:LOCALES.es.days }; LOCALES.en = MC.LOCALE_EN; var Style = { headerTop:'hsl(20,47%,45%)', headerBottom:'hsl(20,52%,53%)', headerAnno:'hsl(20,10%,95%)', arrows:'hsl(20,48%,78%)', lines:'hsl(20,48%,93.5%)', dayIn:'hsl(20,95%,99%)', dayOut:'hsl(20,40%,88%)', today:'hsl(20,70%,90%)', dayNum:'hsl(20,43%,53%)' }; var msie = apprisant.Toolkit.msie; if (msie && msie <= 8) Style = { headerTop:'rgb(169,97,61)', headerBottom:'rgb(197,114,73)', headerAnno:'rgb(244,242,241)', arrows:'rgb(226,190,172)', lines:'rgb(246,234,229)', dayIn:'rgb(255,252,250)', dayOut:'rgb(237,220,212)', today:'rgb(247,224,212)', dayNum:'rgb(187,118,84)' }; var calendar, currLocale = 'en', headerBgStyle; window.onload = function() { document.getElementById('en').checked = 'checked'; var config = { sizePolicy:MC.CONTAINER, border:3, selectCB:selectHandler }; config.monthlyCalendar = { background: { body: { crTop:10, crBottom:6 }, header: { style:getHeaderBgStyle }, monthLabel: { style:Style.headerAnno, font:MC.font(24, '', 'italic') }, dayNames: { style:Style.headerAnno, font:MC.font(15, '', 'italic') }, arrows: { enabledStyle:Style.arrows }, lines: { hWidth:3, hStyle:Style.lines, vWidth:3, vStyle:Style.lines }, days: { inStyle:Style.dayIn, outStyle:Style.dayOut, todayStyle:Style.today }, dayNumbers: { style:Style.dayNum, offset:{ x:3, y:0 }, font:MC.font(16, '', 'italic') } } }; calendar = new apprisant.MonthlyCalendar('calendar', config); // Renderer for the selection outline calendar.addDayOutline ({ state:'select', styleClass:'outline br3', border:2 }); calendar.setMonth(); } // Header background gradient var getHeaderBgStyle = function(args) { if (!headerBgStyle) { var h = args.header; headerBgStyle = args.ctx.createLinearGradient(0, 0, 0, h.h); headerBgStyle.addColorStop(0.1, Style.headerTop); headerBgStyle.addColorStop(.8, Style.headerBottom); } return headerBgStyle; } // Selection handler prints information var selectHandler = function(ic) { var day = ic.element; var m = (day && day.Day) ? LOCALES[currLocale].days[day.weekday] + ' ' + day.date + ' ' + LOCALES[currLocale].months[day.month] + ' ------ ' + calendar.getDate(day).toDateString() : 'No selection.'; document.getElementById('msg').innerHTML = m; } // Locale radio button handler var setLocale = function(cc) { calendar.setLocale(LOCALES[cc]); currLocale = cc; }