var monthtext=['1','2','3','4','5','6','7','8','9','10','11','12'];
var pomerenaGodina;

function populatedropdown(dayfield, monthfield, yearfield) {
	
// promenljive, konstante, HTML komponente
	var today = new Date();
	pomerenaGodina = today.getFullYear();
	var dayfield = document.getElementById(dayfield)
	var monthfield = document.getElementById(monthfield)
	var yearfield = document.getElementById(yearfield)
	var POMERANJE_DANA = 20;
	var BROJ_DANA_U_MESECU = vratiBrojDanaZaMesec(today.getMonth());
	
	// pomeranje dana za POMERANJE_DANA
	var noviDan = today.getDate() + POMERANJE_DANA;
	var mesecPomeren = 0;
	if (noviDan > BROJ_DANA_U_MESECU) {
		noviDan = noviDan - BROJ_DANA_U_MESECU;
		mesecPomeren = 1;
	}
	
	// pomeranje meseca
	var noviMesec = today.getMonth() + mesecPomeren;
	var godinaPomerena = 0;
	if (noviMesec > 11) {
		noviMesec = 0;
		godinaPomerena = 1;
	}
	for (var m = 0; m < 12; m++) {
		monthfield.options[m] = new Option(monthtext[m], monthtext[m])
	}
	monthfield.options[noviMesec] = new Option(monthtext[noviMesec], monthtext[noviMesec], true, true) //select today's month
	
	// pomeranje godine
	var thisyear = today.getFullYear() + godinaPomerena;
	pomerenaGodina = thisyear; 
	for (var y = 0; y < 20; y++){
		yearfield.options[y] = new Option(thisyear, thisyear)
		thisyear += 1
	}
	yearfield.options[0] = new Option(today.getFullYear() + godinaPomerena, today.getFullYear() + godinaPomerena, true, true) //select today's year
	
	// tek kada se vidi koja je godina, moze se podesiti box za dane. 
	// Razlog je sto februar u prestupnoj godini ima 29 dana
	for (var i = 0; i < vratiBrojDanaZaMesec(noviMesec); i++) {
		dayfield.options[i] = new Option(i + 1, i + 1)
	}
	dayfield.options[noviDan - 1] = new Option(noviDan, noviDan, true, true) //select today's day
}

function vratiBrojDanaZaMesec(mesec) {
	if ((mesec == 0) || (mesec == 2) ||(mesec == 4) || (mesec == 6) || (mesec == 7) || (mesec == 9) || (mesec == 11)) {
		return 31;
	}
	if ((mesec == 3) ||(mesec == 5) || (mesec == 8) || (mesec == 10)) {
		return 30;
	}
	if (mesec == 1) {
		if ((pomerenaGodina % 4) == 0) {
            return 29;
        } else {
            return 28;
        }
	} 
}

window.onload=function(){
	populatedropdown("daydropdown", "monthdropdown", "yeardropdown");
}