// Icon ==============================================
var xmlHttpIconV6;
function v6Icon(mm, dd, yy, img, trp, pdate)
{
xmlHttpIconV6=null;
if (window.XMLHttpRequest)
  {// code for Firefox, Opera, IE7, etc.
  xmlHttpIconV6=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {// code for IE6, IE5
  xmlHttpIconV6=new ActiveXObject("Microsoft.XMLHTTP");
  }
  
if (xmlHttpIconV6!=null)
  {
  var par="iconoftheday/v6TitleIconTroparion.php";
  par=par+"?month="+mm + "&today="+dd + "&year="+yy + "&img="+img + "&trp="+trp + "&pdate="+pdate;
  par=par+"&sid="+Math.random();

  xmlHttpIconV6.onreadystatechange=stateChangedV6;

  xmlHttpIconV6.open("GET", par,true);
  xmlHttpIconV6.send(null);
  }
else
  {
  alert("Your browser does not support XMLHTTP.");
  }
}

function stateChangedV6() 
{ 
if (xmlHttpIconV6.readyState==4) // 4 = "loaded"
 {
   if (xmlHttpIconV6.status==200) // 200 = "OK"
    {
 document.getElementById('v6Icon').innerHTML=xmlHttpIconV6.responseText 
    }
  else
    {
    alert("Problem retrieving data: " + xmlHttpIconV6.statusText);
    }
 } 
}

// Troparion ==============================================
var xmlHttpTroparion;
function v6TitleTroparionKontakion(mm, dd, yy, img, trp, pdate)
{
xmlHttpTroparion=null;
if (window.XMLHttpRequest)
  {// code for Firefox, Opera, IE7, etc.
  xmlHttpTroparion=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {// code for IE6, IE5
  xmlHttpTroparion=new ActiveXObject("Microsoft.XMLHTTP");
  }
  
if (xmlHttpTroparion!=null)
  {
  var par="iconoftheday/v6TitleIconTroparion.php";
  par=par+"?month="+mm + "&today="+dd + "&year="+yy + "&img="+img + "&trp="+trp + "&pdate="+pdate;
  par=par+"&sid="+Math.random();

  xmlHttpTroparion.onreadystatechange=stateChangedTroparionV6;

  xmlHttpTroparion.open("GET", par,true);
  xmlHttpTroparion.send(null);
  }
else
  {
  alert("Your browser does not support XMLHTTP.");
  }
}

function stateChangedTroparionV6() 
{ 
if (xmlHttpTroparion.readyState==4) // 4 = "loaded"
 {
   if (xmlHttpTroparion.status==200) // 200 = "OK"
    {
 document.getElementById('v6Troparion').innerHTML=xmlHttpTroparion.responseText 
    }
  else
    {
    alert("Problem retrieving data: " + xmlHttpTroparion.statusText);
    }
 } 
}

// Calendar ==============================================
var xmlHttpCalendar;
function loadCalendar2(mm, dd, yy, dt, hh, ll, tt, ss)
{
xmlHttpCalendar=null;
if (window.XMLHttpRequest)
  {// code for Firefox, Opera, IE7, etc.
  xmlHttpCalendar=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {// code for IE6, IE5
  xmlHttpCalendar=new ActiveXObject("Microsoft.XMLHTTP");
  }
  
if (xmlHttpCalendar!=null)
  {
//  var par="../calendar/calendar.php";
  var par="iconoftheday/v6calendar.php";
  par=par+"?month="+mm + "&today="+dd + "&year="+yy + "&dt="+dt + "&header="+hh + "&lives="+ll + "&trp="+tt + "&scripture="+ss;
  par=par+"&sid="+Math.random();

  xmlHttpCalendar.onreadystatechange=stateChangedCalendar;

  xmlHttpCalendar.open("GET", par,true);
  xmlHttpCalendar.send(null);
  }
else
  {
  alert("Your browser does not support XMLHTTP.");
  }
}


function stateChangedCalendar() 
{ 
if (xmlHttpCalendar.readyState==4) // 4 = "loaded"
 {
   if (xmlHttpCalendar.status==200) // 200 = "OK"
    {
 document.getElementById('CalendarT1').innerHTML=xmlHttpCalendar.responseText 
    }
  else
    {
    alert("Problem retrieving Calendar data: " + xmlHttpCalendar.statusText);
    }
 } 
}

// Calendar Buttons ========================================================
function mouseOverLeft()
{
document.getElementById("leftArrow").src ="iconoftheday/images/leftArrowOver.png";
}
function mouseOutLeft()
{
document.getElementById("leftArrow").src ="iconoftheday/images/leftArrow.png";
}

function mouseOverRight()
{
document.getElementById("rightArrow").src ="iconoftheday/images/rightArrowOver.png";
}
function mouseOutRight()
{
document.getElementById("rightArrow").src ="iconoftheday/images/rightArrow.png";
}

function mouseOverCirlce()
{
document.getElementById("circle").src ="iconoftheday/images/circleOver.png";
}
function mouseOutCirlce()
{
document.getElementById("circle").src ="iconoftheday/images/circle.png";
}

function mouseOverSquare()
{
document.getElementById("square").src ="iconoftheday/images/squareOver.png";
}
function mouseOutSquare()
{
document.getElementById("square").src ="iconoftheday/images/square.png";
}

// Calendar Header ========================================================
// Pascha calculation
function paschaV6(y){
var r1 = y % 19;
var r2 = y % 4;
var r3 = y % 7;
var ra = 19 * r1 + 16;
var r4 = ra % 30;
var rb = 2 * r2 + 4 * r3 + 6 * r4;
var r5 = rb % 7;
var rc = 3 + r4 + r5;

if ( rc < 30) {
	pascha_m = 3; 	// Pascha is  in April
	pascha_d = rc;	// Pascha day in Aplil
}
else {
	pascha_m = 4; 	// Pascha is in May
	pascha_d = rc - 30;	// Pascha day in May
};

var pascha = new Date(y,pascha_m,pascha_d); 	// Set Pascha Date	

return pascha;
}

//-------------------------------------------------
function getOrdinal(value) {
var hundredRemainder = value % 100;
 if(hundredRemainder >= 10 && hundredRemainder <= 20) {
  return value + "<sup>th</sup>";
 }
 var tenRemainder = value % 10;
 switch (tenRemainder) {
  case 1:
   return value + "<sup>st</sup>";
  case 2:
   return value + "<sup>nd</sup>";
  case 3:
   return value + "<sup>rd</sup>";
  default:
   return value + "<sup>th</sup>";
 }
}

// Calculate day's name after Pentecost 
function getdaynamePentecost(current_date, pascha) {
var pentecost = pascha;
pentecost.setDate(pascha.getDate() + 49);
var dateDiff  = current_date - pentecost;
var daysDiff = Math.round(dateDiff/(1000*60*60*24));// Calculate Days Differences
var weeksDiff = Math.floor(daysDiff/7);				// Calculate Weeks Differences
var n = current_date.getDay();						// Day number of the Week

var s = getOrdinal(weeksDiff+1) + ' Week after Pentecost';
if (n == 0) {s = getOrdinal(weeksDiff) + ' Sunday after Pentecost';
	if (daysDiff == 7) {s = s +  '<br />All Saints';}
	if (daysDiff == 14) {s = s +  '. All Russ Sts';}
}

switch(daysDiff) {
	case 0: s = "Pentecost - Trinity Sunday"; break;
	case 1: s = "Day Of the Holy Spirit"; break;
	case 2: s = "Third Day of the Holy Trinity"; break;
	case 3: s = "Afterfeast of Pentecost"; break;
	case 4: s = "Afterfeast of Pentecost"; break;
	case 5: s = "Afterfeast of Pentecost"; break;
	case 6: s = "Adoposis of Pentecost"; break;
	             }
return  s ;
}

//-------------------------------------------------
// Calculate Great Lent day's name
function getdaynameLent(current_date, pascha) {
var number_names = ["First","Second","Third","Fourth","Fifth","Sixth","Seventh","Eighth","Ninth"];
var dateDiff  = current_date - pascha;
var daysDiff = Math.round(dateDiff/(1000*60*60*24));// Calculate Days Differences
var weeksDiff = 7 + Math.floor(daysDiff/7);			// Calculate Weeks Differences
var n = current_date.getDay();						// Day number of the Week

var s = number_names[weeksDiff] + ' Week of the Great Lent';
if (weeksDiff == 3) {s = s + ': <br />Adoration of Cross';}

if (n == 0) {s = number_names[weeksDiff-1] + ' Sunday of the Great Lent';
	if (weeksDiff == 1) {s = s + ': <br />Triumph of Orthodoxy';}
	if (weeksDiff == 3) {s = s + ': <br />Adoration of Cross';}
	}
if (n == 6) {s = number_names[weeksDiff] + ' Saturday of the Great Lent';
	if (weeksDiff == 4) {s = s + ': <br />Laudation of the Mother of God';}
	}
return s ;
}

//-------------------------------------------------
// Calculate day's name after Pasca
function getdaynamePascha(current_date, pascha) {
var number_names = ["First","Second","Third","Fourth","Fifth","Sixth","Seventh","Eighth","Ninth"];
var dateDiff  = current_date - pascha;
var daysDiff = Math.round(dateDiff/(1000*60*60*24));// Calculate Days Differences
var weeksDiff = Math.floor(daysDiff/7);			// Calculate Weeks Differences
var n = current_date.getDay();						// Day number of the Week
  
var s = number_names[weeksDiff] + ' Week of Pascha';
if (n == 0) {s = number_names[weeksDiff] + ' Sunday of Pascha';
	if (weeksDiff == 1) {s = s + ': <br />Antipascha, St. Thomas Sunday';}
	if (weeksDiff == 2) {s = s + ': <br />The Myrrh-bearing Women';}
	if (weeksDiff == 3) {s = s + ': <br />The Paralyzed Man';}
	if (weeksDiff == 4) {s = s + ': <br />The Samaritan Woman';}
	if (weeksDiff == 5) {s = s + ': <br />The Blind Man';}
	if (weeksDiff == 6) {s = s + ': <br />The Fathers of the 1st Ecumen. Council';}
	  }
if (daysDiff == 9 ) {s = 'Radonitsa, or Day of Rejoicing.<br />Commemoration of the Dead';}
if (daysDiff == 24) {s = 'Mid-Pentecost or Prepolovenie';}
if (daysDiff == 31) {s = 'Apodosis of Prepolovenie';}
return  s ;
}

//-------------------------------------------------
function dayDesciption(m,d,y){
var pascha = paschaV6(y); 			// Set Pascha Date
var current_date = new Date(y,m,d);	// Current Date
var day_name = "";

var dateDiff  = current_date - pascha;
var daysDiff  = Math.round(dateDiff/(1000*60*60*24)); // 1000*60*60*24 =  1 day

if (daysDiff > 48) {day_name = getdaynamePentecost(current_date, pascha);}		   // Calculate relate to current year Pascha
if (daysDiff < -70) {day_name = getdaynamePentecost(current_date, paschaV6(y-1));} // Calculate relate to previous year Pascha
if (daysDiff == -70) {day_name = 'Sunday of the Publican and the Pharisee';}
if (daysDiff < -63 && daysDiff > -70) {day_name = 'Week of the Publican and the Pharisee';}
if (daysDiff == -63) {day_name = 'Sunday of the Prodigal Son';}
if (daysDiff < -57 && daysDiff > -63) {day_name = 'Week of the Prodigal Son';}
if (daysDiff == -57) {day_name = 'The Saturday of the Dead';}
if (daysDiff == -56) {day_name = 'Sunday of the Last Judgment';}
if (daysDiff < -49 && daysDiff > -56) {day_name = 'Week of the Last Judgment';}
if (daysDiff == -49) {day_name = 'The Sunday of Forgiveness';}
if (daysDiff == -48) {day_name = 'Beginning of the Great Lent';}
if (daysDiff < -8 && daysDiff > -48) {day_name = getdaynameLent(current_date, pascha);}
if (daysDiff == -8) {day_name = 'Lazarus Saturday';}
if (daysDiff == -7) {day_name = 'The Entry of the Lord into Jerusalem';}
if (daysDiff == -6) {day_name = 'Passion Week: Great Monday';}
if (daysDiff == -5) {day_name = 'Passion Week: Great Tuesday';}
if (daysDiff == -4) {day_name = 'Passion Week: Great Wednesday';}
if (daysDiff == -3) {day_name = 'Passion Week: Great Thursday';}
if (daysDiff == -2) {day_name = 'Passion Week: Great Friday,<br />Passion of Jesus Christ';}
if (daysDiff == -1) {day_name = 'Passion Week: Great Saturday,<br />descent into Hades';}
if (daysDiff == 0) {day_name = 'The Bright Resurrection of Christ,<br />The Pascha of the Lord';}
if (daysDiff == 1) {day_name = 'Bright Monday';}
if (daysDiff == 2) {day_name = 'Bright Tuesday';}
if (daysDiff == 3) {day_name = 'Bright Wednesday';}
if (daysDiff == 4) {day_name = 'Bright Thursday';}
if (daysDiff == 5) {day_name = 'Bright Friday';}
if (daysDiff == 6) {day_name = 'Bright Saturday';}
if (daysDiff > 6 && daysDiff < 38) {day_name = getdaynamePascha(current_date, pascha);}
if (daysDiff == 38) {day_name = 'Apodosis of Pascha';}
if (daysDiff == 39) {day_name = 'The Ascension of our Lord';}
if (daysDiff >39 && daysDiff < 42) {day_name = 'Afterfeast of the Ascension';}
if (daysDiff == 42) {day_name = 'Seventh Sunday of Pascha:<br />The Fathers of the 1st Ecumen. Council';}
if (daysDiff >42 && daysDiff < 47) {day_name = 'Afterfeast of the Ascension';}
if (daysDiff == 47) {day_name = 'Apososis of the Ascension';}
if (daysDiff == 48) {day_name = 'Commemoration of the Dead';}

return day_name;
}

//-------------------------------------------------
// Find out Fasting level
function lentV6(m, d, y){

var fasting_level = '';
var level1 = '<br />\nFull abstention from food';
var level2 = '<br />\nStrict Fast (Bread, Vegetables, Fruits)';
var level3 = '<br />\nFood without Oil';
var level4 = '<br />\nFood with Oil';
var level5 = '<br />\nFish Allowed';
var level6 = '<br />\nCaviar Allowed';
var level7 = '<br />\nMeat is excluded';
var level8 = '<br />\nFast-free';

// Pascha calculation
var r1 = y % 19;
var r2 = y % 4;
var r3 = y % 7;
var ra = 19 * r1 + 16;
var r4 = ra % 30;
var rb = 2 * r2 + 4 * r3 + 6 * r4;
var r5 = rb % 7;
var rc = 3 + r4 + r5;

if ( rc < 30) {
	pascha_m = 3; 	// Pascha is  in April
	pascha_d = rc;	// Pascha day in Aplil
}
else {
	pascha_m = 4; 	// Pascha is in May
	pascha_d = rc - 30;	// Pascha day in May
};

var pascha = new Date(y,pascha_m,pascha_d); 	// Set Pascha Date	

var current_date = new Date(y,m,d);
var current_day_of_week = current_date.getDay();

// Cristmass Lent
var cristmass_lent_begin = new Date(y,10,28);
var cristmass_lent_nicolos = new Date(y,11,19);
var cristmass_lent_theotocos = new Date(y,11,4);
var end_of_current_year = new Date(y,11,31);
var begin_of_current_year = new Date(y,0,1);
var cristmass_preprazd = new Date(y,0,2);
var cristmass_lent_end = new Date(y,0,6);

if ( (current_date >= cristmass_lent_begin) && (current_date < cristmass_lent_nicolos) ) {
	if ( (current_day_of_week == 0) || (current_day_of_week == 2) ||
		 (current_day_of_week == 4) || (current_day_of_week == 6) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level5}
	if (current_day_of_week == 1) 									{fasting_level = "<br />Nativity (St. Philip's Fast) " + level3}
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level2}
	if ( (current_date.valueOf() == cristmass_lent_theotocos.valueOf()) && ((current_day_of_week == 3) ||
		 (current_day_of_week == 5)) ) 								{fasting_level = "<br />Nativity (St. Philip's Fast) " + level5;}
}

if ( ((current_date >= cristmass_lent_nicolos) && (current_date <= end_of_current_year)) ||
	 ((current_date >= begin_of_current_year) && (current_date < cristmass_preprazd)) ) {
	if ( (current_day_of_week == 0) || (current_day_of_week == 6) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level5}
	if (current_day_of_week == 1) 									{fasting_level = "<br />Nativity (St. Philip's Fast) " + level3}
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level2}
	if ( (current_day_of_week == 2) || (current_day_of_week == 4) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level4}
}

if ( (current_date >= cristmass_preprazd) && (current_date <= cristmass_lent_end) ) {
	if ( (current_day_of_week == 0) || (current_day_of_week == 6) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level4}
	if ( (current_day_of_week == 1) || (current_day_of_week == 3) || (current_day_of_week == 5) )
																	{fasting_level = "<br />Nativity (St. Philip's Fast) " + level2}
	if ( (current_day_of_week == 2) || (current_day_of_week == 4) ) {fasting_level = "<br />Nativity (St. Philip's Fast) " + level3}
}

// After Cristmass Lent
var beg = new Date(y,0,20);								// January 20th
var beg_pharesee = new Date(y,pascha_m,pascha_d);
beg_pharesee.setDate(pascha.getDate() - 69);			// Begin of Pharesee week
var end_pharesee = new Date(y,pascha_m,pascha_d);
end_pharesee.setDate(pascha.getDate() - 63);			// End of Pharesee week
var one_week_before_great_lent = new Date(y,pascha_m,pascha_d);
one_week_before_great_lent.setDate(pascha.getDate() - 55);	// One week before Great Lent starts

if ( (current_date >= beg) && (current_date < beg_pharesee) || (current_date >= end_pharesee) &&
   	(current_date < one_week_before_great_lent) ) {
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Fast" + level5}
}

// Meat free week
var beg_meet_free_week = new Date(y,pascha_m,pascha_d);
beg_meet_free_week.setDate(pascha.getDate() - 55);			// Begin of Meet free week
var end_meet_free_week = new Date(y,pascha_m,pascha_d);
end_meet_free_week.setDate(pascha.getDate() - 49);			// End of Meet free week
if ( (current_date >= beg_meet_free_week) && (current_date < end_meet_free_week) ) {fasting_level = "<br />Maslenitsa" + level7}
if ( current_date.valueOf() == end_meet_free_week.valueOf()) {fasting_level = "<br />Cheese-fare Week" + level7}

// Uspensky Lent
var uspensky_lent_begin = new Date(y,7,14);
var transfiguration = new Date(y,7,19);
var uspensky_lent_end = new Date(y,7,28);

if ( (current_date >= uspensky_lent_begin) && (current_date < uspensky_lent_end) ) {
	if ( (current_day_of_week == 0) || (current_day_of_week == 6) ) {fasting_level = "<br />Dormition (Theotokos) Fast" + level4}
	if ( (current_day_of_week == 1) || (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Dormition (Theotokos) Fast" + level2}
	if ( (current_day_of_week == 2) || (current_day_of_week == 4) ) {fasting_level = "<br />Dormition (Theotokos) Fast" + level3}
	if ( current_date.valueOf() == transfiguration.valueOf() ) {fasting_level = "<br />Dormition (Theotokos) Fast" + level5;}
}

// After Uspensky Lent
var cristmass_lent_begin = new Date(y,10,28);
if ( (current_date >= uspensky_lent_end) && (current_date < cristmass_lent_begin) ) {
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Fast" + level2}
}

// Petrov Lent
var petrov_lent_begin = new Date(y,pascha_m,pascha_d);
petrov_lent_begin.setDate(pascha.getDate() + 57);
var petrov_lent_end = new Date(y,6,12);
if ( (current_date >= petrov_lent_begin) && (current_date < petrov_lent_end) ) {
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Apostles' (Peter & Paul) Fast" + level2}
	if ( (current_day_of_week == 0) || (current_day_of_week == 2) ||
		 (current_day_of_week == 4) || (current_day_of_week == 6) ) {fasting_level = "<br />Apostles' (Peter & Paul) Fast" + level5}
	if (current_day_of_week == 1) {fasting_level = "<br />Apostles' (Peter & Paul) Fast" + level3}
}

// After Petrov Lent
if ( (current_date >= petrov_lent_end) && (current_date < uspensky_lent_begin) ) {
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = level2}
}

// Great Lent
var great_lent_begin = new Date(y,pascha_m,pascha_d);
great_lent_begin.setDate(pascha.getDate() - 48);
var palm_saturday = new Date(y,pascha_m,pascha_d);
palm_saturday.setDate(pascha.getDate() - 8);
var palm_sunday = new Date(y,pascha_m,pascha_d);
palm_sunday.setDate(pascha.getDate() - 7);
var theotocos = new Date(y,3,7);
var great_lent_end = new Date(y,pascha_m,pascha_d);

if ( (current_date > great_lent_begin) && (current_date < great_lent_end) ) {
	if ( (current_day_of_week == 0) || (current_day_of_week == 6) ) {fasting_level = level4}
	if ( (current_day_of_week == 1) || (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = level2}
	if ( (current_day_of_week == 2) || (current_day_of_week == 4) ) {fasting_level =level3}
}
if ( current_date.valueOf() == great_lent_begin.valueOf() ) {fasting_level = level1;}
if ( current_date.valueOf() == palm_saturday .valueOf() )	{fasting_level = level6;}
if ( current_date.valueOf() == palm_sunday.valueOf() ) 		{fasting_level = level5;}
if ( (current_date.valueOf() == theotocos.valueOf()) && 
	((current_date > great_lent_begin) && (current_date <= palm_sunday)) ) 	{fasting_level = level5;}
if ( (current_date.valueOf() == theotocos.valueOf()) &&
	((current_date > palm_sunday) && (current_date < great_lent_end)) ) 	{fasting_level = level4;}
if ( (current_date > palm_sunday) && (current_date < great_lent_end) && (current_day_of_week == 5) ) {fasting_level = level1;}

// After Great Lent
var beg = new Date(y,pascha_m,pascha_d);
beg.setDate(pascha.getDate() + 7);
var pentecost = new Date(y,pascha_m,pascha_d);
pentecost.setDate(pascha.getDate() + 49);
if ( (current_date >= beg) && (current_date < pentecost) ) {
	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Fast" + level5}
}

// One Day Lent
var sochelnik_cr 	= new Date(y,0,6);
var sochelnik 		= new Date(y,0,18);
var beheading	 	= new Date(y,8,11);
var elevation	 	= new Date(y,8,27);
var sretenie	 	= new Date(y,1,15);
var preobrazhenie 	= new Date(y,7,19);
var uspenie		 	= new Date(y,7,28);
var rozh_bogor	 	= new Date(y,8,21);
var pokrov		 	= new Date(y,9,14);
var vvedenie	 	= new Date(y,11,4);
var joann		 	= new Date(y,6,7);
var peter		 	= new Date(y,6,12);
var bogoslov	 	= new Date(y,4,21);

if ( (current_date.valueOf() == sochelnik_cr.valueOf()) || (current_date.valueOf() == sochelnik.valueOf()) ||
	 (current_date.valueOf() == beheading.valueOf()) || (current_date.valueOf() == elevation.valueOf()) ) {fasting_level = "<br />Fast" + level4}
if ( (current_date.valueOf() == sretenie.valueOf()) || (current_date.valueOf() == preobrazhenie.valueOf()) ||
	 (current_date.valueOf() == uspenie.valueOf()) || (current_date.valueOf() == rozh_bogor.valueOf()) ||
	 (current_date.valueOf() == pokrov.valueOf()) || (current_date.valueOf() == vvedenie.valueOf()) ||
	 (current_date.valueOf() == joann.valueOf()) || (current_date.valueOf() == peter.valueOf()) || 
	 (current_date.valueOf() == bogoslov.valueOf()) ) {
	 	if ( (current_day_of_week == 3) || (current_day_of_week == 5) ) {fasting_level = "<br />Fast" + level5}
}

// End of Great Lent
if ( current_date.valueOf() == pascha.valueOf()) {fasting_level = "<br />The End of the Great Lent" }

// Sviatki
var sviatki_begin = new Date(y,0,7);
var sviatki_end = new Date(y,0,17);
if ( (current_date >= sviatki_begin) && (current_date <= sviatki_end) ) {fasting_level = "<br />Sviatki" + level8}

// Paresee
var paresee_begin = new Date(y,pascha_m,pascha_d);
paresee_begin.setDate(pascha.getDate() - 69);
var paresee_end = new Date(y,pascha_m,pascha_d);
paresee_end.setDate(pascha.getDate() - 63);
var pentecost_begin = new Date(y,pascha_m,pascha_d);
pentecost_begin.setDate(pascha.getDate() + 49);
var pentecost_end = new Date(y,pascha_m,pascha_d);
pentecost_end.setDate(pascha.getDate() + 55);

if ( ((current_date >= paresee_begin)   && (current_date <  paresee_end)) || 
	 ((current_date >  pentecost_begin) && (current_date <= pentecost_end)) ) {fasting_level = "<br />Fast-free Week" + level8}

// Svetlaia sedmitsa
var svetlaia_begin = new Date(y,pascha_m,pascha_d);
var svetlaia_end = new Date(y,pascha_m,pascha_d);
svetlaia_end.setDate(pascha.getDate() + 6);

if ( (current_date > svetlaia_begin) && (current_date <= svetlaia_end) ) {fasting_level = level8}

// Find out Zagovenie days before Petrov, Uspenski and Cristmass Lents
// Move Zagovenie if it falls on Wednesday to Tuesday (if Friday move to Thursday).
var PetrovLentBegin_one	= new Date(y,pascha_m,pascha_d);
PetrovLentBegin_one.setDate(pascha.getDate() + 56);			// Petrov Lent begins: Pascha +56 days
var UspenskyLent_one 	= new Date(y,7,13);
var CristmassLent_one	= new Date(y,10,27);
var next_day			= new Date(current_date.getTime() + 24*60*60*1000);		// Next Day
var day_of_week			= current_date.getDay();			// Day number of the Week
var day_of_week_next_day= next_day.getDay();				// Day number of the Week

if ( (current_date.valueOf() == CristmassLent_one.valueOf()) && 
     ( (day_of_week == 0) || (day_of_week == 1) || (day_of_week == 2) ||
	   (day_of_week == 4) || (day_of_week == 6) ) ) {fasting_level = fasting_level + "<br />Eve of the Nativity Fast";};

if ( (next_day.valueOf() == CristmassLent_one.valueOf()) && 
      ( (day_of_week_next_day == 3) || (day_of_week_next_day == 5) ) 
     ) {fasting_level = fasting_level +  "<br />Eve of the Nativity Fast.";};

if ( (current_date.valueOf() == UspenskyLent_one.valueOf()) && 
     ( (day_of_week == 0) || (day_of_week == 1) || (day_of_week == 2) ||
	   (day_of_week == 4) || (day_of_week == 6) ) ) {fasting_level = fasting_level +  "<br />Eve of the Dormittion Fast";};

if ( (next_day.valueOf() == UspenskyLent_one.valueOf()) && 
      ( (day_of_week_next_day == 3) || (day_of_week_next_day == 5) ) 
     ) {fasting_level = fasting_level +  "<br />Eve of the Dormittion Fast.";};

if (current_date.valueOf() == PetrovLentBegin_one.valueOf()) {fasting_level = fasting_level +  "<br />Eve of Apostles' (Peter & Paul) Fast";};

return fasting_level;
}

//-------------------------------------------------
// Calculate Tone
function toneV6(m, d, y){
var tone1=["eight","one","two","three","four","five","six","seven"];
var toneString = "";

var pascha = paschaV6(y); 	// Set Pascha Date
var current_date = new Date(y,m,d);
var dateDiff  = current_date - pascha;
var daysDiff1  = Math.round(dateDiff/(1000*60*60*24)); // 1000*60*60*24 =  1 day
if (current_date < pascha ){ // If current day < Pascha,  then extract it from Previous Pascha year
	var paschaPrev = paschaV6(y-1);
	dateDiff  = current_date - paschaPrev;
}
daysDiff  = Math.round(dateDiff/(1000*60*60*24));	// Calculate Days Differences
var weeksDiff = Math.floor(daysDiff/7);				// Calculate Weeks Differences
var tone = (weeksDiff - 8*Math.floor(weeksDiff/8));	// 0 means Tone 8

// Do not prinf Tone on week after and before Pascha and on Pentecost
if ((daysDiff1 > -8 && daysDiff1 < 8) || daysDiff1 == 49 ) { toneString = "";} 
 else {toneString = "<br />\nTone " + tone1[tone];}

return toneString;
}

function calendarHeader(m, d, y){

var titleString = "";
titleString = dayDesciption(m-1,d,y) + toneV6(m-1, d, y) + lentV6(m-1, d, y);
	
document.getElementById('calendarTitle').innerHTML = titleString;
}


