/***********************************************************************
 * filename: normal.css                                                *
 * (c) 2006 Massachusetts Go Association                               *
 ***********************************************************************/


function OnLoadBeginnersNightPage()
{
  var strContent = "";
  var tsUpcomingBegginnerNight = null;

  var tsNow = new Date();
  var nDayOfWeekNow = tsNow.getDay(); // 0 - Sunday, 6 - Saturday (2 - Tuesday)
  var nMonthNow = tsNow.getMonth();   // 0 - January
  var nYearNow = tsNow.getFullYear();
  var nDayOfMonthNow = tsNow.getDate(); // starting with 1

  var bComingNextMonth = false;

  // If it is 8th of the month or later, first Tuesday of the month has already happened - seek next month's Tuesday
  // If the day is 7th or less, we need to do additional checking:
  if (nDayOfMonthNow <= 7)
  {
    // Find next Tuesday (today included).
    //   If day of week is: then the next Tuesday is date
    //     0 (sunday): today + 2
    //     1 (monday): today + 1
    //     2 (tuesday): today + 0
    //     3 (wednesday): today + 6
    //     4 (thursday): today + 5
    //     5 (friday): today + 4
    //     6 (saturday): today + 3

    var nNextTuesdayDate = 0;

    if (nDayOfWeekNow == 0)
      nNextTuesdayDate = nDayOfMonthNow + 2;
    else if (nDayOfWeekNow == 1)
      nNextTuesdayDate = nDayOfMonthNow + 1;
    else if (nDayOfWeekNow == 2)
      nNextTuesdayDate = nDayOfMonthNow + 0;
    else if (nDayOfWeekNow == 3)
      nNextTuesdayDate = nDayOfMonthNow + 6;
    else if (nDayOfWeekNow == 4)
      nNextTuesdayDate = nDayOfMonthNow + 5;
    else if (nDayOfWeekNow == 5)
      nNextTuesdayDate = nDayOfMonthNow + 4;
    else if (nDayOfWeekNow == 6)
      nNextTuesdayDate = nDayOfMonthNow + 3;

    // If the next Tuesday falls on 7th or earlier, then that's the first Tuesday of the month we need to display,
    // otherwise we need to seek next month
    
    if (nNextTuesdayDate <= 7)
    {
      // Otherwise the next Tuesday we found is within the first week of this month therefore use that date:
      tsUpcomingBegginnerNight = new Date(nYearNow, nMonthNow, nNextTuesdayDate);
    }
  }

  if (tsUpcomingBegginnerNight == null)
  {
    var nYear = nYearNow;
    var nMonth = nMonthNow + 1;
    if (nMonth == 12)   // Overflow to next Year
    {
      // Reset to January of next year
      nYear++;
      nMonth = 0;
    }

    // Compose first-of-month date for the new month / year:
    var tsNextMonth = new Date(nYear, nMonth, 1);
    var nDayOfWeekNextMonth = tsNextMonth.getDay(); // 0 - Sunday, 6 - Saturday (2 - Tuesday)

    // Find next Tuesday.
    //   If 1st is: then the next Tuesday is date
    //     0 (sunday): 1st + 2
    //     1 (monday): 1st + 1
    //     2 (tuesday): 1st + 0
    //     3 (wednesday): 1st + 6
    //     4 (thursday): 1st + 5
    //     5 (friday): 1st + 4
    //     6 (saturday): 1st + 3

    var nNextTuesdayDate = 0;

    if (nDayOfWeekNextMonth == 0)
      nNextTuesdayDate = 1 + 2;
    else if (nDayOfWeekNextMonth == 1)
      nNextTuesdayDate = 1 + 1;
    else if (nDayOfWeekNextMonth == 2)
      nNextTuesdayDate = 1 + 0;
    else if (nDayOfWeekNextMonth == 3)
      nNextTuesdayDate = 1 + 6;
    else if (nDayOfWeekNextMonth == 4)
      nNextTuesdayDate = 1 + 5;
    else if (nDayOfWeekNextMonth == 5)
      nNextTuesdayDate = 1 + 4;
    else if (nDayOfWeekNextMonth == 6)
      nNextTuesdayDate = 1 + 3;

    tsUpcomingBegginnerNight = new Date(nYear, nMonth, nNextTuesdayDate);

  }

  var nUpcomingBegginnerNightMonth = tsUpcomingBegginnerNight.getMonth() + 1;   // 1 - January
  var nUpcomingBegginnerNightYear = tsUpcomingBegginnerNight.getFullYear();
  var nUpcomingBegginnerNightDay = tsUpcomingBegginnerNight.getDate();  // starting with 1

  strContent += "Beginners' Night <br />";
  strContent += "First Tuesday of Every Month <br />";
  strContent += "Next: " + nUpcomingBegginnerNightMonth + "/" + nUpcomingBegginnerNightDay + "/" + nUpcomingBegginnerNightYear +  "<br />";
  strContent += "7 to 10 PM";

  document.getElementById('mganextbeginnersdate').innerHTML = strContent;
}



function OnClickEmail(strUser, strDomain)
{
  window.location.href = "mailto: " + strUser + "@" + strDomain;
  // Another way to hide the @ sign is to do:   johnsmith&#x40;mail.com
  return false;
}

function onClickImagePreview(strFileName, nWidth, nHeight)
{
  if (nWidth == null)
    nWidth = 660;
  if (nHeight == null)
    nHeight = 500;  
    
  oNewWindow = window.open('image/photos/' + strFileName, 'Preview', 'width=' + nWidth + ',height=' + nHeight +',menubar=no,status=no,titlebar=no,toolbar=no', false);
}
