# frozen_string_literal: true

# License: AGPL-3.0-or-later WITH WTO-AP-3.0-or-later
# Full license explanation at https://github.com/houdiniproject/houdini/blob/master/LICENSE
module QueryEventOrganizer
  def self.with_event(event_id)
    Qx.select(
      'coalesce(profiles.name, nonprofits.name) AS name',
      'coalesce(users.email, nonprofits.email) AS email'
    )
      .from(:events)
      .left_join(:profiles, 'profiles.id=events.profile_id')
      .add_left_join(:users, 'profiles.user_id=users.id')
      .add_join(:nonprofits, 'events.nonprofit_id=nonprofits.id')
      .where('events.id=$id', id: event_id)
      .execute.first
  end
end