event_metadata

in app/controllers/users_controller.rb [109:160]


  def event_metadata(event)
    action = event.action
    payload = event.payload

    url = nil
    date = nil
    repo = event.repo.name

    case event.type
    when "IssuesEvent"
      return unless action == "closed"

      issue = payload.issue
      url = issue.html_url
      date = issue.closed_at
      return if issue.user.login == @nickname

      title = "closed #{issue.title}"
    when "PushEvent"
      diff = "#{payload.before}...#{payload.head}"
      url = "https://github.com/#{repo}/compare/#{diff}"
      date = event.created_at
      branch = payload.ref.sub(%r{^refs/heads/}, "")
      title = helpers.safe_join(["pushed ", helpers.tag.code(branch)])
    when "PullRequestReviewEvent"
      return unless action == "submitted"

      review = event.review
      url = review.html_url
      date = review.submitted_at
      title = "reviewed #{event.pull_request.title}"
    when "ReleaseEvent"
      return unless action == "published"

      release = event.release
      url = release.html_url
      date = release.published_at
      title = "released #{release.name || release.tag_name}"
    end
    return if !title || !url || !date || !repo

    date = date.to_date
    return unless date.friday?

    {
      title: title,
      url: url,
      date: date,
      repo: repo,
    }
  end