/////////////////////////////////////////////////
// Globale Einstellungen:

var adj=10
	var w = screen.width;
	var h = screen.height;
	var ww=200
	var hh=170;

	var posLeft=0;
	var posTop=0;
	
	posTop =  ((h-(hh)-adj)/2);
	posLeft = ((w-(ww)-adj)/2);
	posTop = parseInt(posTop);
	posLeft = parseInt(posLeft);


var background = '#fff';     // Farbe für den Hintergrund
var color      = '#000';     // Farbe für den vordergrund
var markSunday = '#CCCCCC';     // Sonntage färben
var markSaturday = '#CCCCCC';   // Samstage färben
var markHeute='background-color:#FFFFFF;font-weight:bold;color:#336699';
var funktion   = 'getDatum'; // Die Funktion, die bei einem Klick ausgeführt werden soll

var close      = true;       // Schliessen nach Klick

function monatsBlatt_Setup (m,f_feld) {
	if (f_feld==2)
		funktion='getDatum2';
	
	if (f_feld==1)
		funktion='getDatum';
	if (f_feld==3)
		funktion='getDatum3';
	monatsBlatt(m);
}

function monatsBlatt(m, j)
{
   var today = new Date();
   var tmp = checkDate(m);
   if(tmp != null)
   {
        m = tmp.getMonth();
        j = tmp.getFullYear();
   }
   
   if(!j) j = today.getFullYear();
   var typem=typeof m;
   if(typem != "number" & m=='') m = today.getMonth();
	
   var d = new Date();
   d.setMonth(m);
   d.setFullYear(j);


   var win = window.open('', 'kalender', 'width='+ww+',height='+hh+',top='+posTop+',left='+posLeft+'');
   if(!win) return;

   var text = '<html>'
   + '<head>'
   + '<title>' + 'Kalender' + '</title>'
   +'<style>'
   + '.active{border:1px #333 outset;background-color:#FFFFFF;padding:1px;margin:1px;font-family: Arial, Helvetica, sans-serif;font-size: 11px;}'
   +'.inactive{background-color:#fff;padding:1px;margin:1px;border:1px #336699 solid;font-family: Arial, Helvetica, sans-serif;font-size: 11px;}'
   +'th {font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 11px;font-weight: bold;color: #336699;border: 1px solid #336699;margin: 1px;padding: 1px;}'
   +'a {color: #336699;text-decoration: none;}'
   +'a:hover {text-decoration: underline;}'
   +'</style>'
   + '</head>'
   + '<body>'
   ;

   text += datumTitel(d)
   + '<tr>';

   var i = 0;
   var tag = 0;
   for(i = 0; i < 7; i++)
   {
        tag++;
        if(tag == LOCALE.abday.length) tag = 0;
        var t = LOCALE.abday[tag].substring(0,1).toUpperCase() + LOCALE.abday[tag].substring(1,2);
        var style = (tag == 6 ? markSaturday : '') +  (tag == 0 ? markSunday : '');
        text += '<th style="' + style + '">' + t + '</th>';
   }
   text += '</tr><tr>';

   d.setDate(1);
   for(i = 1; i < 7; i++)
   {
       if( d.getDay() == i) break;
       text += tabellenZelle();
   }
   var tag = 1;
   while(tag < 32)
   {
         d.setDate(tag);
         if(d.getMonth() > m) break;

         text += tabellenZelle(d, (d.getTime() == today.getTime()) );
         if( !(i % 7) ) { text += '</tr><tr>'; }
         i++;
         tag++;
   }
   i--;
   if((i %7))  while((i++) % 7 ) {text += tabellenZelle(); }

   text += '</tr></table>';

   text += '</body></html>';

   win.document.open();
   win.document.write(text);
   win.document.close();
   win.focus();
}
function datumTitel(d)
{
   var j = d.getFullYear();
   var m = d.getMonth();
   var t = d.getDate();

   d.setDate(1);

   d.setMonth( m-1 );

   
   
   var back = '<a href="#" onclick="opener.monatsBlatt('
   + d.getMonth() + ',' + d.getFullYear()  + ');return false;">'
   + '&laquo;'+ '</a>';
   d.setFullYear(j);

   d.setMonth( m+1 );

    
   fore = '<a href="#" onclick="opener.monatsBlatt('
   + d.getMonth() + ',' + d.getFullYear()  + ');return false;">'
   + '&raquo;' + '</a>'
   ;
   d.setFullYear(j);
   d.setMonth( m );
   d.setDate(t);
   return '<table cellpadding=0 cellspacing=0 width=180>'
   + '<tr>'
   + '<th>' + back + '</th>'
   + '<th colspan=5>' + LOCALE.mon[m] + ' / ' + d.getFullYear() + '</th>'
   + '<th>' + fore + '</th>'
   + '</tr>'
   ;
}
function tabellenZelle(d, heute)
{
    var date ="&nbsp;";
    var style = 'class="inactive"';
    if(d){

    var day = d.getDay();
    date = d.getDate();
    style = 'class="active" style="cursor:pointer;'
    + (day == 6 ? markSaturday : '')
    +  (day == 0 ? markSunday : '')
    + (heute ?  markHeute : '')
    + '" '
    + getJS(d)
    ;
    }
    return '<td> <div ' + style + '>' + date + '</div> </td>'
    ;
}
function getJS(d)
{
    return ' onclick="opener.' + funktion + '('
    + d.getDate() + ',' + d.getMonth() + ',' + d.getFullYear() + ');'
    + (close ? 'self.close();' : '')
    + '" '
    ;
}

function getDatum(t, m, j)
{
var datum = new Date(j, m, t);
self.focus();
document.forms[0].datumBegin.value = formatDate(datum);
}

function getDatum2(t, m, j)
{
var datum = new Date(j, m, t);
self.focus();
document.forms[0].datumEnde.value = formatDate(datum);
}
function getDatum3(t, m, j)
{
var datum = new Date(j, m, t);
self.focus();
document.forms[0].Datum.value = formatDate(datum);
}

markSunday = markSunday ? 'background-color:' + markSunday : '';
markSaturday = markSaturday ? 'background-color:' + markSaturday : '';

var oneDay = 24 * 60 * 60 * 1000;