// JavaScript Document
var jaar, jaarNu;
var date;
var start, nu, einde, maandNu, maand, begindag, volgende, vorige, gcal;
var datm = new Array(new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15),new Array(15));

var datm = new Array();

for(x=1; x<13; x++){
    datm[x] = new Array();
    for(y=0; y<15; y++){
        datm[x][y] = new Array();
        for(z=0; z<10; z++){
            datm[x][y][z] = 0;
        }
    }
}

/*****************************************************
zone voor het manueel invullen van de verhuurde datums
******************************************************/

/* VOORBEELD

datm[maandnr][volgnr][jaar] = dag van de maand;

voorbeelden:
datm[9][0][2011] = 16;
datm[9][1][2011] = 17;
datm[9][2][2011] = 18;

*/
datm[9][0][2011] = 16;
datm[9][1][2011] = 17;
datm[9][2][2011] = 18;

datm[9][3][2011] = 23;
datm[9][4][2011] = 24;
datm[9][5][2011] = 25;

datm[9][6][2011] = 30;
datm[10][0][2011] = 1;
datm[10][1][2011] = 2;

datm[10][2][2011] = 7;
datm[10][3][2011] = 8;
datm[10][4][2011] = 9;

datm[10][5][2011] = 28;
datm[10][6][2011] = 29;
datm[10][7][2011] = 30;

datm[11][0][2011] = 4;
datm[11][1][2011] = 5;
datm[11][2][2011] = 6;

datm[1][0][2012] = 27;
datm[1][1][2012] = 28;
datm[1][2][2012] = 29;

datm[2][0][2012] = 10;
datm[2][1][2012] = 11;
datm[2][2][2012] = 12;

/*****************************************************
einde zone voor het manueel invullen van de verhuurde datums
******************************************************/

date = new Date(Date.now());
nu = parseInt(date.getDate());
maand = date.getMonth();
maandNu = maand;
jaar = date.getFullYear();
jaarNu = jaar;
var a=0;

window.onload = function(){
	maakKalender();
	document.getElementById("vorige").onclick = function(evt){vorige();}
	document.getElementById("volgende").onclick = function(evt){volgende();}
}

function vorige()
{	
	maand--;
         a=0;
	if(maand == -1)
		{maand = 11;
		jaar -=1;}
			
	geefMaand();
	geefJaar();
	for(var i = 1; i<42; i++)
		{
		if(i>=1&&i<=4||i>=8&&i<=11||i>=15&&i<=18||i>=22&&i<=25||i>=29&&i<=32||i>=36&&i<=39)
		kleurDag(i,"#CCCCFF");
		else
		kleurDag(i,"#99F");
		}
	maakKalender();
}

function volgende()
{	
	maand++;	
         a=0;
	if(maand == 12){
		jaar +=1;
		maand = 0;}
		
	geefMaand();
	geefJaar();
	for(var i = 1; i<42; i++)
		{
		if(i>=1&&i<=4||i>=8&&i<=11||i>=15&&i<=18||i>=22&&i<=25||i>=29&&i<=32||i>=36&&i<=39)
		kleurDag(i,"#CCCCFF");
		else
		kleurDag(i,"#99F");
		}
	maakKalender();
}

function maakKalender()
{
	geefMaand();
	geefJaar();
	var td;
	var startM = new Date(jaar, maand, 1);
	start = parseInt(startM.getDay());
	if(start==0)
	start =7;
	eind = parseInt(geefEindeMaand());
	var tel = 1;
	var f = false;
	for(var i = 1; i<=42; i++)
		{
		if(i >= start && i<eind+start){
		replaceNodeText(""+i, ""+tel);
		if(datm[maand+1][a][jaar]==tel)
			{
				kleurDag(i,"#F00");
				a++;
			}
		if(tel == nu && maand == maandNu && jaar == jaarNu)
			kleurDag(i,"#09F");
		tel++;}
		else
		replaceNodeText(""+i," ");
		}		
}


function geefEindeMaand()
{
if(jaar == 2012 || jaar == 2016 || jaar == 2020 || jaar == 2024 || jaar == 2028)
{
switch (maand+1)
	{
	case 1: return 31; break
	case 2: return 29; break	
	case 3: return 31; break
	case 4: return 30; break
	case 5: return 31; break
	case 6: return 30; break
	case 7: return 31; break
	case 8: return 31; break
	case 9: return 30; break
	case 10: return 31; break
	case 11: return 30; break
	case 12: return 31; break
	}
}
else
{
	switch (maand+1)
	{
	case 1: return 31; break
	case 2: return 28; break	
	case 3: return 31; break
	case 4: return 30; break
	case 5: return 31; break
	case 6: return 30; break
	case 7: return 31; break
	case 8: return 31; break
	case 9: return 30; break
	case 10: return 31; break
	case 11: return 30; break
	case 12: return 31; break
	}
}

}

function geefMaand()
{
	switch (maand)
	{
	case 0: replaceNodeText("maand", "Januari"); break;
	case 1: replaceNodeText("maand","Februari");break;
	case 2: replaceNodeText("maand", "Maart");break;
	case 3: replaceNodeText("maand", "April");break;
	case 4: replaceNodeText("maand", "Mei"); break;
	case 5: replaceNodeText("maand", "Juni"); break;
	case 6: replaceNodeText("maand", "Juli"); break;
	case 7: replaceNodeText("maand", "Augustus"); break;
	case 8: replaceNodeText("maand", "September"); break;
	case 9: replaceNodeText("maand", "Oktober"); break;
	case 10: replaceNodeText("maand", "November"); break;
	case 11: replaceNodeText("maand", "December"); break;
	}
}

function kleurDag(tel,kl)
{
	var node = document.getElementById(tel);
	node.style.backgroundColor = kl;
}

function geefJaar()
{
	replaceNodeText("jaar", jaar);
}

function replaceNodeText(id, newText) {
        var node = document.getElementById(id);
        while (node.firstChild)
          node.removeChild(node.firstChild);
        node.appendChild(document.createTextNode(newText));
}
