﻿function AddEvent(obj, type, fn) {
	if(obj.attachEvent) {
		obj['e' + type + fn] = fn;
		obj[type + fn] = function(){ obj['e'+type+fn](window.event); };
		obj.attachEvent('on' + type, obj[type + fn]);
	} else
		obj.addEventListener(type, fn, false);
}
function RemoveEvent(obj, type, fn) {
	if(obj.detachEvent) {
		obj.detachEvent('on' + type, obj[type + fn]);
		obj[type + fn] = null;
	} else
		obj.removeEventListener(type, fn, false);
}

function OnLoadLayoutAdjustment() {
	OnResizeLayoutAdjustment();
	setTimeout("OnResizeLayoutAdjustment();", 0);
}
function OnResizeLayoutAdjustment() {
	document.getElementById('tblLayout').style.height = (document.body.clientHeight > 500) ? document.body.clientHeight + 'px' : '500px';
	document.getElementById('dvTextContents').style.height = ( parseInt(document.getElementById('tblLayout').style.height) - 115 ) + 'px';
}

function Location(x, y) {
    this.x = x; this.y = y;
}
function getLocation(o) {
    var oX = 0; var oY = 0;
    if(o.offsetParent) {
        while(1) {
            oX += o.offsetLeft; oY += o.offsetTop;
            if(!o.offsetParent) break;
            o = o.offsetParent;
            if(o.style.position == "absolute" || o.style.position == "relative") break;
        }
    } else if(o.x) {
        oX += o.x; oY += o.y;
    }
    return new Location(oX, oY);
}

var divLangSelection;
function ShowLanguageSelection(w) {
	if(typeof(tmrHideLangSel) != 'undefined')
		clearTimeout(tmrHideLangSel);
	divLangSelection = document.getElementById('divLanguageSelection');
	divLangSelection.style.display = 'block';
	divLangSelection.style.top = ( w.offsetTop + w.offsetHeight ) + 'px';
	divLangSelection.style.left = w.offsetLeft + 2 + 'px';
}
function HideLanguageSelection() {
	if(typeof(tmrHideLangSel) != 'undefined')
		clearTimeout(tmrHideLangSel);
	tmrHideLangSel = setTimeout("document.getElementById('divLanguageSelection').style.display='none';", 250);
}
DontHideCallJumper = false;
function JumpToCall(w) {
	var a = getLocation(w);
	document.getElementById('divJumpToCall').style.display = 'block';
	document.getElementById('divJumpToCall').style.top = ( a.y + w.offsetHeight ) + 'px';
	document.getElementById('divJumpToCall').style.left = ( a.x + 20 ) + 'px';
	document.getElementById('btnGo').value = staticBtnGo;
	document.getElementById('txtTargetCallNo').select();
	document.getElementById('txtTargetCallNo').focus();
	DontHideCallJumper = true; // if this is not set to true the below event will instantly hide the "popup"
	AddEvent(document, 'click', HideJumpToCall);
}
function HideJumpToCall() {
	if(!DontHideCallJumper) {
		document.getElementById('divJumpToCall').style.display = 'none';
		RemoveEvent(document, 'click', HideJumpToCall);
	}
}
function DoTheJump() {
	if(document.getElementById('txtTargetCallNo').value != null && document.getElementById('txtTargetCallNo').value != '') {
		setTimeout('window.location=\'ViewCall.aspx?id=' + document.getElementById('txtTargetCallNo').value + '\'', 0);
	}
}

AddEvent(window, 'load', OnLoadLayoutAdjustment);
AddEvent(window, 'resize', OnResizeLayoutAdjustment);