       users = _(users).keys().map (id) ->
         u = users[id]
         id: u.id
+        name: u.name
         real_name: u.real_name
 
       f = new Fuse users,

        verbose: no
      results = f.search github.login
      result = if results? and results.length >=1 then results[0] else null

      if result
        return "<@#{result.id}>"
      else
        return github.login
    else
      return "Unassigned"

  notificationShouldFire = (notification) ->
    now = new Date

    repo = octo.repos(githubOrg, repo)
    repo.pulls.fetch(state: "open").then (prs) ->
      return Promise.all prs.map (pr) ->
        if user?
          return if not pr.assignee?
          assignee = lookupUserWithGithub pr.assignee
          return if user.toLowerCase() isnt assignee.name.toLowerCase()

        return repo.pulls(pr.number).fetch()
    .then ( prs ) ->
      message = ""
      for pr in prs when pr
        author = lookupUserWithGithub pr.user
        assignee = lookupUserWithGithub pr.assignee
        message+= """
          *[#{pr.title}]* +#{pr.additions} -#{pr.deletions}
          #{pr.htmlUrl}
          Updated: *#{moment(pr.updatedAt).fromNow()}*
          Status: #{if pr.mergeable then "Mergeable" else "Unresolved Conflicts"}
          Author: #{if author then "<@#{author.id}>" else "Unknown"}
          Assignee: #{if assignee then "<@#{assignee.id}>" else "Unassigned"}
          \n
        """
      if message.length is 0
        message = "No matching pull requests found"

