<!--

//  Usage:  Functions to calculate and format timing data for FFXI
//  Written by:  Pyogenes from www.pyogenes.com

///////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
//                                                               //
//    CODE IS FREE FOR USE AS LONG AS YOU GIVE CREDIT            //
//    1.  List my website as the source                          //
//    2.  Place a link on the page the code is used in           //
//                                                               //
///////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////

// basis date is used to convert real time to game time.
// Use UTC functions to allow calculations to work for any timezone
basisDate = new Date();
basisDate.setUTCFullYear(2002, 5, 23); // Set date to 2003-06-23
basisDate.setUTCHours(15, 0, 0, 0);    // Set time to 15:00:00.0000

// moon date is used to determien the current hase of the moon.
// Use UTC functions to allow calculations to work for any timezone
Mndate = new Date();
Mndate.setUTCFullYear(2004, 0, 25); // Set date to 2004-01-25
Mndate.setUTCHours(2, 31, 12, 0);    // Set time to 02:31:12.0000

// basis date for RSE calculations
RSEdate = new Date();
RSEdate.setUTCFullYear(2004, 0, 28); // Set date to 2004-01-28
RSEdate.setUTCHours(9, 14, 24, 0);    // Set time to 09:14:24.0000

// basis date for day of week calculations
Daydate = new Date();
Daydate.setUTCFullYear(2004, 0, 28); // Set date to 2004-01-28
Daydate.setUTCHours(9, 14, 24, 0);    // Set time to 09:14:24.0000

EarthDay = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
VanaDay = new Array("Firesday", "Earthsday", "Watersday", "Windsday", "Iceday", "Lightningday", "Lightsday", "Darksday");
DayColor = new Array("#DD000", "#AAAA00", "#0000DD", "#00AA22", "#7799FF", "#AA00AA", "#AAAAAA", "#333333"); 
weakMagic = new Array("Ice","Lightning","Fire","Earth","Wind","Water","Darkness","Light");
weakColor = new Array("#7799FF", "#AA00AA", "#DD000", "#AAAA00", "#00AA22", "#0000DD", "#333333", "#AAAAAA");
PhaseName = new Array("Full Moon","Waning Gibbous","Last Quarter","Waning Crescent","New Moon","Waxing Crescent","First Quarter","Waxing Gibbous");

msGameDay	= (24 * 60 * 60 * 1000 / 25); // milliseconds in a game day
msRealDay	= (24 * 60 * 60 * 1000); // milliseconds in a real day

//**************
// Functions  **
//**************

function getVanadielTime()  {

   var now = new Date();
   vanaDate =  ((898 * 360 + 30) * msRealDay) + (now.getTime() - basisDate.getTime()) * 25;

   vYear = Math.floor(vanaDate / (360 * msRealDay));
   vMon  = Math.floor((vanaDate % (360 * msRealDay)) / (30 * msRealDay)) + 1;
   vDate = Math.floor((vanaDate % (30 * msRealDay)) / (msRealDay)) + 1;
   vHour = Math.floor((vanaDate % (msRealDay)) / (60 * 60 * 1000));
   vMin  = Math.floor((vanaDate % (60 * 60 * 1000)) / (60 * 1000));
   vSec  = Math.floor((vanaDate % (60 * 1000)) / 1000);
   vDay  = Math.floor((vanaDate % (8 * msRealDay)) / (msRealDay));

   if (vYear < 1000) { VanaYear = "0" + vYear; } else { VanaYear = vYear; }
   if (vMon  < 10)   { VanaMon  = "0" + vMon; }  else { VanaMon  = vMon; }
   if (vDate < 10)   { VanaDate = "0" + vDate; } else { VanaDate = vDate; }
   if (vHour < 10)   { VanaHour = "0" + vHour; } else { VanaHour = vHour; }
   if (vMin  < 10)   { VanaMin  = "0" + vMin; }  else { VanaMin  = vMin; }
   if (vSec  < 10)   { VanaSec  = "0" + vSec; }  else { VanaSec  = vSec; }

   VanaTime = "<FONT COLOR=" + DayColor[vDay] + ">" + VanaDay[vDay] + "</FONT>:  " 
   VanaTime += VanaMon + "/" + VanaDate + "/" + VanaYear + "  " + VanaHour + ":" + VanaMin + ":" + VanaSec;

   document.getElementById("vTime").innerHTML = VanaTime;
}

function clearDetails()  {

      document.getElementById("Details").innerHTML = '';
}


function printPage() {
   getVanadielTime();
   setTimeout("printPage()", 250);
}




// -->