Offline participation: implement completed puzzle methods
Some checks failed
CI / scan_ruby (push) Successful in 20s
CI / scan_js (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled

This commit is contained in:
sto
2025-10-31 11:55:28 +01:00
parent 37a65526e4
commit ff5f387a87
13 changed files with 110 additions and 17 deletions

View File

@@ -3,6 +3,7 @@
# Table name: offlines
#
# id :integer not null, primary key
# completed :boolean
# end_time :datetime
# name :string not null
# start_time :datetime not null
@@ -21,20 +22,25 @@
class Offline < ApplicationRecord
belongs_to :contest
has_one_attached :start_image
has_one_attached :end_image
has_many_attached :images
generates_token_for :token
validates :name, presence: true
validates :start_time, presence: true
validate :end_image_is_present
validate :start_image_is_present
def end_image_is_present
if self.completed && self.images.length < 2
errors.add(:end_image, I18n.t("activerecord.errors.models.offline.attributes.end_image.blank"))
end
end
def start_image_is_present
logger = Logger.new(STDOUT)
logger.info "TESTddfzefzef"
logger.info self.start_image.attached?
if !self.start_image.attached?
errors.add(:start_image, I18n.t("activerecord.errors.models.offline.attributes.start_image.blank"))
if !self.images.attached?
errors.add(:images, I18n.t("activerecord.errors.models.offline.attributes.start_image.blank"))
end
end
end