// Copyright (C) Olav Hellesø-Knutsen 1997-1998. All rights reserved. This code may be copied for non-commercial use. Redistribution prohibited. Please do not remove this copyright-information. Questions goes to: olav@arakno.no - http://www.arakno.no/http://home.sol.no/~nbk/olav/

// Set this variabel to 1 if you want to be able to click through the month If the variabel is anything else than 1 (e.g. 0), you will only be able to see the current month

var usesaved = 1; // valid variables = 1 or 0

// Change the day- and month abbreviation for your own language

var dn = new Array('Dim','Lun','Mar','Mer','Jeu','Ven','Sam');
var ma = new Array('Janvier','F&eacute;vrier','Mars','Avril','Mai','Juin','Julliet','Aout','Septembre','Octobre','Novembre','D&eacute;cembre');
// If daylink is anyting else than 1, you're missing the link for each day
// The format for the links in a month explains best by example:
// 19980104.html = Year:1998, month:01, day:4
// 20011202.html = Year:2001, month:12, day:2

var daylink = 0; // valid variables = 1 or 0

// Change this to your favourite font types and size for all the text
var fontface = 'Georgia, Times, serif';
var fontsize = '2';
// Special characters for left and right arrow
var leftarr = '&#171;';
var rightarr = '&#187;';
// Don't change the code below this point

var nyDato = new Date();
var currmaaned = new Date();
var calcook;
var globaar, globmaaned, globdag;
function makeCalender(aar,maaned,dag){

var il = makeCalender.arguments.length;
var spart;
if(usesaved==1){

spart=GetCookie('calender');
	 if(spart!=null&&spart!='0'){

		 var rekke = spart.split('&');
		 nyDato.setYear(rekke[0])

		 nyDato.setMonth(rekke[1]);
		 nyDato.setDate(rekke[2]);
}

	else{

	if(il==3){

		 nyDato.setYear(aar)

		 nyDato.setMonth(maaned);
		 nyDato.setDate(dag);
		}

	}
}

	aar = nyDato.getYear(); //getYear = 76 hvis årstallet er før 2000 etter år 2000 returneres 2001

	maaned = nyDato.getMonth();
	dag = nyDato.getDate();
	var diw = nyDato.getDay(); //getDay = day of week 0-6

	

globaar = aar;
globmaaned = maaned;
globdag = dag;
var calender, cal;
var as1, as2, ae;
if(daylink==1){

var as1 = '<A HREF="';
var as2 = '">';
var ae = '</A>';
}

if(aar<2000)aar+=1900; // Year 2000 problem in JavaScript

cal = dn[diw+1] + ' ' + aar + ' ' +maaned+' '+dag;
var ts = '<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=0 ALIGN=middle WIDTH="95%" STYLE="margin-top: 8px">\n';
var te = '</TABLE>';
var rs = '<TR>';
var re = '</TR>\n';
var cs = '<TD CLASS=cal>';
var ce = '</FONT></TD>\n';
cal = ts + rs;
if(usesaved==1)cal += '<TH CLASS=arrows><FONT ="' + fontsize;
if(usesaved==1)cal += '"><A CLASS=prevlink TITLE="Click here to view the previous month" OnMouseOver="window.status=\'Cliquez ici pour voir le mois pr&eacute;c&eacute;dant\'; return true;"HREF="javascript:go(1);">'+leftarr+'</A></FONT></TH>';
if(usesaved==1)cal += '<TH COLSPAN="5"';
else cal+='<TH COLSPAN="7"';
cal += '><FONT FACE="' + fontface;
cal += '" >' + ma[maaned] + ' ' + aar + ce;
if(usesaved==1)cal += '<TH CLASS=arrows><A CLASS=nextlink TITLE="Click here to view the next month" OnMouseOver="window.status=\'Cliquez ici pour voir le mois suivant\'; return true;" HREF="javascript:go(2);">'+rightarr+'</A></TH>';
cal += re+rs+cs;
for(i=0;i<6;i++)cal += dn[i] + ce + cs;
cal += dn[6] + ce + re;
var tmp;
nyDato.setDate(1);
nyDato.setMonth(maaned);
var midl;
var diu = nyDato.getDay();
cal+=rs;
t = nyDato.getMonth();
for(i=0;i<diu;i++){cal += cs +'&nbsp;' + ce;}

var fresh = new Date();
var bs = '<b STYLE="color: #8F263A; font-size: 14px; text-decoration: blink">';
var be = '</b>';
fresh = fresh.getDate();
for(i=1;i<32;i++){

gd=nyDato.getDate();
gm=nyDato.getMonth();
gy=nyDato.getYear();
if(gy<2000)gy+=1900;
if((gd>1||(gd==1&&i==1))&&gm==maaned){

diw = nyDato.getDay();
	 if(diw==0)cal+=rs; // Hvis første dag i uken

	 if(diw!=7){ 			 // Hvis ikke siste dag i uken

	 tmp1 = gm;
		tmp2 = gd;
		if(tmp1<10)tmp1 = '0' + tmp1;
		if(tmp2<10)tmp2 = '0' + tmp2;
	 if(daylink==1){

		 if(fresh==gd&&globmaaned==currmaaned.getMonth())cal += cs + bs + as1 + gy + tmp1 + tmp2 + '.html' + as2 + gd + ae + be + ce;
		 else cal += cs + as1 + gy + tmp1 + tmp2 + '.html' + as2 + gd + ae + ce;
		}

		else{

		 if(fresh==gd&&globmaaned==currmaaned.getMonth())cal += cs + bs + tmp2 + be + ce;
		 else cal += cs + tmp2 + ce;
		}

	 }

	 if(diw==7)cal+=re; // Hvis siste dag i uken
}

nyDato.setDate(gd+1);
}

if(diw<6){

for(i=diw;i<6;i++){

if(i<7)cal += cs +'&nbsp;'+ce;
	if(i==6)cal += re;
}
}

cal += te;
calender = cal;
return calender;
}

function go(hva){

if(hva==1)SaveCookie(globaar,globmaaned-1,globdag);
else SaveCookie(globaar,globmaaned+1,globdag);
document.location=document.location;
}

// *************************************** Start cookie ******************************
// If visit before: get saved data

function getCookieVal(offset)

{

var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)

endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie(name){

var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen)

{

var j = i + alen;
if (document.cookie.substring(i, j) == arg)

return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)

break;
}

return null;
}

function SetCookie(name, value){

var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (2 < argc) ? argv[2] : null;
var path = (3 < argc) ? argv[3] : null;
var domain = (4 < argc) ? argv[4] : null;
var secure = (5 < argc) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +

((expires == null) ? "" : ("; expires="+expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}

function SaveCookie(aarvar,maanedvar,dagvar){

var expdate = new Date();
expdate.setTime(expdate.getTime() + (60 * 60*1000*3));
SetCookie("calender", aarvar+'&'+maanedvar+'&'+dagvar, expdate, "/", null, false);
}

function clearCookie(){

var tid = new Date();
tid.setTime(tid.getTime()+(60*60))

SetCookie("calender", 0, tid, "/", null, false);
history.go(0);
}