 
   getDefaultMenuItems: -> []
 
+    return [
+      {title: 'Edit Post'  , key: 'editpost'            , onClick: @bound 'editPost'}
+      {title: 'Delete Post', key: 'showdeletepostprompt', onClick: @bound 'showDeletePostPromptModal'}
+    ]
+
 
   getAdminMenuItems: ->
 
+    { message } = @props
+    markUserMenuItem =
+      key: 'markuserastroll',
+      title: 'Mark User as Troll',
+      onClick: @bound 'showMarkUserAsTrollPromptModal'
+
+    getMessageOwner message.toJS(), (err, owner) =>
+
+      return showErrorNotification err  if err
+
+      if owner.isExempt
+        markUserMenuItem =
+          key: 'unmarkuserastroll',
+          title: 'Unmark User as Troll',
+          onClick: @bound 'unMarkUserAsTroll'
+
     adminMenuItems = [
+      markUserMenuItem
       {
         title   : 'Block User'
         key     : 'blockuser'
         onClick : @bound 'showBlockUserPromptModal'
+      }
+      {
+        title   : 'Impersonate User'
+        key     : 'impersonateuser'
+        onClick : @bound 'impersonateUser'
       }
     ]
 

        <BlockUserModal
          {...@getBlockUserModalProps()}
          isOpen={@state.isBlockUserModalVisible} />
      </div>

    @setState isBlockUserModalVisible: no


  showDeletePostPromptModal: ->

    @setState isDeleting: yes


  closeDeletePostModal: (event) ->

    kd.utils.stopDOMEvent event
    @setState isDeleting: no


  showMarkUserAsTrollPromptModal: ->

    @setState isMarkUserAsTrollModalVisible: yes


  closeMarkUserAsTrollModal: (event) ->

    kd.utils.stopDOMEvent event
    @setState isMarkUserAsTrollModalVisible: no


  unMarkUserAsTroll: (event) ->

    kd.utils.stopDOMEvent event
    AppFlux.actions.user.unmarkUserAsTroll @state.account
    @closeMarkUserAsTrollModal()


  editPost: ->

    messageId = @props.message.get '_id'

    ActivityFlux.actions.message.setMessageEditMode messageId, @props.channelId


  deletePostButtonHandler: (event) ->

    kd.utils.stopDOMEvent event
    ActivityFlux.actions.message.removeMessage @props.message.get('id')
    @closeDeletePostModal()


  impersonateUser: (event) ->

    kd.utils.stopDOMEvent event
    { message } = @props

    AppFlux.actions.user.impersonateUser message.toJS()


  getBlockUserModalProps: ->

    account            : @state.account
