@@ -5,6 +5,8 @@ var tmi = require('./tmi'),
55 regexUtils = require ( '../helpers/regex' ) ,
66 blacklistedEmoji = require ( '../helpers/emoji-blacklist.json' ) ;
77
8+ var imageTest = new RegExp ( '(https?:\/\/.)([a-z\-_0-9\/\:\.\%\+]*\.(jpg|jpeg|png|gif|gifv|webm))' , 'i' ) ;
9+
810var badge = exports . badge = function ( type , name , description , action ) {
911 var classes = type + '' + ( bttv . settings . get ( 'alphaTags' ) ? ' alpha' + ( ! bttv . settings . get ( 'darkenedMode' ) ? ' invert' : '' ) : '' ) + ' badge' ;
1012 return '<div class="' + classes + '" title="' + description + '"' + ( action ? ' data-click-action="' + action + '"' : '' ) + '>' + name + '</div> ' ;
@@ -41,7 +43,8 @@ var linkify = exports.linkify = function(message) {
4143 if ( / \x02 / . test ( e ) ) return e ;
4244 if ( e . indexOf ( '@' ) > - 1 && ( e . indexOf ( '/' ) === - 1 || e . indexOf ( '@' ) < e . indexOf ( '/' ) ) ) return '<a href="mailto:' + e + '">' + e + '</a>' ;
4345 var link = e . replace ( / ^ (? ! (?: h t t p s ? : \/ \/ | m a i l t o : ) ) / i, 'http://' ) ;
44- return '<a href="' + link + '" target="_blank">' + e + '</a>' ;
46+ var isImage = bttv . settings . get ( 'chatImagePreview' ) === true && imageTest . test ( e ) ;
47+ return '<a href="' + link + '" ' + ( isImage ? 'class="chat-preview" ' : '' ) + 'target="_blank">' + e + '</a>' ;
4548 } ) ;
4649} ;
4750
@@ -214,15 +217,6 @@ var bttvMessageTokenize = exports.bttvMessageTokenize = function(sender, message
214217 for ( var i = 0 ; i < tokenizedString . length ; i ++ ) {
215218 var piece = tokenizedString [ i ] ;
216219
217- if ( bttv . settings . get ( 'chatImagePreview' ) === true ) {
218- var imageTest = new RegExp ( '(https?:\/\/.)([a-z\-_0-9\/\:\.\%\+]*\.(jpg|jpeg|png|gif|gifv|webm))' , 'i' ) ;
219- if ( imageTest . test ( piece ) ) {
220- piece = bttv . chat . imagePreview ( piece ) ;
221- tokenizedString [ i ] = piece ;
222- continue ;
223- }
224- }
225-
226220 var test = piece . replace ( / ( ^ [ ~ ! @ # $ % \^ & \* \( \) ] + | [ ~ ! @ # $ % \^ & \* \( \) ] + $ ) / g, '' ) ;
227221 var emote = null ;
228222
0 commit comments