calendar = function( szdate , szdiv , mark)
{
	this.date = new Date() ;
	this.mark = mark;
	this.div = szdiv;
	this.MonthDays = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
	this.MonthNames = new Array('Januar','Februar','Mars','April','Mai','Juni','Juli','August','September','Oktober','November','Desember');
	if (szdate != null && szdate != "")
	{
		var daten = szdate.split(".");
		this.date.setFullYear( daten[0],daten[1]-1, 1 );
	}else
	{
		this.date.setDate( 1 );
	}
	this.paint = function()
	{
		var year =  this.date.getFullYear();
		var month =  this.date.getMonth();
		var day = this.date.getDay() -1;
		if (day == -1){day=6;}
		if (month  == 1)
		{
			// check for leepyear
			var e = new Date();
			e.setDate(29);
			e.setMonth(1);
			e.setYear(year);
			if ( month == e.getMonth() )
			{
				this.MonthDays[1] = 29;
			}else
			{
				this.MonthDays[1] = 28;
			}
		}
		var nextmonth = (month == 11?1:(month+2));
		nextmonth = (nextmonth.length == 1 ? "0"+ nextmonth:nextmonth );
		nextmonth = (nextmonth < 10 ? "0"+ nextmonth :nextmonth );
		var nextyear = (nextmonth == 1?(year+1):(year));
		var premonth = (month == 0?12:(month));
		premonth = (premonth < 10 ? "0"+ premonth:premonth);
		var preyear = (premonth == 12?(year-1):(year));
		var szreturn = "";
		szreturn  = szreturn  + "<table id='table_calendar' cellspacing='0' cellpadding='0' summary='This month's calendar'>"
		szreturn  = szreturn  + "<div style='width:140px;height:15px;padding-left:50px;'><a href='/"+SYM.util.path+"/pages/"+szfilename+"?open&date="+ preyear +"."+premonth +"' title='previous month' style='padding-right:15px;width:30px;'><img src='/kunder/landbruk/mm.nsf/lupgraphics/arrow_left.gif/$file/arrow_left.gif' alt='Tilbake' border='0' /></a><span style='width:200px'>"+ this.MonthNames[month] +"</span><a href='/"+SYM.util.path+"/pages/"+szfilename+"?open&date="+ nextyear +"."+nextmonth +"' title='next month' style='padding-left:15px;width:30px;'><img src='/kunder/landbruk/mm.nsf/lupgraphics/arrow_right.gif/$file/arrow_right.gif' alt='Frem' border='0' /></a></div>"
/*		szreturn  = szreturn  + " <tr>"
		szreturn  = szreturn  + "<th scope='col' abbr='Monday' title='Mandag'>M</th>"
		szreturn  = szreturn  + "<th scope='col' abbr='Tuesday' title='Tirsdag'>T</th>"
		szreturn  = szreturn  + "<th scope='col' abbr='Wednesday' title='Onsdag'>O</th>"
		szreturn  = szreturn  + "<th scope='col' abbr='Thursday' title='Torsdag'>T</th>"
		szreturn  = szreturn  + "<th scope='col' abbr='Friday' title='Fredag'>F</th>"
		szreturn  = szreturn  + "<th scope='col' abbr='Saturday' title='Lørdag'>L</th>"
		szreturn  = szreturn  + "<th scope='col' abbr='Sunday' title='Søndag'>S</th>"
		szreturn  = szreturn  + " </tr>"
		for (  i = 0 ; i < day  ; i++ )
		{
			szreturn  = szreturn  + "<td>&nbsp;</td>"
		}
		
		for (  i = 0 ; i < this.MonthDays[ month ]  ; i++ )
		{
			if ( (this.mark.indexOf("," +  (i+1).toString()+",") != -1 ) || (this.mark.indexOf("," + "0" + (i+1).toString()+",") != -1))
			{
szreturn  = szreturn  + "<td><a href='#'>"+(i+1) +"</a></td>"
			}else
			{
				szreturn  = szreturn  + "<td>"+(i+1) +"</td>"
			}
			if (day == 6)
			{
				day = 0;
				szreturn  = szreturn  + " </tr>"
				szreturn  = szreturn  + " <tr>"
			}else
			{
				day++;
			}
		}
		if (day == 0){day = 200;}
		for (  i = day ; i < 7 ; i++ )
		{
			szreturn  = szreturn  + "<td>&nbsp;</td>"
		}
		szreturn  = szreturn  + " </tr>"
*/
		szreturn  = szreturn  + "</table>"
		var obj = SYM.util.dom.getObject(this.div );
		obj.innerHTML = szreturn  ;
	}
}

