document.write ("Hodie est ");
date();
document.write (rdate);

function date() {
var x = 0;
var y = 0;
var m = 0;
var d = 0;

var monthac = new Array("Ianuarias", "Februarias", "Martias", "Apriles", "Maias", "Iunias", "Iulias", "Augustas", "Septembres", "Octobres", "Novembres", "Decembres");

var monthab = new Array("Ianuariis", "Februariis", "Martiis", "Aprilibus", "Maiis", "Iuniis", "Iuliis", "Augustis", "Septembribus", "Octobribus", "Novembribus", "Decembribus");

var nonae = new Array(5,5,7,5,7,5,7,5,5,7,5,5);

var dpm = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

var numr = new Array("0", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X", "XI", "XII", "XIII", "XIV", "XV", "XVI", "XVII", "XVIII", "XIX", "XX");

today = new Date();
var x = today.getHours();
var y = today.getYear();
var m = today.getMonth();
var d = today.getDate();

if (d == 1)
{rdate = "Kalendis " + monthab[m]; return;}

if (d == nonae[m]) 
{rdate = "Nonis " + monthab[m]; return;}

if (d == (nonae[m] + 8)) 
{rdate = "Idibus " + monthab[m]; return;}

if (d == (nonae[m] - 1))
{rdate = "pridie Nonas " + monthac[m]; return;}

if (d == (nonae[m] + 7))
{rdate = "pridie Idus " + monthac[m]; return;}

if (d < (nonae[m] - 1))
{rdate = "ante diem " + numr[(nonae[m] - d) + 1] + " Nonas " + monthac[m]; return;}

if (d < (nonae[m] + 7))
{rdate = "ante diem " + numr[((nonae[m] + 9) - d)] + " Idus " + monthac[m]; return;}


if (m == 1){
ly = y / 4;
if (Math.round(ly) == ly) {
if (d == 25) {rdate = "ante diem VI Kalendas Martias bis"; return;}
if (d == 29) {rdate = "pridie Kalendas Martias"; return;}
if ((d > 25) && (d < 29)) {rdate = "ante diem " + numr[(dpm[m]+3)-d] + " Kalendas Martias"; return;}
}
}

if (d == dpm[m]) {
if (m != 11) {rdate = "pridie Kalendas " + monthac[m+1]; return;}
else {rdate = "pridie Kalendas Ianuarias"; return;}
}

if (m != 11) {rdate = "ante diem " + numr[(dpm[m]+2)-d] + " Kalendas " + monthac[m+1]; return;}
else {rdate = "ante diem " + numr[(dpm[m]+2)-d] + " Kalendas Ianuarias"; return;}

}