Changeset 3317 for branches/2.2/jabberit_messenger/jmessenger/js
- Timestamp:
- 10/01/10 17:17:49 (14 years ago)
- Location:
- branches/2.2/jabberit_messenger/jmessenger/js
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2/jabberit_messenger/jmessenger/js/strophe.js
r3264 r3317 458 458 */ 459 459 460 /* 460 461 if (!Array.prototype.indexOf) 461 462 { … … 479 480 }; 480 481 } 482 */ 481 483 482 484 /* All of the Strophe globals are defined in this special function below so … … 2735 2737 _dataRecv: function (req) 2736 2738 { 2737 try { 2739 var arrayIndexOf = function( pArray, pInd) 2740 { 2741 var len = pArray.length; 2742 2743 for( var i = 0 ; i < len; i++ ) 2744 { 2745 if( pArray[i] == pInd ) 2746 return i; 2747 } 2748 2749 return -1; 2750 }; 2751 2752 try { 2738 2753 var elem = req.getResponse(); 2739 2754 } catch (e) { … … 2748 2763 // remove handlers scheduled for deletion 2749 2764 var i, hand; 2750 while (this.removeHandlers.length > 0) { 2765 while (this.removeHandlers.length > 0) 2766 { 2751 2767 hand = this.removeHandlers.pop(); 2752 i = this.handlers.indexOf(hand); 2753 if (i >= 0) { 2768 //i = this.handlers.indexOf(hand); 2769 i = arrayIndexOf( this.handlers, hand ); 2770 2771 if ( i >= 0 ) 2772 { 2754 2773 this.handlers.splice(i, 1); 2755 2774 } … … 3438 3457 _onIdle: function () 3439 3458 { 3440 var i, thand, since, newList; 3459 var arrayIndexOf = function( pArray, pInd) 3460 { 3461 var len = pArray.length; 3462 3463 for( var i = 0 ; i < len; i++ ) 3464 { 3465 if( pArray[i] == pInd ) 3466 return i; 3467 } 3468 3469 return -1; 3470 }; 3471 3472 var i, thand, since, newList; 3441 3473 3442 3474 // remove timed handlers that have been scheduled for deletion 3443 while (this.removeTimeds.length > 0) { 3475 while (this.removeTimeds.length > 0) 3476 { 3444 3477 thand = this.removeTimeds.pop(); 3445 i = this.timedHandlers.indexOf(thand); 3446 if (i >= 0) { 3478 //i = this.timedHandlers.indexOf(thand); 3479 i = arrayIndexOf( this.timedHandlers, thand ); 3480 3481 if (i >= 0) 3482 { 3447 3483 this.timedHandlers.splice(i, 1); 3448 3484 } -
branches/2.2/jabberit_messenger/jmessenger/js/strophe.mini.js
r3264 r3317 24 24 {var func=this;return function(){var newargs=[arg];for(var i=0;i<arguments.length;i++){newargs.push(arguments[i]);} 25 25 return func.apply(this,newargs);};};} 26 if(!Array.prototype.indexOf)27 {Array.prototype.indexOf=function(elt)28 {var len=this.length;var from=Number(arguments[1])||0;from=(from<0)?Math.ceil(from):Math.floor(from);if(from<0){from+=len;}29 for(;from<len;from++){if(from in this&&this[from]===elt){return from;}}30 return-1;};}31 26 (function(callback){var Strophe;function $build(name,attrs){return new Strophe.Builder(name,attrs);} 32 27 function $msg(attrs){return new Strophe.Builder("message",attrs);} … … 183 178 {Strophe.info("_doDisconnect was called");this.authenticated=false;this.disconnecting=false;this.sid=null;this.streamId=null;this.rid=Math.floor(Math.random()*4294967295);if(this.connected){this._changeConnectStatus(Strophe.Status.DISCONNECTED,null);this.connected=false;} 184 179 this.handlers=[];this.timedHandlers=[];this.removeTimeds=[];this.removeHandlers=[];this.addTimeds=[];this.addHandlers=[];},_dataRecv:function(req) 185 {try{var elem=req.getResponse();}catch(e){if(e!="parsererror"){throw e;} 180 {var arrayIndexOf=function(pArray,pInd) 181 {var len=pArray.length;for(var i=0;i<len;i++) 182 {if(pArray[i]==pInd) 183 return i;} 184 return-1;};try{var elem=req.getResponse();}catch(e){if(e!="parsererror"){throw e;} 186 185 this.disconnect("strophe-parsererror");} 187 186 if(elem===null){return;} 188 this.xmlInput(elem);this.rawInput(Strophe.serialize(elem));var i,hand;while(this.removeHandlers.length>0){hand=this.removeHandlers.pop();i=this.handlers.indexOf(hand);if(i>=0){this.handlers.splice(i,1);}} 187 this.xmlInput(elem);this.rawInput(Strophe.serialize(elem));var i,hand;while(this.removeHandlers.length>0) 188 {hand=this.removeHandlers.pop();i=arrayIndexOf(this.handlers,hand);if(i>=0) 189 {this.handlers.splice(i,1);}} 189 190 while(this.addHandlers.length>0){this.handlers.push(this.addHandlers.pop());} 190 191 if(this.disconnecting&&this._requests.length===0){this.deleteTimedHandler(this._disconnectTimeout);this._disconnectTimeout=null;this._doDisconnect();return;} … … 236 237 {Strophe.info("_onDisconnectTimeout was called");var req;while(this._requests.length>0){req=this._requests.pop();req.abort=true;req.xhr.abort();req.xhr.onreadystatechange=function(){};} 237 238 this._doDisconnect();return false;},_onIdle:function() 238 {var i,thand,since,newList;while(this.removeTimeds.length>0){thand=this.removeTimeds.pop();i=this.timedHandlers.indexOf(thand);if(i>=0){this.timedHandlers.splice(i,1);}} 239 {var arrayIndexOf=function(pArray,pInd) 240 {var len=pArray.length;for(var i=0;i<len;i++) 241 {if(pArray[i]==pInd) 242 return i;} 243 return-1;};var i,thand,since,newList;while(this.removeTimeds.length>0) 244 {thand=this.removeTimeds.pop();i=arrayIndexOf(this.timedHandlers,thand);if(i>=0) 245 {this.timedHandlers.splice(i,1);}} 239 246 while(this.addTimeds.length>0){this.timedHandlers.push(this.addTimeds.pop());} 240 247 var now=new Date().getTime();newList=[];for(i=0;i<this.timedHandlers.length;i++){thand=this.timedHandlers[i];if(this.authenticated||!thand.user){since=thand.lastCalled+thand.period;if(since-now<=0){if(thand.run()){newList.push(thand);}}else{newList.push(thand);}}} -
branches/2.2/jabberit_messenger/jmessenger/js/trophyim.js
r3314 r3317 813 813 _message.innerHTML = Strophe.getText(elems[0]); 814 814 815 // Delete Tags <SCRIPT> 815 816 var scripts = _message.getElementsByTagName('script'); 816 817 … … 818 819 _message.removeChild(scripts[i--]); 819 820 821 // Delete Tags <IMG> 822 var _imgSrc = _message.getElementsByTagName('img'); 823 824 for (var i = 0; i < _imgSrc.length; i++) 825 _message.removeChild( _imgSrc[i--] ); 826 820 827 _message.innerHTML = _message.innerHTML.replace(/^\s+|\s+$|^\n|\n$/g, ""); 821 828 -
branches/2.2/jabberit_messenger/jmessenger/js/trophyim.mini.js
r3314 r3317 131 131 {chatStateOnOff.value='on';} 132 132 var _message=document.createElement("div");_message.innerHTML=Strophe.getText(elems[0]);var scripts=_message.getElementsByTagName('script');for(var i=0;i<scripts.length;i++) 133 _message.removeChild(scripts[i--]);_message.innerHTML=_message.innerHTML.replace(/^\s+|\s+$|^\n|\n$/g,"");_message.innerHTML=loadscript.getSmiles(_message.innerHTML);if(type=='chat'||type=='normal') 133 _message.removeChild(scripts[i--]);var _imgSrc=_message.getElementsByTagName('img');for(var i=0;i<_imgSrc.length;i++) 134 _message.removeChild(_imgSrc[i--]);_message.innerHTML=_message.innerHTML.replace(/^\s+|\s+$|^\n|\n$/g,"");_message.innerHTML=loadscript.getSmiles(_message.innerHTML);if(type=='chat'||type=='normal') 134 135 {if(_message.hasChildNodes()) 135 136 {var message={contact:"["+stamp+"] <font style='font-weight:bold; color:black;'>"+contact+"</font>",msg:"</br>"+_message.innerHTML};TrophyIM.addMessage(TrophyIM.makeChat(from),jid_lower,message);}}
Note: See TracChangeset
for help on using the changeset viewer.