document.onmousemove = mouseMove; document.onmouseup = mouseUp; var dragObject = null; var mouseOffset = null; function getDocumentSize() { if (document.layers) { documentWidth = window.innerWidth + window.pageXOffset - 20; documentHeight = window.innerHeight + window.pageYOffset - 20; } else if (document.all) { documentWidth = document.documentElement.offsetWidth + document.documentElement.scrollLeft - 20; documentHeight = document.documentElement.offsetHeight + document.documentElement.scrollTop - 20; } else if (document.getElementById && self.innerWidth && (window.pageXOffset>-1)) { documentWidth = self.innerWidth + window.pageXOffset - 20; documentHeight = self.innerHeight + window.pageYOffset - 20; } docSize = new Array(documentWidth,documentHeight); return docSize; } function getMouseOffset(target, ev) { ev = ev || window.event; var docPos = getPosition(target); var mousePos = mouseCoords(ev); return {x:mousePos.x - docPos.x, y:mousePos.y - docPos.y}; } function mouseCoords(ev) { if(ev.pageX || ev.pageY) { return {x:ev.pageX, y:ev.pageY}; } else { coorX=0; coorY=0; if (document.body) { coorX = ev.clientX + document.body.scrollLeft - document.body.clientLeft; coorY = ev.clientY + document.body.scrollTop - document.body.clientTop; } return { x:coorX, y:coorY }; } } function getPosition(object) { var left = 0; var top = 0; while (object.offsetParent) { left += object.offsetLeft; top += object.offsetTop; object = object.offsetParent; } left += object.offsetLeft; top += object.offsetTop; return {x:left, y:top}; } function mouseMove(event) { event = event || window.event; var mousePos = mouseCoords(event); if(dragObject) { dragObject.style.top = (mousePos.y - mouseOffset.y)+'px'; dragObject.style.left = (mousePos.x - mouseOffset.x)+'px'; return false; } } function mouseUp() { dragObject = null; } function makeDraggable(elementName,clickArea) { objectToDrag=getElement(elementName); clickAble = getElement(clickArea); clickAble.onmousedown = function(event) { dragObject = objectToDrag; mouseOffset = getMouseOffset(objectToDrag, event); return false; } } function addElement(parentDiv,divIdName,htmlString,styleCSS,classCSS) { var parent = getElement(parentDiv); if (getElement(parentDiv)) { var newdiv = document.createElement('div'); newdiv.setAttribute('id',divIdName); if (styleCSS) { setStyle(newdiv,styleCSS); } if (classCSS) { newdiv.setAttribute('class',classCSS); } if(htmlString) { newdiv.innerHTML = htmlString; } parent.appendChild(newdiv); } return getElement(divIdName) } function setStyle(object,styleCSS) { var cssSet = styleCSS.split(';'); for (var attribute in cssSet) { var styleSet = cssSet[attribute].split(':'); switch (styleSet[0]) { case 'position': object.style.position=styleSet[1]; break; case 'top': object.style.top=styleSet[1]; break; case 'left': object.style.left=styleSet[1]; break; case 'width': object.style.width=styleSet[1]; break; case 'height': object.style.height=styleSet[1]; break; } } } function removeElement(parentDiv,divIdName) { if (getElement(parentDiv)&&getElement(divIdName)) { var parent = getElement(parentDiv); var olddiv = getElement(divIdName); parent.removeChild(olddiv); } } function createPopup(div,title,width,height,dragable,posX,posY) { var docSize = getDocumentSize(); if (!getElement(div)) { if (!posY) { posY=Math.round((docSize[1]/2)-(height/2)); } if (!posX) { posX=Math.round((docSize[0]/2)-(width/2)); } addElement('container',div,'
'+title+'