hunk.code_window:         e.preventDefault();
           PostActions.removeReaction(this.props.post.channel_id, this.props.post.id, this.props.emojiName);
       }
       render() {
           if (!EmojiStore.has(this.props.emojiName)) {
               return null;
           }
           let currentUserReacted = false;
  
hunk.labels: keep keep keep keep keep replace keep keep keep keep
hunk.after_edit:         if (!this.props.emojis.has(this.props.emojiName)) {
  
hunk.file_path: webapp/components/post_view/components/reaction.jsx
hunk.type: replace
file: // Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
  // See License.txt for license information.
  
  import UserStore from 'stores/user_store.jsx';
  import * as utils from 'utils/utils.jsx';
  import NotificationsTab from './user_settings_notifications.jsx';
  import SecurityTab from './user_settings_security.jsx';
  import GeneralTab from './user_settings_general.jsx';
  import DisplayTab from './user_settings_display.jsx';
  import AdvancedTab from './user_settings_advanced.jsx';
  
  import React from 'react';
  
  export default class UserSettings extends React.Component {
      constructor(props) {
          super(props);
  
          this.onListenerChange = this.onListenerChange.bind(this);
  
          this.state = {user: UserStore.getCurrentUser()};
      }
  
      componentDidMount() {
          UserStore.addChangeListener(this.onListenerChange);
      }
  
      componentWillUnmount() {
          UserStore.removeChangeListener(this.onListenerChange);
      }
  
      onListenerChange() {
          var user = UserStore.getCurrentUser();
          if (!utils.areObjectsEqual(this.state.user, user)) {
              this.setState({user});
          }
      }
  
      render() {
          if (this.props.activeTab === 'general') {
              return (
                  <div>
                      <GeneralTab
                          user={this.state.user}
                          activeSection={this.props.activeSection}
                          updateSection={this.props.updateSection}
                          updateTab={this.props.updateTab}
                          closeModal={this.props.closeModal}
                          collapseModal={this.props.collapseModal}
                      />
                  </div>
              );
          } else if (this.props.activeTab === 'security') {
              return (
                  <div>
                      <SecurityTab
                          user={this.state.user}
                          activeSection={this.props.activeSection}
                          updateSection={this.props.updateSection}
                          updateTab={this.props.updateTab}
                          closeModal={this.props.closeModal}
                          collapseModal={this.props.collapseModal}
                          setEnforceFocus={this.props.setEnforceFocus}
                      />
                  </div>
              );
          } else if (this.props.activeTab === 'notifications') {
              return (
                  <div>
                      <NotificationsTab
                          user={this.state.user}
                          activeSection={this.props.activeSection}
                          updateSection={this.props.updateSection}
                          updateTab={this.props.updateTab}
                          closeModal={this.props.closeModal}
                          collapseModal={this.props.collapseModal}
                      />
                  </div>
              );
          } else if (this.props.activeTab === 'display') {
              return (
                  <div>
                      <DisplayTab
                          user={this.state.user}
                          activeSection={this.props.activeSection}
                          updateSection={this.props.updateSection}
                          updateTab={this.props.updateTab}
                          closeModal={this.props.closeModal}
                          collapseModal={this.props.collapseModal}
                          setEnforceFocus={this.props.setEnforceFocus}
                          setRequireConfirm={this.props.setRequireConfirm}
                      />
                  </div>
              );
          } else if (this.props.activeTab === 'advanced') {
              return (
                  <div>
                      <AdvancedTab
                          user={this.state.user}
                          activeSection={this.props.activeSection}
                          updateSection={this.props.updateSection}
                          updateTab={this.props.updateTab}
                          closeModal={this.props.closeModal}
                          collapseModal={this.props.collapseModal}
                      />
                  </div>
              );
          }
  
          return <div/>;
      }
  }
  
  UserSettings.propTypes = {
      activeTab: React.PropTypes.string,
      activeSection: React.PropTypes.string,
      updateSection: React.PropTypes.func,
      updateTab: React.PropTypes.func,
      closeModal: React.PropTypes.func.isRequired,
      collapseModal: React.PropTypes.func.isRequired,
      setEnforceFocus: React.PropTypes.func.isRequired,
      setRequireConfirm: React.PropTypes.func.isRequired
  };
  