function E(n, d, m, y, s)
{
	this.n = n; /* no. of days */
	this.d = d; /* dd */
	this.m = m; /* mm */
	this.y = y; /* yy */
	this.s = e2u(s); /* event */
	this.b = 0; /* beginning */
	this.e = 0; /* end */
}

var screv = [
new E(1,14,4,2010,"chiththirai varushappiRappu, mAlai perumAL puRappAdu"),
new E(10,11,4,2010,"pAshyakArar uthsavam, kAlai pAshyakArar puRappAdu"),
new E(3,15,4,2010,"vasaNtha uthsavam"),
new E(1,17,4,2010,"akshayathrithiyai, mAlai perumAL, thEchikan puRappAdu"),
new E(1,20,4,2010,"pAshyakArar chARRumuRai, mAlai perumAL, pAshyakArar puRappAdu"),
new E(1,26,4,2010,"thiru avathAra uthsavam, mAlai perumAL mangkaLakiri puRappAdu"),
new E(1,27,4,2010,"mathurakavikaL chARRumuRai"),
new E(1,28,4,2010,"chiththirA paurnNami, perumAL mAmpalam ezhuNtharuLuthal"),
new E(1,2,5,2010,"thOtta uthsavam, perumAL aandavan aacramam ezhuNtharuLuthal"),
new E(1,7,5,2010,"kadai veLLikkizhamai, thAyAr puRappAdu"),
new E(1,14,5,2010,"chelvar uthsavam"),
new E(1,15,5,2010,"srINivAsar pramhOthsavam angkurArppanNam"),
new E(1,16,5,2010,"thvajaarOhanNam"),
new E(1,16,5,2010,"chapparam (kAlai) simmavAhanam (mAlai)"),
new E(1,17,5,2010,"hamsavAhanam (kAlai) chUUryaprapai (mAlai)"),
new E(1,18,5,2010,"karudavAhanam (kAlai) hanumaNthavAhanam (mAlai)"),
new E(1,19,5,2010,"chEshavAhanam (kAlai) chaNthiraprapai (mAlai)"),
new E(1,20,5,2010,"mOhini avathAram (kAlai) yALivAhanam (mAlai)"),
new E(1,21,5,2010,"vEnNukOpAlan thirukkOlam (kAlai) yAnaivAhanam (mAlai)"),
new E(1,22,5,2010,"thiruththEr (kAlai) thangkakkEdayam (mAlai)"),
new E(1,23,5,2010,"thoddiththirumanyjanam (pakal) kuthiraivAhanam (mAlai)"),
new E(1,24,5,2010,"AL mEl pallakku, pOrvai kaLaithal, maddai adi uthsavam, thIrththavAri (hastham) (kAlai) punNyakOdivimAnam, thirumozhi chARRumuRai (mAlai)"),
new E(1,25,5,2010,"thvAthacha ArAthanam (pakal) veddivErchchapparam (mAlai)"),
new E(3,26,5,2010,"vidaiyARRi uthsavam"),
new E(1,27,5,2010,"Nrusimha jayaNthi"),
new E(1,27,5,2010,"NammAzhvAr chARRumuRai (vichAkam), mAlai perumAL AzhvAr puRappAdu"),
new E(1,28,5,2010,"vidaiyARRi uthsavam pUUrththi, pushpa pallakku"),
new E(5,16,6,2010,"kOdai uthsavam"),
new E(1,21,6,2010,"sutharchana jayaNthi"),
new E(1,22,6,2010,"periyAzhvAr chARRumuRai, Ani karudan, perumAL, AzhvAr (yAnai vAhanam) puRappAdu"),
new E(1,24,6,2010,"NAthamunikaL chARRumuRai (anusham), perumAL NAthamunikaL puRappAdu"),
new E(1,25,7,2010,"ALavaNthAr chARRumuRai"),
new E(1,25,7,2010,"kajENthira mOksham -- Adi karudan"),
new E(10,3,8,2010,"thiruvAdippUUra uthsavam"),
new E(1,12,8,2010,"thiruvAdippUUram - AnNdAL thirukkalyAnNam"),
new E(1,13,8,2010,"UrkOla uthsavam"),
new E(1,14,8,2010,"jyEshdApishEkam, 81 kalacaththirumanycanam"),
new E(1,23,8,2010,"srI hayakrIva jayaNthi"),
new E(1,2,9,2010,"srIjayaNthi, kanNnNan thirumanyjanam"),
new E(1,3,9,2010,"uRiyadi uthsavam, perumAL kanNnNan vichEshap puRappAdu"),
new E(1,22,9,2010,"thiruppavithra uthsavam angkurArppanNam"),
new E(7,23,9,2010,"thiruppavithra uthsavam"),
new E(1,29,9,2010,"thiruppavithra uthsava pUUrnNAhuthi"),
new E(10,7,10,2010,"thEchikar uthsavam"),
new E(1,7,10,2010,"pallakku (kAlai) yALi vAhanam (mAlai)"),
new E(9,8,10,2010,"NavarAthri uthsavam (thinamum mAlai perumAL, thAyAr paththi ulAththal)"),
new E(1,8,10,2010,"pallakku (kAlai) chUUryaprapai (mAlai)"),
new E(1,9,10,2010,"perumAL karuda vAhanam thEchikar thangkak kEdayam (kAlai) simmavAhanam (mAlai)"),
new E(1,10,10,2010,"pallakku (kAlai) chaNthiraprapai (mAlai)"),
new E(1,11,10,2010,"pallakku (kAlai) hamsa vAhanam (mAlai)"),
new E(1,12,10,2010,"pallakku (kAlai) kuthirai vAhanam (mAlai)"),
new E(1,13,10,2010,"pallakku (kAlai) hayakrIva ArAthanam aksharApyAsath thirukkOlam (mAlai)"),
new E(1,14,10,2010,"pallakku (kAlai) yAnai vAhanam (mAlai)"),
new E(1,15,10,2010,"thiruththEr (kAlai) thangkak kEdayam (mAlai)"),
new E(1,16,10,2010,"mahA Navami, NavarAthri uthsava pUUrththi"),
new E(1,16,10,2010,"thEchikan mangkaLAchAsanam, perumAL thEchikan palAththOppu puRappAdu (kAlai) thEchikan chARRumuRai mangkaLakiri puRappAdu (iravu)"),
new E(1,17,10,2010,"vijayathachami -- vanni maram eythal, perumAL kuthirai vAhanam"),
new E(1,17,10,2010,"kaNthap podi vasaNtham"),
new E(1,5,11,2010,"thIpAvaLi, mAlai perumAL vichEshap puRappAdu"),
new E(1,6,11,2010,"annakUUda uthsavam"),
new E(10,6,11,2010,"pEyAzhvAr uthsavam (thinamum kAlai pEyAzhvAr puRappAdu)"),
new E(1,12,11,2010,"srI thEchikan vidAyARRi"),
new E(10,12,11,2010,"kaliyan uthsavam, thinamum AsthAnam"),
new E(1,13,11,2010,"poykai AzhvAr chARRumuRai, mAlai perumAL, AzhvAr puRappAdu"),
new E(1,14,11,2010,"pUUthaththAzhvAr chARRumuRai, mAlai perumAL, AzhvAr puRappAdu"),
new E(1,15,11,2010,"pEyAzhvAr mangkaLAchAsanam, chARRumuRai, mAlai perumAL, AzhvAr puRappAdu"),
new E(1,16,11,2010,"pEyAzhvAr kaNthappodi vasaNtham"),
new E(1,17,11,2010,"kaichika EkAthachi"),
new E(1,18,11,2010,"kaichika thvAthachi - kaichika purAnNam vAchiththal"),
new E(1,21,11,2010,"kaliyan chARRumuRai, mAlai perumAL, kaliyan puRappAdu"),
new E(1,22,11,2010,"thirukkArththikai - thailak kAppu; mAlai perumAL, thiruppAnNAzhvAr, thEchikan puRappAdu"),
new E(1,22,11,2010,"thiruppAnNAzhvAr chARRumuRai"),
new E(9,2,12,2010,"thAyAr panychami thIrththa uthsavam"),
new E(1,2,12,2010,"thirumanyjanam (kAlai) thangkak kEdayam (mAlai)"),
new E(10,7,12,2010,"athyayana uthsavam (pakal paththu)"),
new E(1,3,12,2010,"thirumanyjanam (kAlai) chUUryaprapai (mAlai)"),
new E(1,4,12,2010,"thirumanyjanam (kAlai) thAyAr karuda vAhanam (mAlai)"),
new E(1,5,12,2010,"thirumanyjanam (kAlai) chaNthiraprapai (mAlai)"),
new E(1,6,12,2010,"thirumanyjanam (kAlai) pathmam (mAlai)"),
new E(1,7,12,2010,"thirumanyjanam (kAlai) yAnai vAhanam (mAlai)"),
new E(1,8,12,2010,"thirumanyjanam (kAlai) kajalakshmi (mAlai)"),
new E(1,9,12,2010,"thirumanyjanam (kAlai) kiLi vAhanam (mAlai)"),
new E(1,10,12,2010,"thIrththavAri (kAlai 11:00 <~a.m.>) thangkak kEdayam (mAlai)"),
new E(1,17,12,2010,"vaikunNda EkAthachi (vaikunNda vAchal sEvai, kAlai 4:00 manNi) perumAL karuda vAhanam puRappAdu (kAlai 6:30 manNi)"),
new E(10,17,12,2010,"irAppaththu"),
new E(1,26,12,2010,"NammAzhvAr thiruvadiththozhal, athyayana uthsava chARRumuRai"),
new E(1,27,12,2010,"iyaRpA chARRumuRai"),
new E(1,28,12,2010,"thEchikaprapaNtha chARRumuRai"),
new E(1,30,12,2010,"thiruppallAnNduth thodakkam"),
new E(1,2,1,2011,"thonNdaradippodi AzhvAr chARRumuRai"),
new E(10,5,1,2011,"AnNdAL NIrAdda uthsavam"),
new E(1,14,1,2011,"pOki uthsavam; AnNdAL, perumAL puRappAdu; thirukkalyAnNam"),
new E(1,15,1,2011,"thai varushappiRappu, changkarANthi; UrkOla uthsavam; AnNdAL, perumAL puRappAdu"),
new E(1,16,1,2011,"kanu uthsavam"),
new E(1,20,1,2011,"thai pushyam, perumAL thEchikan thirumanyjanam puRappAdu"),
new E(1,22,1,2011,"thirumazhichai AzhvAr chARRumuRai; mAlai perumAL, thirumazhichai AzhvAr puRappAdu"),
new E(1,23,1,2011,"pari vEddai uthsavam, perumAL lakshmIpuram puRappAdu (2:30 <~a.m.>)"),
new E(1,25,1,2011,"kUUraththAzhvAn chARRumuRai; mAlai perumAL, kUUraththAzhvAn puRappAdu"),
new E(1,30,1,2011,"vanapOjanam, perumAL thEchikan palaththOppu puRappAdu (kAlai); kALingka Narththana chARRuppadi (mAlai)"),
new E(1,10,2,2011,"rathasapthami - chUUryaprapai (kAlai), chaNthiraprapai (mAlai)"),
new E(1,15,2,2011,"kulachEkara AzhvAr chARRumuRai; mAlai perumAL kulachEkara AzhvAr puRappAdu"),
new E(3,16,2,2011,"thavanOthsavam"),
new E(1,18,2,2011,"mAchi makam - samuthra sNAnam; 5:45 <~a.m.> perumAL puRappAdu"),
new E(1,13,3,2011,"thirukkachchi NampikaL chARRumuRai; mAlai perumAL thirukkachchi NampikaL puRappAdu"),
new E(1,19,3,2011,"pangkuni uththiram - thirukkalyAnNa uthsavam; thAyAr, perumAL puRappAdu; thAyAr, perumAL, AnNdAL chErththiyaRai"),
new E(1,20,3,2011,"UrkOla uthsavam; AnNdAL, perumAL puRappAdu"),
new E(10,4,4,2011,"yukAthi uthsavam, perumAL puRappAdu"),
new E(10,4,4,2011,"rAmar uthsavam, mAlai rAmar uL puRappAdu"),
new E(1,12,4,2011,"srIrAmaNavami, rAmar puRappAdu"),
new E(1,13,4,2011,"rAmar paddApishEkam, rAmar puRappAdu"),
new E(1,14,4,2011,"chiththirai varushappiRappu, mAlai perumAL puRappAdu"),


new E(0,30,3,2017,""),
new E(0,30,3,2017,"")


];

function put_events(mode)
{
	var i, start, end, today, mc;
	var o, sep;
	var seps = [ "</p><p class=ttml>", " | " ];

	if (mode) {
		o = document.getElementById("evscr");
		o.innerHTML = "* * * Welcome to the official website of Sri Vedantha Desikar Devasthanam * * * ";
		sep = "";
	} else {
		uestr = "";
		sep = seps[0];
	}

	today = new Date();
	mc = 1; // month count
	for (i = 0; i < screv.length; i++) {
		if (screv[i].n == 0) {
			continue;
		}
		start = new Date(screv[i].y, screv[i].m - 1, screv[i].d);
		/*
		 * Argument to the constructor is in milliseconds.
		 * 86400000 is the number of milliseconds in a day...
		 *	24 * 60 * 60 * 1000 = 86400000
		 */
		end = new Date(start.valueOf() + screv[i].n * 86400000);

		screv[i].b = start;
		screv[i].e = end;

		if ((end - today) < 0) { continue; }

		/*
		 * The scroller displays the next 3 months screv. However,
		 * the begin and end dates have to be computed for all screv
		 * since the calendar needs that. Hence, continue here and
		 * avoid additional content to the scroller.
		 */
		if (mode && i > 0) {
			if (screv[i].m != screv[i - 1].m) {
				mc ++;
			}
		}
		if (mc > 3) { continue; }

		s = sep + screv[i].d + "/" + screv[i].m + "/" + screv[i].y;

		if (screv[i].n > 1) {
			s += "&nbsp;&#2990;&#3009;&#2980;&#2994;&#3021; " + screv[i].s;
			s += " (" + screv[i].n + " &#2984;&#3006;&#2975;&#3021;&#2965;&#2995;&#3021;)";
		} else {
			s += " - " + screv[i].s;
		}

		sep = seps[mode];

		if (mode)	{ o.innerHTML += s; }
		else		{ uestr += s; }
	}
}

var ue = null; /* upcoming screv window */
var uestr = null; /* upcoming screv */
function closeWin(win)
{
	if ((win != null) && !win.closed) {
		win.close();
	}
}

function disp_events()
{
	var opts, t, l;

	closeWin(ue);
	ue = null;

	t = (screen.availHeight - 500) / 2;
	l = (screen.availWidth - 600) / 2;

	opts = "location=0,menubar=0,scrollbars=1,status=0,toolbar=0,width=600,height=500,left="+l+",top="+t;
	ue = window.open("", 'uewin', opts);
	put_events(0);
	ue.document.write("<head>");
	ue.document.write("<title>.:| Sri Vedantha Desikar Devasthanam |:.</title>");
	ue.document.write("<base href=http://www.svdd.com/ />");
	ue.document.write("<link href=\"scr.css\" rel=\"stylesheet\" type=\"text/css\" media=screen />");
	ue.document.write("<link href=\"prt.css\" rel=\"stylesheet\" type=\"text/css\" media=print />");
	ue.document.write("</head><body style=\"margin: auto; padding: 5px;\">");
	ue.document.write("<center><span class=tml>&#3000;&#3021;&#2992;&#3008;&#3021;:</span></center>");
	ue.document.write(uestr);
	ue.document.write("<br><br><center>* * *</center><br><br>");
	ue.document.write("<center><img src=img/prt.jpg onclick='window.print();' title=\"Click to print this page\" /></center>");
	ue.focus();
}

function chkmail(s)
{
	var rx = new RegExp("\\w+([-+.\’]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
	var matches = rx.exec(s);
	return (matches != null && s == matches[0]);
}
