// Generelle Javascript funktioner (alle sider)

function toPrinter() {
	window.print();
}

function toMail() {
	openDialog('emailTipBox','<b>Tip en ven</b>','/index.asp?act=dialog/tip',190,270,false);
}

function textLimit(myObj,anslag) {
	var myObjText = myObj.innerText;
	if (myObjText) {
		if (myObjText.length > anslag) {
		    myObj.innerText = myObjText.substr(0,anslag);
		}
	}
}

function constrain(str,n){
  if(str.length > n){
    var s = str.substr(0, n);
    var words = s.split('');
    words[words.length-1] = '';
    str = words.join('');
  }
return str;
}

// dialogObject og dialog popups

function openDialog(myID,myTitle,mySrc,myWidth,myHeight,myPlace	) {
	var IE=document.all;
	var dialogArea = document.getElementById('dialogArea');

	if (dialogArea) {
		// højde og bredde
		if (!myWidth) {myWidth = 300}
		if (!myHeight) {myHeight = 200}

		// placering midt på siden
		var iWidth = (!IE)?window.innerWidth:document.documentElement.clientWidth;
		var iHeight = (!IE)?window.innerHeight:document.documentElement.clientHeight;

		// alm. javascript
//		iWidth = Math.round((iWidth-myWidth)/2)+document.body.scrollLeft;
//		iHeight = Math.round((iHeight-myHeight)/2)+document.body.scrollTop;

		// xhtml strict
		iWidth = (IE)?Math.round((iWidth-myWidth)/2)+document.documentElement.scrollLeft:Math.round((iWidth-myWidth)/2)+window.pageXOffset;
		iHeight = (IE)?Math.round((iHeight-myHeight)/2)+document.documentElement.scrollTop:Math.round((iHeight-myHeight)/2)+window.pageYOffset;

		var thisDialog = document.getElementById(myID);
		var changePlace = false;
		var myHeader = 	'<a href=\"JavaScript:closeDialog(\''+myID+'\');\">'+
		'<img src=\"/gfx/ikon-luk.gif\" width=\"12\" height=\"12\" hspace=\"2\" vspace=\"2\" border=\"0\" alt=\"luk dialogvinduet\" align=\"right\" /></a>'+
		'<h1 class=\"dialogHeader\">'+myTitle+'</h1><hr class=\"hr\" />';

		if (!thisDialog) {
			dialogArea.innerHTML = dialogArea.innerHTML + '<div id=\"'+myID+'\" style=\"visibility: visible; position: absolute; top: '+iHeight+'px; left: '+iWidth+'px; width: '+myWidth+'px; height: '+myHeight+'px; z-index: 1001;\" class=\"dialogBox\">'+
			'</div>';
			var thisDialog = document.getElementById(myID);
			changePlace = true;
		}

		// opdater og vis dialogboksen
		var thisStyle = thisDialog.style;
		thisStyle.visibility = 'visible';
		thisStyle.zIndex = '1001';
		thisStyle.width = myWidth+'px';
		thisStyle.height = myHeight+'px';
		// placering på siden
		if (changePlace) {
			if (myPlace) {
				var myLeft = getOffset(myPlace,'left');
				var myTop = getOffset(myPlace,'top');
				if (IE) {
					thisStyle.left = (myLeft-Math.round(myWidth/3))+'px';
					thisStyle.top = (myTop)+'px';
				} else {
					thisStyle.left = (myLeft-Math.round(myWidth/3))+'px';
					thisStyle.top = (myTop)+'px';
				}
			}
			else {
				thisStyle.left = iWidth+'px';
				thisStyle.top = iHeight+'px';
			}
		}
		thisDialog.innerHTML = myHeader;

		// opdater indhold
		if (mySrc) {
			var re = new RegExp("[\.](asp)[\?]");
			if (re.test(mySrc)) {
				// mySrc er et link til fil; opret iframe med dokumentet
				if (IE) {
					thisDialog.innerHTML = thisDialog.innerHTML+
					'<iframe frameborder=\"0\" width=\"'+(myWidth-2)+'\" height=\"'+(myHeight-30)+'\" src=\"'+
					mySrc+'\" class=\"borderless\" scrolling=\"no\"></iframe>';
				} else {
					thisDialog.innerHTML = thisDialog.innerHTML+
					'<iframe frameborder=\"0\" width=\"'+(myWidth-2)+'\" height=\"'+(myHeight-30)+'\" src=\"'+
					mySrc+'\" class=\"borderless\" scrolling=\"no\"></iframe>';
				}
			}
			else {
				// mySrc er en string; fremvis
				thisDialog.innerHTML = thisDialog.innerHTML+'<br>'+mySrc;
			}
			// fade out main tekst
			changeOpac(60,'mainSiteArea');
		}
	}
	return false;
}

function closeDialog(myObj) {
	var myObj = document.getElementById(myObj);
	var IE = document.all;
	if (myObj) {
		myObj.style.visibility = 'hidden';
		myObj.style.zIndex = '-100';
		myObj.innerHTML = '';
		// fade tilbage tekst
		changeOpac(100,'mainSiteArea');
	}
}

function selfClose(myObj) {
	var myObj = window.parent.document.getElementById(myObj)
	var IE = document.all;
	if (myObj) {
		myObj.style.visibility = 'hidden';
		myObj.style.zIndex = '-100';
		myObj.innerHTML = '';
	}
}

function flip(id,on,str) {
	showL = document.getElementById('textlayer');
	id = document.getElementById(id);
	if (on) {
		showL.style.visibility = 'visible';
		showL.innerHTML = str;
		showL.style.pixelLeft = getOffset(id,'left')+15;
		showL.style.pixelTop = getOffset(id,'top')+2;
	}
	else {
		showL.innerHTML = "";
		showL.style.visibility = 'hidden';

		}
}

function getOffset(obj, dim) {
	if(dim=="left") {
		oLeft = obj.offsetLeft;
		while(obj.offsetParent!=null) {
		oParent = obj.offsetParent ;
		oLeft += oParent.offsetLeft ;
		obj = oParent ;
	}
		return oLeft
	}else if(dim=="top"){
		oTop = obj.offsetTop;
		while(obj.offsetParent!=null) {
		oParent = obj.offsetParent;
		oTop += oParent.offsetTop;
		obj = oParent ;
	}
		return oTop;
	}else{
		alert("Error: invalid offset dimension '" + dim + "' in getOffset()");
		return false;
	}

}

function getElementHeight(Elem) {
	if (ns4) {
		var elem = getObjNN4(document, Elem);
		return elem.clip.height;
	} else {
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
		if (op5) {
			xPos = elem.style.pixelHeight;
		} else {
			xPos = elem.offsetHeight;
		}
		return xPos;
	}
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function shiftOpacity(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    if(document.getElementById(id).style.opacity == 0) {
        opacity(id, 0, 100, millisec);
    } else {
        opacity(id, 100, 0, millisec);
    }
}

 
function mailLink(user,domain) {
	myStr = "<a h" + "ref='mai" + "lto:" + user + "@" + domain + "'>" + user + "@" + domain + "</" + "a>";
	document.write(myStr);
}

