class Club < ApplicationRecord include Brandable has_many :club_memberships, dependent: :destroy has_many :users, through: :club_memberships has_many :teams, dependent: :destroy has_one :subscription, dependent: :destroy validates :name, presence: true validates :sport, presence: true validates :primary_color, presence: true validates :secondary_color, presence: true def owner club_memberships.find_by(role: "owner")&.user end def owned_by?(user) club_memberships.exists?(user: user, role: "owner") end private def branding_parent nil end end