﻿// Event Calendar
// copyright Stephen Chapman, 10th June 2006, 30th October 2006

var tb = 't'; // top or bottom (t or b)
var headbg = '#cccccc';  // table heading background colour
var todaybg = '#99cccc'; // current selected date background colour
var textclr = '#000000'; // text colour
var linkclr = '#c9145c'; // link text colour
var noMessage =  ''; // message to display when no entry in array

var dA = new Array(); var x = 0;
// first 8 characters in ccyymmdd format for single date events
// first 8 characters in 0000mmdd format for every year events
dA[x++] = "00000119 Šventė Šventė Sultan – Valdovas ";
dA[x++] = "00000207 Šventė Mulk – Valdymas ";
dA[x++] = "00000302 Šventė Ala – Aukštybė ";
dA[x++] = "00000409 Šventė Jalal – Didybė  ";
dA[x++] = "00000428 Šventė Jamal – Grožis ";
dA[x++] = "00000517 Šventė Azamat – Kilnybė ";
dA[x++] = "00000605 Šventė Nur –  Šviesa ";
dA[x++] = "00000624 Šventė Rahmat – Gailestingumas ";
dA[x++] = "00000713 Šventė Kalimat –  Žodžiai ";
dA[x++] = "00000801 Šventė Kamal – Tobulybė";
dA[x++] = "00000820 Šventė Asma – Vardai  ";
dA[x++] = "00000908 Šventė Izzat – Galybė ";
dA[x++] = "00000927 Šventė Mashiyyat – Valia";
dA[x++] = "00001016 Šventė Ilm –  Žinios";
dA[x++] = "00001104 Šventė Qudrat – Jėga  ";
dA[x++] = "00001123 Šventė Qawl – Kalba";
dA[x++] = "00001212 Šventė Masa'il – Klausimai";
dA[x++] = "00001231 Šventė Sharaf – Garbė  ";
// dA[x++] = "20060610 New Event Calendar Started today";

// permission is granted to use this javascript provided that the below code is not altered
var pageLoaded = 0;
window.onload = function() {pageLoaded = 1;}
function loaded(i,f) {
if (document.getElementById && document.getElementById(i) != null) f();
else if (!pageLoaded) setTimeout('loaded(\''+i+'\','+f+')',100);
}

function monthlength(month,year) {
var dd = new Date(year, month, 0);
return dd.getDate();
}

var moy = ['Sausis','Vasaris','Kovas','Balandis','Gegužis','Birželis','Liepa','Rugpjūtis','Rugsėjis','Spalis','Lapkritis','Gruodis'];
var today = new Date();
var selDate = today.getFullYear()+getmmdd(today.getMonth()+1,today.getDate());

function dispCal(yy,mm) {if (mm < 0 || mm > 12) {
alert('month must be between 1 and 12');
return false;
}

if (yy != 0 && (yy < 1901 || yy > 2100)) {
alert('year must be after 1900 and before 2101');
return false;
}
var dow = ['S','Pr','A','T','K','Pn','Š'];
var calendar = new Date();
var today = calendar.getDate();
calendar.setDate(1);
if (yy > 1900) calendar.setFullYear(yy);
if (mm > 0) calendar.setMonth(mm - 1);
var yy = year = calendar.getFullYear();
var month = calendar.getMonth();
calendar.setDate(today);
var weekday = calendar.getDay();
var daysInMonth = monthlength(month+1,year);
var hilite_start = '<td width="30" style="background:' + todaybg + '" align="center"><b>';
var td_start = '<td width="30" align="center">';
var cal = '<div id="cal"><div style="border:1pt solid #cccccc;height:180px;width:210px"><table border="0" cellspacing="0" cellpadding="2" align="center"><tr><td colspan="7" style="background:' + headbg + '" align="center"><b>' + moy[month]  + ' ' + year + '<\/b><\/td><\/tr><tr>';
for(dex=0; dex < 7; dex++) {cal += td_start + dow[dex] + '</td>';} cal += '<\/tr><tr>';
var day2 = today;
for (dex = today; dex > 6; dex -=7) day2 = dex; weekday -= day2 - 1;
while (weekday < 0) weekday += 7;
for(dex=0; dex < weekday; dex++) cal += td_start + ' <\/td>';
for(dex=1; dex <= daysInMonth; dex++) 
{
if(weekday == 7) 
{cal += '</tr><tr>'; weekday = 0;}
if(selDate==year+getmmdd(month+1,dex)) cal += hilite_start +'<span '+clickDate(dex,month,year) + '>'+ dex + '<\/span><\/b><\/td>';
else cal += td_start + '<span '+clickDate(dex,month,year) + '>' + dex + '<\/span><\/td>'; weekday += 1;} for(dex=weekday; dex < 7; dex++) cal += td_start + ' <\/td>'; cal += '<\/tr><\/table><\/div>';if (document.getElementById) {var mmb = month;  mm = month + 1; var yya = yyb = yy; if (mmb <1) {mmb += 12; yyb--;} var mma = month + 2; if (mma > 12) {mma -= 12; yya++;} var yb = yy -1; var ya = yy +1; cal += '<table border="0" cellspacing="0" cellpadding="2" width="210"><tr><td><a href="#" onclick="if (cala = dispCal('+yb+','+mm+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}"><<</a></td><td><a href="#" onclick="if (cala = dispCal('+yyb+','+mmb+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}"><</a></td><td align="right"><a href="#" onclick="if (cala = dispCal('+yya+','+mma+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}">></a></td><td align="right"><a href="#" onclick="if (cala = dispCal('+ya+','+mm+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}">>></a></td></tr></table>';} else {cal += '<div> </div>';} cal += '</div>';
return cal;
}

function start() 
{
var x = '<div id="calDate" style="border:1pt solid #cccccc;width:238px"><\/div>';
var y = '';
if (tb == 't') y = x + dispCal(0,0);
else y = dispCal(0,0) + x; document.getElementById('calendar').innerHTML = y; ev();
}
loaded('calendar',start);

function clickDate(day, month, year) {
var ct = nextDate(year + getmmdd(month+1,day));
if (ct == '') ct = nextDate('0000' + getmmdd(month+1,day));
if (ct == '') return 'style="color:'+textclr+'"';
else return 'style="cursor:pointer;color:'+linkclr+'" onclick="selDate = '+year+ getmmdd(month+1,day)+'; isDate(' + day + ',' + month + ',' + year + ');return false;"';}

function isDate(dayVal,monthVal,yearVal) {
var ct = nextDate(yearVal + getmmdd(monthVal+1,dayVal));
if (ct == '') ct = nextDate('0000' + getmmdd(monthVal+1,dayVal));
if (ct == '') ct = noMessage;document.getElementById('calDate').innerHTML = ct;
return false;
}

function nextDate(yymmdd) {
var x = dA.length;
for (var i = 0; i < x; i++) {
if (dA[i].substr(0,8) == yymmdd) return dA[i].substr(8);
}
return '';
}

function getmmdd(mm,dd) {
return (mm > 9 ? '' + mm : '0' + mm) + (dd > 9 ? dd : '0' + dd);
}

function ev() {
var ct = nextDate(selDate);
var ct = nextDate(selDate);
if (ct == '') ct = nextDate('0000' + selDate.substr(4));
if (ct == '') ct = noMessage; document.getElementById('calDate').innerHTML = ct;
}