Guest User

Untitled

a guest
Jun 18th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. public function filterMsg(tempM:String):ParagraphElement {
  2.     var p:ParagraphElement = new ParagraphElement();
  3.     var found:Array = new Array();
  4.     var trueIndex:int;
  5.     for (var i:String in emoticons) { // Loop through list of patterns, save locations of collisions
  6.         var m:String = tempM;
  7.         trueIndex = 0;
  8.         while (m.indexOf(emoticons[i].pattern) >= 0) {
  9.             var o:ObjectProxy = new ObjectProxy();
  10.             o.entry = m.indexOf(emoticons[i].pattern) + trueIndex;
  11.             o.pattern = emoticons[i].pattern;
  12.             found.push(o);
  13.             m = m.slice(m.indexOf(emoticons[i].pattern) + o.pattern.length, m.length - 1);
  14.             trueIndex = o.entry + o.pattern.length;
  15.         }
  16.     }
  17.     found.sortOn("entry", Array.NUMERIC);
  18.     var pos:int = 0;
  19.     var s:SpanElement;
  20.     for (var f:String in found) { // Parsing message based on filters found in string
  21.         if((found[f].entry - pos) > 0) {
  22.             s = newSpanElement(tempM.slice(pos, found[f].entry));
  23.             p.addChild(s);
  24.         }
  25.         var img:InlineGraphicElement = newInlineGraphicElement(mediaUrl + getEmoticonByPattern(found[f].pattern).url);
  26.         pos = found[f].entry + found[f].pattern.length;
  27.         p.addChild(img);
  28.     }
  29.     if (pos < tempM.length - 1) { // Adding any remaining text to span
  30.         s = newSpanElement(tempM.slice(pos, tempM.length));
  31.         p.addChild(s);
  32.     }
  33.     return p;
  34. }
Add Comment
Please, Sign In to add comment