build_event_data

in app/services/system_hooks_service.rb [21:70]


  def build_event_data(model, event)
    data = {
      event_name: build_event_name(model, event),
      created_at: model.created_at&.xmlschema,
      updated_at: model.updated_at&.xmlschema
    }

    case model
    when Key
      data.merge!(
        key: model.key,
        id: model.id
      )

      if model.user
        data[:username] = model.user.username
      end
    when Project
      data.merge!(project_data(model))

      if event == :rename || event == :transfer
        data[:old_path_with_namespace] = model.old_path_with_namespace
      end
    when User
      data.merge!(user_data(model))

      case event
      when :rename
        data[:old_username] = model.username_before_last_save
      when :failed_login
        data[:state] = model.state
      end
    when ProjectMember
      data.merge!(project_member_data(model))
    when Group
      data.merge!(group_data(model))

      if event == :rename
        data.merge!(
          old_path: model.path_before_last_save,
          old_full_path: model.full_path_before_last_save
        )
      end
    when GroupMember
      data.merge!(group_member_data(model))
    end

    data
  end