var messageManager =null; var jscontent ="messageManager.openWindow();"; var imgID = "messageIconID"; function MessageManager(){ this.messagejsp =w2mconf.webroot+"jsp/session/sendmessage.jsp"; this.title=""; this.enabled=true; } messageManager = new MessageManager(); MessageManager.prototype.sendMessageTo = function (id,login) { var url = this.messagejsp +"?domainmessage=true&domainuserid=" + id+"&abc.login="+login; publishIFrame2(this.title, url ,400,250 ); }; MessageManager.prototype.startMessage= function (){ setTimeout("messageManager.getMessage()",1000); }; MessageManager.prototype.startMessageLong= function (){ setTimeout("messageManager.getMessage()",5000); }; function MessageResponseReader(){ this.readyListener = readyListener ; function readyListener(requesterObject) { var req = requesterObject.requester ; // setTimeout("messageManager.getMessage()",5000); if (req.status == 200) { messageManager.parseMessages(req); } else { messageManager.removeMessageIcon(); // alert ( "Not able to retrieve description" ); } } } MessageManager.prototype.messageIconAlreadyDisplay = function (){ var ret = false ; var element = document.getElementById(imgID); if(element !== null && element){ ret =true ; } return ret ; }; MessageManager.prototype.removeMessageIcon = function (){ var noneNode = document.createTextNode(" "); replaceDIVNode(document,'messagediv',noneNode); }; MessageManager.prototype.notifyUpdate = function (){ messageManager.startMessage(); }; messageManager.title="Send a message to the session creator"; MessageManager.prototype.openWindow= function (){ publishIFrame2('Receiving message','/jsp/session/instantmessage.jsp',400,400 ); messageManager.startMessageLong(); }; MessageManager.prototype.getMessage = function (){ if(this.enabled===true){ var requesterObject=applimediaRequestManager.createRequest(); requesterObject.caller = new MessageResponseReader() ; var param = 'abc.service=InstantMessagingSessionService'; requesterObject.sendData('/InstantMessageResponseServlet',param); messageManager.startMessageLong(); } }; MessageManager.prototype.getServiceKey = function (){ return "InstantMessagingSessionService"; }; MessageManager.prototype.parseMessages = function (req) { if(req.responseXML){ response = req.responseXML.documentElement; if(response){ var endNode = response.getElementsByTagName("end"); if(endNode && endNode.length > 0){ return ; } var displayNodeArray = response.getElementsByTagName("displayModeKey"); if(displayNodeArray && displayNodeArray.length == 1 && displayNodeArray[0].firstChild.nodeValue=="displayModeJavascript"){ var contentNode = response.getElementsByTagName("text"); var content = contentNode[0].firstChild.nodeValue; content = tool.convert(content); var fromNode = response.getElementsByTagName("from"); var from = fromNode[0].firstChild.nodeValue; tool.alert("Message from "+ from +"\n" +content); } else if(messageManager.messageIconAlreadyDisplay()==false){ var imgNode =null; imgNode = document.createElement("img"); var d = domUtil; d.addAttribute(imgNode,"id",imgID); d.addAttribute(imgNode,"name",imgID); d.addAttribute(imgNode,"src","/img/mymessage.gif"); d.addAttribute(imgNode,"title","Receiving file"); d.addAttribute(imgNode,"class","classicsmallimg20x20"); d.addAttribute(imgNode,"onclick",jscontent); replaceDIVNode(document,'messagediv',imgNode); imgNode.src = imgNode.src; openReceiveMenu(); } } } else{ } }; messageManager.startMessage();