function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}
window.onload = externalLinks;

function setupEvents() {
	var fixMonths = 1;
	var calendar = document.getElementById("dxcaldays");
	var rows = calendar.getElementsByTagName("tr");
	for (var i=0;i<rows.length;i++) {
		var days = rows[i].getElementsByTagName("td");
		for (var a=0;a<days.length;a++) {
			var thismonth = new RegExp('thismonth');
			var weekend = new RegExp('weekend');
			if (days[a].className.match(thismonth) || days[a].className.match(weekend)) {
				for (var b=0;b<calendarEvents.length;b++) {
					var correctMonth = calendarEvents[b][1] - fixMonths;
					var dateCheck = calendarEvents[b][0] + correctMonth + calendarEvents[b][2];
					var regExp = new RegExp(dateCheck);
					if (days[a].id.match(regExp)) {
						days[a].style.backgroundColor = 'orange';
					}
				}
			}
		}
	}
}

function updateEvents(curMonth,prevMonth,Year) {
	// use setupEvents if it is the current month!
	if (curMonth == currentMonth) {
		return setupEvents();
	}
	var calendar = document.getElementById("dxcaldays");
	var rows = calendar.getElementsByTagName("tr");
	for (var i=0;i<rows.length;i++) {
		var days = rows[i].getElementsByTagName("td");
		for (var a=0;a<days.length;a++) {
			var thismonth = new RegExp('thismonth');
			var weekend = new RegExp('weekend');
			if ((days[a].className.match(thismonth)) || (days[a].className.match(weekend))) {
				for (var b=0;b<calendarEvents.length;b++) {
					if (calendarEvents[b][1] == curMonth && calendarEvents[b][0] == Year) {
						if (days[a].innerHTML == calendarEvents[b][2]) {
							days[a].style.backgroundColor = 'orange';
						}
					} else {
						days[a].style.backgroundColor = '';
					}
				}
			}
		}
	}
}

