


var highlight = '';

window.onload = init;

function init() {
	var search = document.getElementById('SearchString1');
	if (search != null) {
		search.onclick = search_onclick;
		search.onblur = search_onblur;
	}
	
	var fontSize = "10";
	if ((getCookie("hagstofanFontSize") != null) &&  (getCookie("hagstofanFontSize") != '')) {
		fontSize =  getCookie("hagstofanFontSize");
	}
	if (fontSize != 10) {
		document.body.style.fontSize = getPercentSize(fontSize) + "%";
	}
	
	try {
		resizeHandler();
	} catch(e) { /* Hide errors */}
	
	if (highlight != '') {
		highlightSearchTerms(highlight,false);
	}
	
}

function search_onclick() {
	var search = document.getElementById('SearchString1');
	if (search.value == 'Sláðu inn leitarorð') {
		search.value = '';
	}
}

function search_onblur() {
	var search = document.getElementById('SearchString1');
	if (search.value == '') {
		search.value = 'Sláðu inn leitarorð';
	}
}

function enlargeFont() {
	var size = getCookie("hagstofanFontSize");
	if (size == null) {
		size = 10;
	}
	size++;
	if (size > 14) {size = 14}
	document.body.style.fontSize = getPercentSize(size)+'%';
	setCookie("hagstofanFontSize",size);
}

function shrinkFont() {
	var size = getCookie("hagstofanFontSize");
	if (size == null) {
		size = 10;
	}
	size--;
	if (size < 9) {size = 9}
	document.body.style.fontSize = getPercentSize(size)+'%';
	setCookie("hagstofanFontSize",size);
}

function restoreSize() {
	size = "10";
	document.body.style.fontSize = getPercentSize(size)+'%';
	setCookie("hagstofanFontSize",size);	
}

function getPercentSize(size) {
	return (size/16)*100;
}

function setCookie(cookieName,cookieValue) {
	var today = new Date();
	var expire = new Date();
	expire.setTime(today.getTime() + 3600000*24*1000);
	document.cookie = cookieName + "=" + escape(cookieValue) + ";expires="+expire.toGMTString();
}

function getCookie(cookieName) {
	oCookie = document.cookie;
	var index = oCookie.indexOf(cookieName + "=");
	if (index == -1) return null;
	index = oCookie.indexOf("=", index) + 1;
	var endstr = oCookie.indexOf(";", index);
	if (endstr == -1) endstr = oCookie.length;
	return unescape(oCookie.substring(index, endstr));
}

/* General form-validation */

function validate(form) {
	var isValid = true;
	for (var i = 0; i < form.elements.length; i++) {
		var elem = form.elements[i];
		if (elem.className.indexOf('reqd') > 0) {
			
			/* input, select og textarea er höndlað á sama hátt .... */
			if ((elem.tagName == "INPUT") || (elem.tagName == "TEXTAREA") || (elem.tagName == "SELECT")) {			
				if (elem.className.indexOf('emailval') > 0) {
					isValid = isValidEmail(elem.value);
				} else {
					isValid = (elem.value != '');
				}
				
				if (!isValid) {
					alert(elem.title + ' er ekki rétt útfyllt!');
					elem.focus();
					elem.style.borderColor = '#FF4A4A';
					elem.style.backgroundColor = '#FDFAD0';
					return false;
				} else {
					elem.style.borderColor = '';
					elem.style.backgroundColor = '';
				}
			}			
		}
	}
	return true;
}

function isValidEmail(value) {
	return (value.indexOf(".") > 2) && (value.indexOf("@") > 0);
}

function resizeFrame(frame)
{
/*	try {
		var isIE = false;
		var isOpera = false;
		var isMozilla = false;
		var browserString = 'prefix' + navigator.userAgent.toLowerCase();
		
		if (browserString.indexOf('opera') > 0) {
			isOpera = true;
		} else if (browserString.indexOf('msie') > 0) {
			isIE = true;
		} else {
			isMozilla = true;
		}
	
		var height = frame.contentWindow.document.body.scrollHeight;
		var width = frame.contentWindow.document.body.scrollWidth;
		
		if (frame.contentWindow.document.getElementById('pxbody') != null) {
			width = frame.contentWindow.document.getElementById('pxbody').offsetWidth;
		}
		
		if (height < 450) { height = 450; }
		
		
		frame.style.height = height+100 + 'px';

		if (!isMozilla) {
			frame.style.width = width+50 + 'px';
		}

	} catch (e) {
	
	}*/
}



/* Byggir á http://www.nsftools.com/misc/SearchAndHighlight.htm */
function doHighlight(bodyText, searchTerm) 
{
	highlightStartTag = '<span class="highlightex">';
	highlightEndTag = "</span>";
  
	var newText = "";
	var i = -1;
	var lcSearchTerm = searchTerm.toLowerCase();
	var lcBodyText = bodyText.toLowerCase();
    
	while (bodyText.length > 0) {
		i = lcBodyText.indexOf(lcSearchTerm, i+1);
		if (i < 0) {
			newText += bodyText;
			bodyText = "";
		} else {
			if (bodyText.lastIndexOf(">", i) >= bodyText.lastIndexOf("<", i)) {
				if (lcBodyText.lastIndexOf("/script>", i) >= lcBodyText.lastIndexOf("<script", i)) {
					newText += bodyText.substring(0, i) + highlightStartTag + bodyText.substr(i, searchTerm.length) + highlightEndTag;
					bodyText = bodyText.substr(i + searchTerm.length);
					lcBodyText = bodyText.toLowerCase();
					i = -1;
				}
			}
		}
	}
  
	return newText;
}

function highlightSearchTerms(searchText, treatAsPhrase)
{
	if (treatAsPhrase) {
		searchArray = [searchText];
	} else {
		searchArray = searchText.split(" ");
	}
  
	var oContent = document.getElementById('content');
	var bodyText = oContent.innerHTML;
	for (var i = 0; i < searchArray.length; i++) {
		bodyText = doHighlight(bodyText, searchArray[i]);
	}
  
	oContent.innerHTML = bodyText;
	return true;
}

function fixTables()
{
	var tables = document.getElementsByTagName('TABLE');
	for (var i = 0; i < tables.length; i++) {
		fixTable(tables[i]);
	}
}

function fixTable(oTable)
{
	if (oTable.className.indexOf('pxtable') > -1) {
		alert(oTable);
	}
}




