var nautmdr=['Januar','Februar','Marts','April','Maj','Juni','Juli','August','September','Oktober','November','December'];


function fjernramme(id){
	id.className=gem_class;
}

function visramme(id){
	gem_class=id.className;
	id.className=document.getElementById('mouseover').className;
}

function oldclickondate(day,month,year,antaldage,urladd){
	printmdrkal('mdrkal',0,urladd,year,nautmdr[month],day);
}

function clickondate(day,month,year,antaldage,urladd){
	var datepath='&ArrStartday='+day+'&ArrStartmonth='+nautmdr[month]+'&ArrStartyear='+year;
	if (antaldage) {
		datepath+='&periode='+antaldage;
	}
  if (document.mdrkalform && document.mdrkalform.Genre) {
    if (document.mdrkalform.Genre.value) {
        urladd+="&Genre="+document.mdrkalform.Genre.value;
    } else {
     for (n=0; n< document.mdrkalform.Genre.length; n++){
         if (document.mdrkalform.Genre[n].checked){
            urladd+="&Genre="+document.mdrkalform.Genre[n].value;
         }
     }
		}
  }
  if (document.mdrkalform && document.mdrkalform.Area) {
        urladd+="&Area="+document.mdrkalform.Area.value;
  }
  if (document.mdrkalform && document.mdrkalform.StedType) {
        urladd+="&StedType="+document.mdrkalform.StedType.value;
  }
	if (document.mdrkalform && document.mdrkalform.periode) {
			if (document.mdrkalform.periode.value) {
				if (document.mdrkalform.periode.value == '') {
					document.mdrkalform.periode.value='1';
				}
        urladd+="&periode="+document.mdrkalform.periode.value;
			} else {
				for(var i = 0; i < document.mdrkalform.periode.length; i++) {
						if (document.mdrkalform.periode[i].checked) {	
							urladd+="&periode="+document.mdrkalform.periode[i].value;
						}
				}
			}
  } else {
				urladd+="&periode=1";
	}
  if (document.mdrkalform && document.mdrkalform.MarkType2) {
        urladd+="&MarkType2="+document.mdrkalform.MarkType2.value;
  }
  window.open('http://www.kultunaut.dk/perl/arrlist/type-hjoerring2?'+datepath+urladd, '_top');
}

function printmdrkal(div,changemdr,urladd,aktuelyear,aktuelmdr,aktuelday) {
	var divelem = document.getElementById(div);//=document.all[div];
	divelem.innerHTML=genmdrkal(div,changemdr,urladd,aktuelyear,aktuelmdr,aktuelday);
}

function getugenr(year,mdr,day) {
	//mdr angives som 0-11
	var aktuel = new Date(year,mdr,day,1,0,0,0);
	year=aktuel.getFullYear();
	mdr=aktuel.getMonth();
	day=aktuel.getDate();
	var firstday = new Date(year,0,1,1,0,0,0);
	var firstugedag=firstday.getDay();
	if (firstugedag<1) firstugedag=firstugedag+7;
	if (firstugedag>4) { //dvs fre,lør,søn
		firstday.setDate(firstday.getDate()+8-firstugedag);
	} else {
		firstday.setDate(firstday.getDate()+1-firstugedag);
	}
  var MINUTE = 60 * 1000;
  var HOUR = MINUTE * 60;
  var DAY = HOUR * 24;
  var WEEK = DAY * 7;
	var week=Math.ceil(0.1+((aktuel.getTime()-firstday.getTime())/WEEK));
	if (week>0) {
		return week;
	} else {
		return getugenr(year,mdr,day-1);
	}
}

function genmdrkal(div,changemdr,urladd,aktuelyear,aktuelmdr,aktuelday) {
	if (aktuelday && document.mdrkalform.ArrStartday) {
		document.mdrkalform.ArrStartday.value=aktuelday;
	}
  if (aktuelmdr && document.mdrkalform.ArrStartmonth) {
    document.mdrkalform.ArrStartmonth.value=aktuelmdr;
  }
  if (aktuelyear && document.mdrkalform.ArrStartyear) {
    document.mdrkalform.ArrStartyear.value=aktuelyear;
  }
	var mdr =['Januar','Februar','Marts','April','Maj','Juni','Juli','August','September','Oktober','November','December'];
	var aktuelmdrnr;
	for (i = 0; i <= 11; i++) {
  	if ((i+1) == aktuelmdr || nautmdr[i] == aktuelmdr){
			aktuelmdrnr=i;
  	}
	}
	var day = new Date();
	if (aktuelday && aktuelmdrnr && aktuelyear) {
  	day.setYear(aktuelyear);
		day.setMonth(aktuelmdrnr);
		day.setDate(aktuelday);
	} else {
    var idag= (new Date()).getTime();
    day = new Date(idag);
		
	}
	var aktueldag = day.getDate();                  //husker aktuelle dag
	var aktuelslutdag = aktueldag;
			if (document.mdrkalform.periode.value == '') {
          document.mdrkalform.periode.value='1';
      }
      if (document.mdrkalform.periode.value) {
        aktuelslutdag = aktueldag+parseInt(document.mdrkalform.periode.value);
      } else {
        var antalradio=document.mdrkalform.periode.length;
        if (antalradio) {
          for(var i = 0; i < antalradio; i++) {
            if (document.mdrkalform.periode[i].checked) { 
              aktuelslutdag = aktueldag+parseInt(document.mdrkalform.periode[i].value);
            }
          }
        }
      }
	day.setDate(1);                                 //saetter til den 1. i mdr
	day.setMonth(day.getMonth()+changemdr);         //saetter rette mdr
	var tomme=day.getDay()-1;                       //finder antal tomme pladser i starten af mdr
	if (tomme<0) tomme=6;                           //tager højde for søndag
	day.setMonth(day.getMonth()+1);                 //saetter til den 1. i naeste mdr
	day.setDate(0);                                 //traekker 1 dag fra
	var antaldage=day.getDate();                    //laeser antaldage i mdra
	var realyear = day.getYear() < 200 ? day.getYear()+1900 : day.getYear();
	var ugenr=1;
	var header;
header='<div id=mdrtop><table width=100% border=0 cellspacing=0 cellpadding=0><tr>';
header+='<td id=mdrleftarrow onclick="printmdrkal('+"'"+div+"',"+(changemdr-1)+",'"+urladd+"','"+aktuelyear+"','"+aktuelmdr+"','"+aktuelday+"'"+');return false;"></td>';
if (changemdr==0) {
	header+='<td id=mdrtopcenter onclick="clickondate('+aktueldag+','+day.getMonth()+','+realyear+','+(antaldage-(aktueldag-1))+','+"'"+urladd+"'"+');return false;">'+mdr[day.getMonth()]+'  '+realyear+'</td>';
} else {
  if (changemdr>0) {
		header+='<td id=mdrtopcenter onclick="clickondate('+'1'+','+day.getMonth()+','+realyear+','+antaldage+','+"'"+urladd+"'"+');return false;">'+mdr[day.getMonth()]+'  '+realyear+'</td>';
	} else {
		header+='<td id=mdrtopcenter>'+mdr[day.getMonth()]+'  '+realyear+'</td>';
  }
}
header+='<td id=mdrrightarrow onclick="printmdrkal('+"'"+div+"',"+(changemdr+1)+",'"+urladd+"','"+aktuelyear+"','"+aktuelmdr+"','"+aktuelday+"'"+');return false;"></td>';
header+='</tr></table></div>';

header+='<div id=mdrbody><div id=mouseover class="mouseover mdrfelt" style="display:none"></div><table width=100% border=0 cellspacing=0 cellpadding=0>';
header+='<tr>';
if (ugenr) {
	header+='       <td width=16% class="uge mdrfelt">Uge</td>';
}
header+='       <td width=12% class="ugedag mdrfelt">Ma</td>';
header+='       <td width=12% class="ugedag mdrfelt">Ti</td>';
header+='       <td width=12% class="ugedag mdrfelt">On</td>';
header+='       <td width=12% class="ugedag mdrfelt">To</td>';
header+='       <td width=12% class="ugedag mdrfelt">Fr</td>';
header+='       <td width=12% class="ugedag mdrfelt">Lø</td>';
header+='       <td width=12% class="ugedag mdrfelt">Sø</td>';
header+='</tr>';
var ugedag=0;
var uger=1;
var uge=getugenr(realyear,day.getMonth(),1);

function printdate(dagen,ugedag,maxdage,urladd) {
  var today = new Date();
  var today_mday = today.getDate();               //computerens dato
	var visdagen=dagen;
	if (dagen>maxdage) {
		visdagen=visdagen-maxdage;
	}
	if (ugedag==1) {
    header+='<tr>';
    if (dagen<1){
      header+='<td class="ugenr mdrfelt" onclick="clickondate('+'1'+','+day.getMonth()+','+realyear+','+"7,'"+urladd+"'"+');return false;" >';
    } else {
      header+='<td class="ugenr mdrfelt" onclick="clickondate('+dagen+','+day.getMonth()+','+realyear+','+"7,'"+urladd+"'"+');return false;">';
    }
    if (uge>52) uge=getugenr(realyear,day.getMonth(),dagen);
    header+=uge+'</td>';
    uge++;
  }
  if (dagen<=0 ) {
    header+='       <td class="noday mdrfelt">&nbsp;</td>';
  } else {
    if (changemdr==0 && dagen>=aktueldag && dagen<aktuelslutdag) {
      header+='       <td class="aktueldag mdrfelt" onclick="clickondate('+dagen+','+day.getMonth()+','+realyear+','+"'','"+urladd+"'"+');return false;" class="nautaktivdaglink" onmouseover="visramme(this)" onmouseout="fjernramme(this)">'+visdagen+'</td>';
    } else {
			if (today.getYear()>day.getYear() || (today.getYear()==day.getYear() && today.getMonth()>day.getMonth()) || (today.getYear()==day.getYear() && today.getMonth()==day.getMonth() && today_mday>dagen)) {
        header+='       <td class="prevday mdrfelt">'+visdagen+'</td>';
      } else {
				if (dagen>maxdage) {
						header+='       <td class="nextmdrday mdrfelt" onclick="clickondate('+dagen+','+day.getMonth()+','+realyear+','+"'','"+urladd+"'"+');return false;" class=nautdaglink onmouseover="visramme(this)" onmouseout="fjernramme(this)">'+visdagen+'</td>';
				} else {
          	header+='       <td class="nextday mdrfelt" onclick="clickondate('+dagen+','+day.getMonth()+','+realyear+','+"'','"+urladd+"'"+');return false;" class=nautdaglink onmouseover="visramme(this)" onmouseout="fjernramme(this)">'+visdagen+'</td>';
				}
      }
    }
  }
  if (ugedag==7) {
		header+='</tr>';
	}
}

for (var dagen=1-tomme; dagen<=antaldage; dagen++) {
  ugedag++;
	printdate(dagen,ugedag,antaldage,urladd);
	if (ugedag==7) {
		uger++;
   	ugedag=0;
	}
}
var restantaldage=dagen+(6-ugedag);
if (uger<6) {
	restantaldage=restantaldage+7;
}
for (;dagen<=restantaldage; dagen++) {
	ugedag++;
  printdate(dagen,ugedag,antaldage,urladd);
  if (ugedag==7) {
    uger++;
    ugedag=0; 
  }
}

header+='</table></div>';
return header;
}



window.placeDiv={
	placedDivs:new Object(),
	count:0
}
placeDiv.registerURL=function(URL,where,w,h) {                      
	if (document.layers) document.write('<layer id="'+where+'content" src="'+URL+'" clip="0,0,'+w+','+h+'" visibility=hidden></layer>');
	else document.write('<IFRAME class=placeDivContent src="'+URL+'" id="'+where+'content" width='+w+' height='+h+' MARGINWIDTH=0 MARGINHEIGHT=0 HSPACE=0 VSPACE=0 FRAMEBORDER=0 SCROLLING=NO BORDERCOLOR="#000000"></IFRAME>');
	this.register(where+'content',where);
}
placeDiv.registerIMG=function(img,where,w,h) {                      
	document.write('<div id="'+where+'content" class=placeDivContent><img width='+w+' height='+h+' src="'+img+'"></div>');
	this.register(where+'content',where);
}

placeDiv.registerdiv=function(div,where,w,h) {
        this.register(div,where);
}
placeDiv.register=function(what,where) {    
	placeDiv.placedDivs[where]=what;
  if (placeDiv.count==0) {
		window.placeDiv_windowonresize=window.onresize;
		window.placeDiv_windowonload=window.onload;
		window.onload=placeDiv.onload;
		window.onresize=placeDiv.onresize;
  }
	placeDiv.count++;
}
placeDiv.error1=function(id) {
	window.status="Kan ikke finde <div><div style='position:relative' id="+id+">...</div></div>";
}
placeDiv.move=function() {
	for (var where in placeDiv.placedDivs) {
		var elem,style;                   
		var what=placeDiv.placedDivs[where];
		if (document.getElementById || document.all) { // ie/moz
			var top=0,left=0;
			if (document.getElementById) elem=document.getElementById(where);  
			else elem=document.all[where];  
			if (elem.parentNode) elem=elem.parentNode;
			if (!elem) placeDiv.error1(where);
			else {
				while (elem) {

					// Tilfoejet if for at undgaa fejlpositionering ved class-induceret 
					// relativ positionering. Rasmus 040104
					if (elem.currentStyle && elem.currentStyle.position=="relative") {
						// Hvis der er en currentstyle og dens positionering 
						// er relativ medregnes den ikke
					}
					else {	
						top+=elem.offsetTop;
						left+=elem.offsetLeft;
						if (typeof(elem.clientTop)=='number') { // ie
							if (elem.tagName=="TD") {
								top+=elem.clientTop;
								left+=elem.clientLeft;
							}
						}                   
						else { // moz
							if (elem.border) {
								top+=parseInt(elem.border,10);
								left+=parseInt(elem.border,10);
							}
						}
					}
					elem=elem.offsetParent;  
				}
				if (document.getElementById) style=document.getElementById(what).style;       
				else {
					style=document.all[what].style;
				}
			}
		}
		else { // nn 
			elem=document.layers[where];
			if (!elem) { 
				placeDiv.error1(where);
			}
			else {
				left=elem.pageX;
				top=elem.pageY;
				style=document.layers[what];
			}                                    
		}
		if (style) {
			style.top=top;
			style.left=left;
			style.visibility="visible";
		}
	}
}

placeDiv.onload=function() {
	placeDiv.move();
	if (window.placeDiv_windowonload) window.placeDiv_windowonload();
}

placeDiv.onresize=function() {   
	if (document.getElementById) placeDiv.move();
	else location.reload();
	if (window.placeDiv_windowonresize) window.placeDiv_windowonresize();
}

document.write('<style type="text/css">.placeDivContent { position:absolute; left:0px; top:0px; visibility:hidden;z-index:0 }</style>');






