client/src/views/channel.js
function(word) {
        var re,
            parsed = false,
            network = this.model.get('network');

        if (!network) {
            return;
        }

        re = new RegExp('(^|\\s)([' + _.escapeRegExp(network.get('channel_prefix')) + '][^ .,\\007]+)', 'g');

        if (!word.match(re)) {
            return parsed;
        }

        parsed = word.replace(re, function (m1, m2) {
            return m2 + '<a class="chan" data-channel="' + _.escape(m1.trim()) + '">' + _.escape(m1.trim()) + '</a>';
        });

        return parsed;
    }
function(word) {
        var re,
            parsed = false,
            network = this.model.get('network');

        if (!network) {
            return;
        }

        re = new RegExp('(^|\\s)([' + _.escapeRegExp(network.get('channel_prefix')) + '][^ .,\\007]+)', 'g');

        if (!word.match(re)) {
            return parsed;
        }

        parsed = word.replace(re, function (m1, m2) {
            return m2 + '<a class="chan" data-channel="' + _.escape(m1.trim()) + '">' + _.escape(m1.trim()) + '</a>';
        });

        return parsed;
    }
function ( word ) { var re , parsed = false , network = this . model . get ( 'network' ) ; if ( ! network ) { return ; } re = new RegExp ( '(^|\\s)([' + _ . escapeRegExp ( network . get ( 'channel_prefix' ) ) + '][^ .,\\007]+)' , 'g' ) ; if ( ! word . match ( re ) ) { return parsed ; } parsed = word . replace ( re , function ( m1 , m2 ) { return m2 + '<a class="chan" data-channel="' + _ . escape ( m1 . trim ( ) ) + '">' + _ . escape ( m1 . trim ( ) ) + '</a>' ; } ) ; return parsed ; }
Make channels clickable
Make channels clickable