function openNewWindow() {
	window.open(this.href, '', '');
	return false;
}

var container, header, content, footer, resizeTimeoutId;

function scheduleResizeContent() {
	if (resizeTimeoutId) {
		clearTimeout(resizeTimeoutId);
	}
	resizeTimeoutId = setTimeout(resizeContent, 200);
}

function resizeContent() {
	var windowHeight = window.innerHeight;
	var contentHeight = header.offsetHeight + content.offsetHeight + footer.offsetHeight;

	container.style.height = ((windowHeight > contentHeight) ? windowHeight : contentHeight) + 'px';
	resizeTimeoutId = null;
}

window.onload = function () {
	var els, a, i;
	var els = document.getElementsByTagName('a');
	for (i = els.length - 1; i >= 0; i--) {
		a = els[i];
		if (a.rel.indexOf('external') > -1) {
			a.onclick = openNewWindow;
		}
	}

	// min-height hack for safari 2 (yes there is no version detect here...)
	if (navigator.vendor && navigator.vendor.indexOf('Apple') > -1) {
		container = document.getElementById('container');
		header = document.getElementById('header');
		content = document.getElementById('content');
		footer = document.getElementById('footer');
		if (container && header && content && footer) {
			resizeTimeoutId = null;
			window.onresize = scheduleResizeContent;
			resizeContent();
		}
	}
};

window.onunload = function () {
	var els, a, i;
	var els = document.getElementsByTagName('a');
	for (i = els.length - 1; i >= 0; i--) {
		a = els[i];
		if (a.rel.indexOf('external') > -1) {
			a.onclick = null;
		}
	}

	window.onresize = null;
};
