// =======================================================================
function make_popupkalender(form, field, type) {
window.open("jsscript/popupkalender.html", "popkal", "width=400,height=220,status=0,top=150,left=350");
datenfeld = eval("document." + form + "." + field);
datentyp = type;
}
// =======================================================================

var day;
var month;
var year;

var monatsnamen = new Array("Januar","Februar","M&auml;rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");

function zweidigit(zahl, werttyp) {
var zw = 0;
zw = (zahl < 10 ? '0' : '') + zahl;

if (werttyp && werttyp != '') {
        
switch(werttyp) {
case 'month':
zw = (zw > 12 ? 12 : zw);
break;

case 'day':
zw = (zw > 31 ? 31 : zw);
break;
}
}
return zw;
}
// =======================================================================
function zweidigitd(zahl, standardval, werttyp) {
zahl = parseInt(zahl, 10);
if (isNaN(zahl)) return standardval;
return zweidigit(zahl, werttyp)
}
// =======================================================================
function vierdigit(zahl) {
zahl = parseInt(zahl, 10)
return (zahl < 1000 ? zahl < 100 ? zahl < 10 ? '000' : '00' : '0' : '') + zahl;
}

// =======================================================================
function startkalender() {
if (!year && !month && !day) {
        
if (isNaN(year) || isNaN(month) || isNaN(day) || day == 0) {
var dt      = new Date();
year    = dt.getFullYear();
month   = dt.getMonth();
day     = dt.getDate();
}

} else {
if (month > 11) {
month = 0;
year++;
}
if (month < 0) {
month = 11;
year--;
}
}

if (document.getElementById) {
content = document.getElementById("kalenderausgabe");
} else if (document.all) {
content = document.all["kalenderausgabe"];
}
content.innerHTML = "";
var calcont = ""

// =======================================================================
calcont += '<table class="popcal" cellpadding="0" cellspacing="1" width="100%"><tr><td class="topcal" width="50%" align="center"><table border="0" cellpadding="1" cellspacing="0" width="100%"><tr><td align="center">';
calcont += '<a href="javascript:month--; startkalender();">&laquo;</a>&nbsp;&nbsp;</td><td align="center">';
calcont += '<form method="#" onchange="return 0;"><select id="sm" name="monatselect" onchange="month = parseInt(document.getElementById(\'sm\').value); startkalender();">';
var i = 0;
var selected = ''; 

for (i = 0; i < 12; i++) {
if (i == month) selected = ' selected="selected"';
else selected = '';
calcont += '<option value="' + i + '" ' + selected + '>' + monatsnamen[i] + '</option>';
}
    
calcont += '</select></form>';
calcont += '</td><td align="center">&nbsp;&nbsp;<a href="javascript:month++; startkalender();">&raquo;</a>';

calcont += '</td></tr></table></td><td class="topcal" width="50%" align="center"><table border="0" cellpadding="1" cellspacing="0" width="100%"><tr><td align="center">';
calcont += '<a href="javascript:year--; startkalender();">&laquo;</a>&nbsp;&nbsp;</td><td align="center">';
calcont += '<form method="#" onsubmit="return 0;"><select id="sj" name="jahrselect" onchange="year = parseInt(document.getElementById(\'sj\').value); startkalender();">';
    
for (i = year-10; i < year + 10; i++) {
if (i == year) selected = ' selected="selected"';
else selected = '';
calcont += '<option value="' + i + '" ' + selected + '>' + i + '</option>';
}
    
calcont += '</select></form>';
calcont += '</td><td align="center">&nbsp;&nbsp;<a href="javascript:year++; startkalender();">&raquo;</a>';
calcont += '</td></tr></table></td></tr></table>';

calcont += '<table class="popcal" cellpadding="0" cellspacing="1" width="100%">';
calcont += "<tr><td class=\"wkd\" align=\"center\">Mo</td><td class=\"wkd\" align=\"center\">Di</td><td class=\"wkd\" align=\"center\">Mi</td><td class=\"wkd\" align=\"center\">Do</td><td class=\"wkd\" align=\"center\">Fr</td><td class=\"wkd\" align=\"center\">Sa</td><td class=\"wkd\" align=\"center\">So</td></tr>";

var erster_tag = new Date(year, month, 0).getDay();
var letzter_tag = new Date(year, month + 1, 0).getDate();
calcont += "<tr>";

var tiw = 0;
for (i = 0; i < erster_tag; i++) {
calcont += "<td class=\"tagcellout\">&nbsp;</td>";
tiw++;
}
    
for (i = 1; i <= letzter_tag; i++) {
if (tiw == 7) {
calcont += "</tr><tr>";
tiw = 0;
}
var aktuell = "";
var anzeige_monat = 1 + month;
aktuell = "" + vierdigit(year) + "-" + zweidigit(anzeige_monat, 'month') + "-" + zweidigit(i, 'day');

var style = '';
var current_date = '';        
if (i == day) {
style = ' class=\"aktuell\"';
current_date = aktuell;
} else {
style = ' class=\"tagcell\"';
}

calcont += "<td" + style + "><a href=\"javascript:printdate('" + aktuell + "');\">" + i + "</a></td>"
tiw++;
}
for (i = tiw; i < 7; i++) {
calcont += "<td class=\"tagcellout\">&nbsp;</td>";
}

calcont += "</tr></table>";
content.innerHTML = calcont;
}

// =======================================================================
function printdate(d) {
var txt = d;
window.opener.datenfeld.value = txt;
window.close();
}
// =======================================================================


