From b05b17050420d00eba1b0f72593d053c8c16605a Mon Sep 17 00:00:00 2001 From: Denis Ryabov Date: Thu, 13 Mar 2014 13:10:48 +0400 Subject: [PATCH] correct support of utf8 hashtags --- js/twister_formatpost.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/js/twister_formatpost.js b/js/twister_formatpost.js index 47ff029..d413ff7 100644 --- a/js/twister_formatpost.js +++ b/js/twister_formatpost.js @@ -190,7 +190,7 @@ function htmlFormatMsg( msg, output, mentions ) { if( match[0] == "#" ) { output.append($.emotions(msg.substr(0, match.index))); tmp = msg.substr(match.index+1); - var hashtag = _extractUsername(tmp); + var hashtag = _extractHashtag(tmp); if( hashtag.length ) { var hashtagLinkTemplate = $("#hashtag-link-template").clone(true); hashtagLinkTemplate.removeAttr("id"); @@ -225,6 +225,19 @@ function _extractUsername(s) { return username.toLowerCase(); } +// internal function for htmlFormatMsg +function _extractHashtag(s) { + var hashtag = ""; + for( var i = 0; i < s.length; i++ ) { + if( " \n\t.,:/?!".indexOf(s[i]) < 0 ) { + hashtag += s[i]; + } else { + break; + } + } + return hashtag; +} + function escapeHtmlEntities(str) { return str.replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/'/g, '''); }