window.onload = init;

function init() {
	var search = document.getElementById('SearchString1');
	if (search != null) {
		search.onclick = search_onclick;
		search.onblur = search_onblur;
	}
	
	var fontSize = "11";
	if ((getCookie("fontsize") != null) &&  (getCookie("fontsize") != '')) {
		fontSize =  getCookie("fontsize");
	}
	if (fontSize != 11) {
		document.body.style.fontSize = getPercentSize(fontSize) + "%";
	}

	FixFlash();
}

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("fontsize");
	if (size == null) {
		size = 11;
	}
	size++;
	if (size > 15) {size = 15}
	document.body.style.fontSize = getPercentSize(size)+'%';
	setCookie("fontsize",size);
}

function shrinkFont() {
	var size = getCookie("fontsize");
	if (size == null) {
		size = 11;
	}
	size--;
	if (size < 9) {size = 9}
	document.body.style.fontSize = getPercentSize(size)+'%';
	setCookie("fontsize",size);
}

function restoreSize() {
	size = "11";
	document.body.style.fontSize = getPercentSize(size)+'%';
	setCookie("fontsize",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;
	var elemIsValid = true;
	var errString = "<em>Athugið að nauðsynlegt er að fylla \xFAt alla reiti</em>";
	for (var i = 0; i < form.elements.length; i++)
	{
		var elem = form.elements[i];
		if (elem.className.indexOf("reqd") > 0) 
		{
			if (elem.tagName == "INPUT" || elem.tagName == "TEXTAREA" || elem.tagName == "SELECT") 
			{
	                		if (elem.className.indexOf("emailval") > 0) 	
				{
		                  		elemIsValid = isValidEmail(elem.value);
				} 
				else 
				{
					elemIsValid = elem.value != ""; 
				}
				if (!elemIsValid) 
				{						                    	
					elem.focus();
					elem.style.borderColor = "#bb2424";
					elem.style.backgroundColor = "#FFFFFF";
			                  isValid = false; 					
					document.getElementById(elem.id + "_errmsg").innerHTML = errString;
					document.getElementById(elem.id + "_errmsg").style.visibility = "visible";               
				} 
				else 
				{
					elem.style.borderColor = "";
					elem.style.backgroundColor = "";
					elemIsValid = true;
					document.getElementById(elem.id + "_errmsg").innerHTML = "";
					document.getElementById(elem.id + "_errmsg").style.visibility = "hidden"; 
				}
			}
		} 
		else if (elem.className.indexOf("number") > 0) 
		{
			elemIsValid = isValidNumber(elem.value, 2);
			if (!elemIsValid) 
			{				
				elem.focus();
				elem.style.borderColor = "#bb2424";
				elem.style.backgroundColor = "#FFFFFF";
				isValid = false;
		
				document.getElementById(elem.id + "_errmsg").innerHTML = errString;
				document.getElementById(elem.id + "_errmsg").style.visibility = "visible";
			}
			else
			{
				elem.style.borderColor = "";
				elem.style.backgroundColor = "";
				elemIsValid = true;
				document.getElementById(elem.id + "_errmsg").innerHTML = "";
				document.getElementById(elem.id + "_errmsg").style.visibility = "hidden"; 
			}	
		}
		if (elem.className.indexOf("special") > 0)
		{
			if (elem.value != 10)
			{
				elemIsValid = false;
				elem.focus();
				elem.style.borderColor = "#bb2424";
				elem.style.backgroundColor = "#FFFFFF";
				isValid = false;
				
				document.getElementById(elem.id + "_errmsg").innerHTML = errString;
				document.getElementById(elem.id + "_errmsg").style.visibility = "visible";
			}
			else
			{
				elemIsValid = true;
				elem.style.borderColor = "";
				elem.style.backgroundColor = "";
				document.getElementById(elem.id + "_errmsg").innerHTML = "";
				document.getElementById(elem.id + "_errmsg").style.visibility = "hidden"; 
			}
		}
	}
	/*if (!isValid) 
	{
		document.getElementById("errormessage").innerHTML = errString;
		document.getElementById("errormessage").style.visibility = "visible";
	}*/
	return isValid;
		
}

function isValidEmail(value) {
    return value.indexOf(".") > 2 && value.indexOf("@") > 0;
}

function isValidNumber(value, number) {
    var elemIsValid = true;
    var stripped = value.replace(/[\(\)\.\-\ ]/g, "");
    if (!(stripped.length == number)) {
        elemIsValid = false;
    }
    if (isNaN(stripped)) {
        elemIsValid = false;
    }
    if (stripped.length == 0) {
        elemIsValid = true;
    }
    return elemIsValid;
}

function FixFlash()
{
	objects = document.getElementsByTagName("object");
	for (var i = 0; i < objects.length; i++)
	{
		objects[i].outerHTML = objects[i].outerHTML;
	}
}





function validateAllSpamBlocker(form, listid, customErrorMsg) {
	var isAllValid = true;
	var isValid = true;
	var errorMsg = "Athugið að nauðsynlegt er að fylla út alla reiti!\n";
	var bliKundeErrorMsg = "";

	for (var i = 0; i < form.elements.length; i++) {
		var elem = form.elements[i];
		if (elem.className.indexOf('reqd') > 0) {
			isValid = true;
			/* 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 if (elem.className.indexOf('ssnoval') > 0) {
					isValid = (elem.value.length == 11);
				} else if (elem.className.indexOf('dropdownval') > 0) {
					isValid = (elem.value != '-- Select --' && elem.value.length != 0);
				} else {
					isValid = (elem.value != '');
				}
				
				if (!isValid) {
					errorMsg = errorMsg  + ' -' + elem.title + '\n';
					elem.style.borderColor = '#FF4A4A';
					elem.style.backgroundColor = '#FDFAD0';
				} else {
					elem.style.borderColor = '';
					elem.style.backgroundColor = '';
				}
			}

			if(!isValid)
				isAllValid = false;			
		}
	}


	if(!isAllValid)
	{
		alert(errorMsg + bliKundeErrorMsg);
	}
	else
	{
		//Insert action hidden field to the form:
		var targetDiv = document.getElementById('theaction');
		targetDiv.innerHTML = '<input type="hidden" name="action" value="process" />';
	}
	return isAllValid;
}
