37 lines
906 B
Ruby
37 lines
906 B
Ruby
class JamRuby::LiveStream < ActiveRecord::Base
|
|
|
|
|
|
#belongs_to :user, class_name: 'JamRuby::User'
|
|
#belongs_to :band, class_name: 'JamRuby::Band'
|
|
|
|
#validate :one_of_user_band
|
|
validates :slug, uniqueness: true, presence: true
|
|
|
|
before_validation :sanitize_active_admin
|
|
|
|
def ready_display
|
|
self.starts_at && self.ends_at && (self.user_id || self.band_id)
|
|
end
|
|
|
|
def self.upcoming
|
|
LiveStream.order('starts_at DESC') #.where("starts_at > ?", 2.days.ago)
|
|
end
|
|
|
|
def sanitize_active_admin
|
|
self.img_url = nil if self.img_url == ''
|
|
self.user_id = nil if self.user_id == ''
|
|
self.band_id = nil if self.band_id == ''
|
|
self.social_description = nil if self.social_description == ''
|
|
end
|
|
|
|
def one_of_user_band
|
|
if band && user
|
|
errors.add(:user, 'specify band, or user. not both')
|
|
end
|
|
end
|
|
|
|
def admin_name
|
|
"#{title} EB:#{eventbriteid} #{starts_at}"
|
|
end
|
|
end
|