diff options
author | =Corey Hulen <corey@hulen.com> | 2015-09-17 09:21:56 -0700 |
---|---|---|
committer | =Corey Hulen <corey@hulen.com> | 2015-09-17 09:21:56 -0700 |
commit | 9b5198c69c01ff11b0977282b61cf2222ef2f2b1 (patch) | |
tree | a5179226ff013f082a6629dbf888454c53611383 /web/react/components/post_body.jsx | |
parent | 51c3445e694e68fdecd809f17fbaa64751e5931c (diff) | |
parent | 3edd8dbdf65e0b7be422a46328cb85482aa78f69 (diff) | |
download | chat-9b5198c69c01ff11b0977282b61cf2222ef2f2b1.tar.gz chat-9b5198c69c01ff11b0977282b61cf2222ef2f2b1.tar.bz2 chat-9b5198c69c01ff11b0977282b61cf2222ef2f2b1.zip |
Merge branch 'master' into PLT-92
Diffstat (limited to 'web/react/components/post_body.jsx')
-rw-r--r-- | web/react/components/post_body.jsx | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/web/react/components/post_body.jsx b/web/react/components/post_body.jsx index df4ed3d57..3be615bb9 100644 --- a/web/react/components/post_body.jsx +++ b/web/react/components/post_body.jsx @@ -17,19 +17,42 @@ export default class PostBody extends React.Component { const linkData = Utils.extractLinks(this.props.post.message); this.state = {links: linkData.links, message: linkData.text}; } + + getAllChildNodes(nodeIn) { + var textNodes = []; + + function getTextNodes(node) { + textNodes.push(node); + + for (var i = 0, len = node.childNodes.length; i < len; ++i) { + getTextNodes(node.childNodes[i]); + } + } + + getTextNodes(nodeIn); + return textNodes; + } + parseEmojis() { twemoji.parse(React.findDOMNode(this), {size: Constants.EMOJI_SIZE}); + this.getAllChildNodes(React.findDOMNode(this)).forEach((current) => { + global.window.emojify.run(current); + }); } + componentDidMount() { this.parseEmojis(); } + componentDidUpdate() { this.parseEmojis(); } + componentWillReceiveProps(nextProps) { const linkData = Utils.extractLinks(nextProps.post.message); this.setState({links: linkData.links, message: linkData.text}); } + render() { const post = this.props.post; const filenames = this.props.post.filenames; @@ -75,7 +98,7 @@ export default class PostBody extends React.Component { comment = ( <p className='post-link'> <span> - Commented on {name}{apostrophe} message: + {'Commented on '}{name}{apostrophe}{' message:'} <a className='theme' onClick={this.props.handleCommentClick} @@ -98,7 +121,7 @@ export default class PostBody extends React.Component { href='#' onClick={this.props.retryPost} > - Retry + {'Retry'} </a> ); } else if (post.state === Constants.POST_LOADING) { @@ -133,6 +156,7 @@ export default class PostBody extends React.Component { {comment} <p key={`${post.id}_message`} + id={`${post.id}_message`} className={postClass} > {loading} |