﻿function addLoadListener(fn) {
	if (typeof window.addEventListener != 'undefined') {
		window.addEventListener('load', fn, false);
	}
	else if (typeof document.addEventListener != 'undefined') {
		document.addEventListener('load', fn, false);
	}
	else if (typeof window.attachEvent != 'undefined') {
		window.attachEvent('onload', fn);
	}
	else {
		return false;
	}

	return true;
};

function attachEventListener(target, eventType, functionRef, capture) {
	if (typeof target.addEventListener != "undefined") {
		target.addEventListener(eventType, functionRef, capture);
	}
	else if (typeof target.attachEvent != "undefined") {
		target.attachEvent("on" + eventType, functionRef);
	}
	else {
		return false;
	}

	return true;
};

//checkBrowserWidth();
//attachEventListener(window, "resize", checkBrowserWidth, false);

//function checkBrowserWidth() {
//	var theWidth = getBrowserWidth();

//	if (theWidth == 0) {
//		var resolutionCookie = document.cookie.match(/(^|;)tmib_res_layout[^;]*(;|$)/);

//		if (resolutionCookie != null) {
//			setStylesheet(unescape(resolutionCookie[0].split("=")[1]));
//		}

//		addLoadListener(checkBrowserWidth);

//		return false;
//	}

//	if (theWidth > 800) {
//		setStylesheet("1024 x 768");
//		document.cookie = "tmib_res_layout=" + escape("1024 x 768");
//	}
//	else {
//		setStylesheet("");
//		document.cookie = "tmib_res_layout=";
//	}

//	return true;
//};

//function getBrowserWidth() {
//	if (window.innerWidth) {
//		return window.innerWidth;
//	}
//	else if (document.documentElement && document.documentElement.clientWidth != 0) {
//		return document.documentElement.clientWidth;
//	}
//	else if (document.body) {
//		return document.body.clientWidth;
//	}

//	return 0;
//};

checkBrowserHeight();
attachEventListener(window, "resize", checkBrowserHeight, false);

function checkBrowserHeight() {
	var theHeight = getBrowserHeight();

	if (theHeight == 0) {
		var resolutionCookie = document.cookie.match(/(^|;)tmib_res_layout[^;]*(;|$)/);

		if (resolutionCookie != null) {
			setStylesheet(unescape(resolutionCookie[0].split("=")[1]));
		}

		addLoadListener(checkBrowserHeight);

		return false;
	}

	if (theHeight < 768) {
		setStylesheet("thin");
		document.cookie = "tmib_res_layout=thin";
	}
	else {
		setStylesheet("");
		document.cookie = "tmib_res_layout=";
	}

	return true;
};

function getBrowserHeight() {
	if (window.innerHeight) {
		return window.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight != 0) {
		return document.documentElement.clientHeight;
	}
	else if (document.body) {
		return document.body.clientHeight; 
	}

	return 0;
};

function setStylesheet(styleTitle) {
	var currTag;

	if (document.getElementsByTagName) {
		for (var i = 0; (currTag = document.getElementsByTagName("link")[i]); i++) {
			if (currTag.getAttribute("rel").indexOf("style") != -1 && currTag.getAttribute("title")) {
				currTag.disabled = true;

				if (currTag.getAttribute("title") == styleTitle) {
					currTag.disabled = false;
				}
			}
		}
	}

	return true;
};

