var openedToolBox = new Array();function assignNewToolBox() {var buttonID = arguments[0];var targetID = arguments[1];var startScript = arguments[2];var closeScript = arguments[3];var buttonElement = document.getElementById(buttonID);var targetElement = document.getElementById(targetID);var closeButton   = document.getElementById(targetID+"Close");buttonElement.onclick = triggerOpenToolBox;closeButton.onclick   = triggerCloseToolBox;targetElement.style.display = 'none';function triggerOpenToolBox(){openToolBox(targetID);if(isEmpty(startScript)) eval(startScript);}function triggerCloseToolBox(){closeToolBox(targetID);if(isEmpty(closeScript)) eval(closeScript);}}function LinkToImmediateToolBox() {var targetID = arguments[0];var closeScript = arguments[1];var targetElement = document.getElementById(targetID);var toolBoxTitle  = document.getElementById(targetID+"Title");var closeButton   = document.getElementById(targetID+"Close");var closeButton2  = document.getElementById(targetID+"Close2");var message       = document.getElementById(targetID+"Message");var errorMessage  = document.getElementById(targetID+"ErrorMessage");var defaultTitle = toolBoxTitle.innerHTML;/* initializing */if(!targetElement.initialized) {closeButton.onclick = triggerCloseToolBox;closeButton2.onclick = triggerCloseToolBox;targetElement.initialized = true;document.onkeypress = keyCapture;}/* end of it *//* reinititalizing */targetElement.style.display = 'none';/* end of it*/this.open = function() {toolBoxTitle.innerHTML = defaultTitle;message.innerHTML = '';errorMessage.innerHTML = '';if(arguments[0]!=null) toolBoxTitle.innerHTML = arguments[0];if(arguments[1]!=null) errorMessage.innerHTML = arguments[1];if(arguments[2]!=null) message.innerHTML = arguments[2];openToolBox(targetID);}this.autoOpen = function() {if(!isEmpty(message.innerHTML)||!isEmpty(errorMessage.innerHTML)) openToolBox(targetID);}this.close = function() {triggerCloseToolBox();}function triggerCloseToolBox(){closeToolBox(targetID);if(isEmpty(closeScript)) eval(closeScript);}}function keyCapture(evt){var key = (window.event)? event.keyCode:evt.which;if(key == '13'){if(document.getElementById('toolBox:commonDialogToolBox').style.display != 'none') {closeToolBox('toolBox:commonDialogToolBox');} else {closeToolBox('toolBox:alertDialogToolBox');}}}function openToolBox() {var targetID = arguments[0];var targetElement = document.getElementById(targetID);targetElement.style.visibility = 'hidden';targetElement.style.display = 'block';targetElement.style.zIndex = 201;openedToolBox[openedToolBox.length] = targetID;if(openedPopMenu) openedPopMenu.style.display = 'none';pageLock.lock();repositionToolBox();targetElement.style.visibility = 'visible';}function closeToolBox() {var targetID = arguments[0];var targetElement = document.getElementById(targetID);if(openedToolBox.length>0) {openedToolBox.pop();}targetElement.style.display = 'none';if(openedToolBox.length==0) {pageLock.unlock();}}function assignNewToolTipForm() {assignNewToolBox(arguments[0],arguments[1],arguments[2],arguments[3]);}function repositionToolBox() {var target;for(var i=0; i<openedToolBox.length; i++) {target = document.getElementById(openedToolBox[i]);target.style.top = '50%';target.style.left = '50%';target.style.right = 'auto';target.style.bottom = 'auto';var vp = getElementViewPort(target);var newX = vp['y']-(vp['height']/2)-100;var newY = vp['x']-(vp['width']/2)-100;if(newX<20) newX = 20;if(newY<20) newY = 20;target.style.top = newX+'px';target.style.left = newY+'px';}	}function getElementViewPort(that) {var vp = new Array(4);if (typeof that.clip !== "undefined") {vp['width'] = that.clip.width;vp['height'] = that.clip.height;} else if (that.style.pixelWidth) {vp['width'] = that.style.pixelWidth;vp['height'] = that.style.pixelHeight;} else {vp['width'] = that.offsetWidth;vp['height'] = that.offsetHeight;}if(typeof that.offsetTop !== "undefined") {vp['x'] = that.offsetLeft;vp['y'] = that.offsetTop;} else {vp['x'] = that.clientLeft;vp['y'] = that.clientTop;}return vp;}