Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Event

An Event is a container for general info about an event. It also provides static methods for creating/updating/reading/deleting things related to an event on hackerapi.com

class
extends

{ HackerAPI.Base }

Hierarchy

Index

Constructors

constructor

  • new Event(__namedParameters?: { contactEmail: undefined | string; contact_email: undefined | string; cost: undefined | string; costCurrency: undefined | string; cost_currency: undefined | string; createdAt: undefined | Date; created_at: undefined | Date; description: undefined | string; endTime: undefined | Date; end_time: undefined | Date; hasFood: undefined | false | true; hasReimbursements: undefined | false | true; has_food: undefined | false | true; has_reimbursements: undefined | false | true; id: undefined | number; judgingModel: undefined | string; judging_model: undefined | string; lengthHours: undefined | number; length_hours: undefined | number; maxAgeRestriction: undefined | number; max_age_restriction: undefined | number; minAgeRestriction: undefined | number; min_age_restriction: undefined | number; name: undefined | string; organization: undefined | Organization; pipelines: undefined | Pipeline[]; size: undefined | number; slug: undefined | string; startTime: undefined | Date; start_time: undefined | Date; submissionUrl: undefined | string; submission_url: undefined | string; swarmEventId: undefined | number; swarm_event_id: undefined | number; tags: undefined | string; themes: undefined | string; timezone: undefined | string; updatedAt: undefined | Date; updated_at: undefined | Date; website: undefined | string }): Event
  • Creates a local Event instance.

    constructor

    Parameters

    • Default value __namedParameters: { contactEmail: undefined | string; contact_email: undefined | string; cost: undefined | string; costCurrency: undefined | string; cost_currency: undefined | string; createdAt: undefined | Date; created_at: undefined | Date; description: undefined | string; endTime: undefined | Date; end_time: undefined | Date; hasFood: undefined | false | true; hasReimbursements: undefined | false | true; has_food: undefined | false | true; has_reimbursements: undefined | false | true; id: undefined | number; judgingModel: undefined | string; judging_model: undefined | string; lengthHours: undefined | number; length_hours: undefined | number; maxAgeRestriction: undefined | number; max_age_restriction: undefined | number; minAgeRestriction: undefined | number; min_age_restriction: undefined | number; name: undefined | string; organization: undefined | Organization; pipelines: undefined | Pipeline[]; size: undefined | number; slug: undefined | string; startTime: undefined | Date; start_time: undefined | Date; submissionUrl: undefined | string; submission_url: undefined | string; swarmEventId: undefined | number; swarm_event_id: undefined | number; tags: undefined | string; themes: undefined | string; timezone: undefined | string; updatedAt: undefined | Date; updated_at: undefined | Date; website: undefined | string } = {}
      • contactEmail: undefined | string
      • contact_email: undefined | string
      • cost: undefined | string
      • costCurrency: undefined | string
      • cost_currency: undefined | string
      • createdAt: undefined | Date
      • created_at: undefined | Date
      • description: undefined | string
      • endTime: undefined | Date
      • end_time: undefined | Date
      • hasFood: undefined | false | true
      • hasReimbursements: undefined | false | true
      • has_food: undefined | false | true
      • has_reimbursements: undefined | false | true
      • id: undefined | number
      • judgingModel: undefined | string
      • judging_model: undefined | string
      • lengthHours: undefined | number
      • length_hours: undefined | number
      • maxAgeRestriction: undefined | number
      • max_age_restriction: undefined | number
      • minAgeRestriction: undefined | number
      • min_age_restriction: undefined | number
      • name: undefined | string
      • organization: undefined | Organization
      • pipelines: undefined | Pipeline[]
      • size: undefined | number
      • slug: undefined | string
      • startTime: undefined | Date
      • start_time: undefined | Date
      • submissionUrl: undefined | string
      • submission_url: undefined | string
      • swarmEventId: undefined | number
      • swarm_event_id: undefined | number
      • tags: undefined | string
      • themes: undefined | string
      • timezone: undefined | string
      • updatedAt: undefined | Date
      • updated_at: undefined | Date
      • website: undefined | string

    Returns Event

Properties

Optional contactEmail

contactEmail: undefined | string

Optional cost

cost: undefined | string

Optional costCurrency

costCurrency: undefined | string

Optional createdAt

createdAt: Date

Optional description

description: undefined | string

Optional endTime

endTime: Date

Optional hasFood

hasFood: undefined | false | true

Optional hasReimbursements

hasReimbursements: undefined | false | true

Optional id

id: undefined | number

Optional judgingModel

judgingModel: undefined | string

Optional lengthHours

lengthHours: undefined | number

Optional maxAgeRestriction

maxAgeRestriction: undefined | number

Optional minAgeRestriction

minAgeRestriction: undefined | number

Optional name

name: undefined | string

Optional organization

organization: Organization

Optional pipelines

pipelines: Pipeline[]

Optional size

size: undefined | number

Optional slug

slug: undefined | string

specialHandlers

specialHandlers: {}

Type declaration

  • [key: string]: (...args: unknown[]) => [string, undefined | string]
      • (...args: unknown[]): [string, undefined | string]
      • Parameters

        • Rest ...args: unknown[]

        Returns [string, undefined | string]

Optional startTime

startTime: Date

Optional submissionUrl

submissionUrl: undefined | string

Optional swarmEventId

swarmEventId: undefined | number

Optional tags

tags: undefined | string

Optional themes

themes: undefined | string

Optional timezone

timezone: undefined | string

Optional updatedAt

updatedAt: Date

Optional website

website: undefined | string

Accessors

Static Activity

Static ActivityRedemption

Static Application

Static Attendee

Static BadgeCode

Static Faq

  • get Faq(): Faq

Static MailingListSignup

Static ScheduleItem

Static Sponsor

Static Submission

Static Team

Static Update

Methods

toHackerAPIFormat

  • toHackerAPIFormat(method?: undefined | string): {}

Static addUserToSlack

  • addUserToSlack(__namedParameters: { slug: string | number }, __namedParameters: { id: number | "me" }, token?: undefined | string): Promise<{ message: string; success: string }>
  • Adds a user to Slack

    todo

    Is there maybe a better location for this?

    Parameters

    • __namedParameters: { slug: string | number }
      • slug: string | number
    • __namedParameters: { id: number | "me" }
      • id: number | "me"
    • Optional token: undefined | string

    Returns Promise<{ message: string; success: string }>

Static create

  • create(event: Event, token?: undefined | string): Promise<{}>
  • Creates an event on HackerAPI of this event using the event's slug.
    The following properties are required:

    • organizationID
    • name
    • startTime
    • endTime
    • slug
    example

    let masseyhacks4 = new Event(); fillUp(masseyhacks4); HackerAPI.Event.create(masseyhacks, myToken) .then((event) => { doSomethingWith(event) })

    Parameters

    • event: Event

      The event to create (can also contain the token to use)

    • Optional token: undefined | string

      The credentials to use to get the data (must use an organizer token)

    Returns Promise<{}>

    • Returns an updated copy of the event

Static dateHandler

  • dateHandler(key: string, date: string | Date): string[]
  • Converts a Javascript date (where only day, month and year are relevant) to a format understood by hackerapi

    Parameters

    • key: string
    • date: string | Date

      Doesn't do anything if string

    Returns string[]

    key: [0], value: [1]

Static dateTimeHandler

  • dateTimeHandler(key: string, datetime: string | Date): string[]
  • Converts Javascript date to a format understood by hackerapi

    Parameters

    • key: string
    • datetime: string | Date

    Returns string[]

    key: [0], value: [1]

Static doNotSendHandler

  • doNotSendHandler(key: string, _: any): (undefined | string)[]
  • Does not send the field to hackerapi

    Parameters

    • key: string
    • _: any

    Returns (undefined | string)[]

    key: [0], value: [1]

Static fetch

  • fetch(__namedParameters: { slug: string | number }, token?: undefined | string): Promise<{}>
  • Pulls data about an event using it's slug

    example

    let lollahacks; HackerAPI.Event.load({ slug: "lollahacks" }) .then((e) => { lollahacks = e; })

    Parameters

    • __namedParameters: { slug: string | number }
      • slug: string | number
    • Optional token: undefined | string

      The credentials to use to get the data (must use an organizer token)

    Returns Promise<{}>

    • Returns itself

Static getBadge

  • getBadge(__namedParameters: { slug: string | number }, __namedParameters: { company: string; name: string; role: string; validUntil: number }): Promise<string>
  • Gets a badge image for a person given their information

    Parameters

    • __namedParameters: { slug: string | number }
      • slug: string | number
    • __namedParameters: { company: string; name: string; role: string; validUntil: number }
      • company: string

        What company this person works for

      • name: string

        The name to go on the badge

      • role: string

        The person's role

      • validUntil: number

        The number of hours this badge is valid for

    Returns Promise<string>

    A data URI of the badge

Static pushMentorNotification

  • pushMentorNotification(__namedParameters: { slug: string | number }, mentorRequest: { action: string; skills: string[] }, token?: undefined | string): Promise<any>
  • This feature doesn't seem to be fully implemented (or functional?) in hackerapi so use at your own discretion

    Parameters

    • __namedParameters: { slug: string | number }
      • slug: string | number
    • mentorRequest: { action: string; skills: string[] }
      • action: string

        So far looks like this can only be "claimed"

      • skills: string[]

        The skills to filter mentors by

    • Optional token: undefined | string

    Returns Promise<any>

    No idea what that object is

Static renameHandler

  • renameHandler(renamedKey: string): (Anonymous function)
  • HOC for renaming a field before sending it to hackerapi

    Parameters

    • renamedKey: string

      The string to rename the key to

    Returns (Anonymous function)

    key: [0], value: [1]

Static update

  • update(event: Event, token?: undefined | string): Promise<{}>
  • Updates event data on HackerAPI of the given event using the event's slug.

    example

    HackerAPI.Event.load({ slug: "lollahacks" }) .then((event) => { event.description = "..."; HackerAPI.Event.update(event) .then((updatedEvent) => { doSomething(updatedEvent); }) })

    Parameters

    • event: Event
    • Optional token: undefined | string

    Returns Promise<{}>

    The updated event

Static upload

  • upload(__namedParameters: { slug: string | number }, formData: FormData, token?: undefined | string): Promise<any>
  • Uploads a file

    Parameters

    • __namedParameters: { slug: string | number }
      • slug: string | number
    • formData: FormData
    • Optional token: undefined | string

    Returns Promise<any>

Generated using TypeDoc