
var activeid;
Date.prototype.getWeek = function() {
	var week = new Date(this.getFullYear(),0,1);
	return Math.ceil((((this - week) / 86400000) + week.getDay())/7);
}
function checkForDate(year,month,date) {
	var myregexp = /(\d{4})-(\d{2})-(\d{2})/;
	var match;
	var checkpoint = 0;
	for(var x in dates) {
		if((x.match(/id/))) {
			match = myregexp.exec(dates[x].datum);
			if (match != null) {
				if(year == match[1] && month == match[2] && date == match[3]) {
				checkpoint = 1;
				}
			}
		}
	}
	if(checkpoint == 1)
		{ return "true"; }
		else
		{ return "false"; }
}

function returnDailyData(year,month,date) {
var myregexp = /(\d{4})-(\d{2})-(\d{2})/;
var match;
var dataReturn = '';
	for(var x in dates) {
       if((x.match(/id/))) {
           match = myregexp.exec(dates[x].datum);
		   if (match != null) {
			   if(date < 10) {
					newnum = '0' + date;
			   } else {
					newnum = date;
			   }
				var dstring = year + '-' + month + '-' + newnum;
				if(match[0] == dstring) {
					dataReturn += '<p rel="'+ dates[x].id +'">' + dates[x].title + '</p>';
			   }
		   }
		}
	}
	return dataReturn;
}

function MonthList(year, month)
	{
	 var columns = new Array;
	 var date = 1;
	 var date_start	= (new Date(year, month, 1).getDay() == 0) ? 7 : new Date(year, month, 1).getDay();
	 var date_end	= new Date(year, month+1, 0).getDate();
	 var days = Array('Måndag','Tisdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lördag', 'Söndag');
	 var months = Array('Januari', 'Februari', 'Mars', 'April', 'Maj', 'Juni', 'Juli', 'Augusti', 'September', 'Oktober', 'November', 'December')
	 var monthsnr = Array('01','02','03','04','05','06','07','08','09','10','11','12');
	 dataBlock = '<table border="0" cellpadding="0" cellspacing="2" align="center">\n'
	 dataBlock += '<thead>\n';
	 dataBlock += '<tr>\n';
	 dataBlock += '<td colspan="7" class="navContainer">';
	 dataBlock += '<div class="goPrev"><a href="#prev">&lt;&laquo;</a></div>';
	 dataBlock += '<div class="titleBox"><h2>' + months[month] + ' - ' + year + '</h2></div>';
	 dataBlock += '<div class="goNext"><a href="#next">&raquo;&gt;</a></div>';
	 dataBlock += '</td>\n';
	 dataBlock += '</tr>\n';
	 dataBlock += '<tr>\n';

	 for (i = 0; i < 7; i++)
	 	dataBlock	+= '<td valign="top" align="left"> ' + days[i].substr(0, 7) + '</td>\n';

	 dataBlock += '</tr>\n';
	 dataBlock += '</thead>\n';
	 dataBlock += '<tbody>\n';

	 for(var i = 1; i <= 42; i++)
	 {
	 	if (i >= date_start && date <= date_end)
	 	{
		  dateString	= year + '-' + month + '-' + date;
		  if(checkForDate(year,monthsnr[month],date) == "true") {
			columns.push('<td class="dateBox active" valign="top" align=left" style="background-color: white; background-image: url(\'/bilder/dates/active/' + date + '.gif\'); background-position: top left;"><div class="text">' + returnDailyData(year,monthsnr[month],date) + '</div></td>\n');
		  } else {
			columns.push('<td class="dateBox" valign="top" align=left" style="background-color: white; background-image: url(\'/bilder/dates/off/' + date + '.gif\'); background-position: top left;">&nbsp;</td>\n');
			}
		  date++;
	 	} else {
			columns.push('<td style="background: white;">&nbsp;</td>\n');
	 	}

	 	if (columns.length == 7)
	 	{
		  dataBlock += '<tr>' + columns.join('') + '</tr>\n';
		  columns  = new Array();
	 	}
	 }
	 dataBlock += '</tbody>\n';
	 dataBlock += '</table>\n';
	 return dataBlock;
	}
function LoadUp(year, month) {
	$('div.center_events div.overlay').html(MonthList(year, month));
	$('.goPrev').css({ 'cursor': 'pointer' }).bind('click', function() {
		newmonth = month - 1;
		if(newmonth < 0)
			{ LoadUp(year-1, 11); }
		else
			{ LoadUp(year, newmonth); }
		});
	$('.goNext').css({ 'cursor': 'pointer' }).bind('click', function() {
		newmonth = month + 1;
		if(newmonth > 11)
			{ LoadUp(year + 1, (0)); }
		else
			{ LoadUp(year, newmonth); }
		});
	var img_checkpoint;
	$('.dateBox').bind('mouseover', function() {
			var image = $(this).css('background-image');
			if(image.match(/active/))
				{
					img_checkpoint = true;
					image = image.replace('active','on');
				}
				else
				{ image = image.replace('off','on'); }
			$(this).css({'background-image': image, 'color': 'white'});
		}).bind('mouseout', function() {
			var image = $(this).css('background-image');
			if(img_checkpoint == true)
				{
					image = image.replace('on','active');
					img_checkpoint = false;
				}
				else {
					image = image.replace('on','off');
				}
			$(this).css({'background-image': image, 'color': '#0084BD'});
		});
	$('td.active p').bind('click', function() {
			activeid = $(this).attr('rel')
			var posX = eval($(document).width() / 2 - $('#eventsBox').width() / 2) + 73;
			$('#eventsBox div.text').load('/eventLoader.asp?lid=' + activeid);
			$('#eventsBox').css({ top: '140px', left:  posX + 'px'}).show();
		}).css({ 'cursor': 'pointer' }).bind('mouseover', function() {
			$(this).css({ 'color': '#FFF' });
		}).bind('mouseout', function() {
			$(this).css({ 'color': '#0084BD' });
//			$(this).css({ 'textDecoration': 'none' });
		});
		$('#eventsBox div.left').bind('click',function() {
			activeid = dates.previnCollection(activeid);
			$('#eventsBox div.text').load('/eventLoader.asp?lid=' + activeid);
			}).css({ 'cursor': 'pointer' });
		$('#eventsBox div.right').bind('click',function() {
			activeid = dates.nextinCollection(activeid);
			$('#eventsBox div.text').load('/eventLoader.asp?lid=' + activeid);
			}).css({ 'cursor': 'pointer' });
		$('#eventsBox div.close').bind('click',function() {
			$('#eventsBox').hide();
			}).css({ 'cursor': 'pointer' });
	}
$(function() {
	LoadUp((new Date().getFullYear()), (new Date().getMonth()));
});
