@@ -6,9 +6,14 @@ var db = module.parent.require('./database');
66var SocketPlugins = module . parent . require ( './socket.io/plugins' ) ;
77var websockets = module . parent . require ( './socket.io/index' ) ;
88var async = require ( 'async' ) ;
9- var emojiParser = require ( '../nodebb-plugin-emoji-extended/lib/parser/main' ) ;
9+ var emojiParser = require ( 'nodebb-plugin-emoji/build/lib/parse' ) ;
10+ var emojiTable = require ( 'nodebb-plugin-emoji/build/emoji/table.json' ) ;
1011var reactions = { } ;
1112
13+ function parse ( name ) {
14+ return emojiParser . buildEmoji ( emojiTable [ name ] , '' ) ;
15+ }
16+
1217reactions . init = function ( params , callback ) {
1318
1419 SocketPlugins . reactions = {
@@ -17,11 +22,8 @@ reactions.init = function (params, callback) {
1722 return callback ( new Error ( '[[error:not-logged-in]]' ) ) ;
1823 }
1924
20- var emojiList = Object . keys ( emojiParser . activeList ) . map ( function ( item ) {
21- return emojiParser . activeList [ item ] . id ;
22- } ) ;
2325
24- if ( emojiList . indexOf ( data . reaction ) === - 1 ) {
26+ if ( ! emojiTable [ data . reaction ] ) {
2527 return callback ( new Error ( 'Invalid reaction' ) ) ;
2628 }
2729
@@ -54,11 +56,7 @@ reactions.init = function (params, callback) {
5456 return callback ( new Error ( '[[error:not-logged-in]]' ) ) ;
5557 }
5658
57- var emojiList = Object . keys ( emojiParser . activeList ) . map ( function ( item ) {
58- return emojiParser . activeList [ item ] . id ;
59- } ) ;
60-
61- if ( emojiList . indexOf ( data . reaction ) === - 1 ) {
59+ if ( ! emojiTable [ data . reaction ] ) {
6260 return callback ( new Error ( 'Invalid reaction' ) ) ;
6361 }
6462
@@ -109,7 +107,7 @@ reactions.init = function (params, callback) {
109107 reactionCount : results . reactionCount ,
110108 totalReactions : results . totalReactions ,
111109 usernames : results . usernames ,
112- reactionImage : emojiParser . parse ( ':' + data . reaction + ':' ) . replace ( 'title="' + data . reaction + '"' , '' )
110+ reactionImage : parse ( data . reaction ) ,
113111 } ) ;
114112 callback ( ) ;
115113 } ) ;
@@ -198,7 +196,7 @@ reactions.getReactions = function (data, callback) {
198196 return user . username
199197 } ) . join ( ', ' ) ;
200198
201- var reactionImage = emojiParser . parse ( ':' + reaction . reaction + ':' ) . replace ( 'title="' + reaction + '"' , '' ) ;
199+ var reactionImage = parse ( reaction . reaction ) ;
202200 var reacted = reaction . reacted ? 'reacted' : '' ;
203201 reactionInfo = reactionInfo + '<span class="reaction ' + reacted + '" component="post/reaction" data-pid="' + post . pid + '" data-reaction="' + reaction . reaction + '" title="' + usernames + '">' + reactionImage + '<span class="reaction-emoji-count" data-count="' + reaction . memberCount + '"></span></span>' ;
204202 } ) ;
0 commit comments