Fix CSV import & contestant deletion
All checks were successful
CI / scan_ruby (push) Successful in 18s
CI / scan_js (push) Successful in 13s
CI / lint (push) Successful in 12s
CI / test (push) Successful in 35s

This commit is contained in:
sto 2025-06-19 10:33:36 +02:00
parent f78a082ad3
commit 4645b45f5d
4 changed files with 9 additions and 8 deletions

View File

@ -92,9 +92,10 @@ class ContestantsController < ApplicationController
@content.each_with_index do |row, i|
if all_params["row_#{i}".to_sym] == "1"
if @form.email_column == -1
Contestant.create(name: row[@form.name_column], contest: @contest)
Contestant.create(name: row[@form.name_column], contest: @contest, time_seconds: 0)
else
Contestant.create(name: row[@form.name_column], email: row[@form.email_column], contest: @contest)
logger.info("Email")
Contestant.create(name: row[@form.name_column], email: row[@form.email_column], contest: @contest, time_seconds: 0)
end
end
end

View File

@ -21,7 +21,7 @@
#
class Contestant < ApplicationRecord
belongs_to :contest
has_many :completions
has_many :completions, dependent: :destroy
before_create :initialize_time_seconds

View File

@ -32,7 +32,7 @@ class CsvImport < ApplicationRecord
end
begin
csv = CSV.read(attachment_changes["file"].attachable.path, col_sep: separator)
csv = CSV.read(attachment_changes["file"].attachable.path, col_sep: separator_for_database)
errors.add(:file, :empty) if csv.count < 1 || (csv.count == 1 && csv[0].count == 1 && csv[0][0] == "")
rescue CSV::MalformedCSVError => e

View File

@ -14,6 +14,10 @@
= form.label :email_column
= t("contestants.import.email_column")
.row.mb-3
.col
= form.submit t("helpers.buttons.confirm"), class: "btn btn-primary"
.row.g-3
.col
table.table.table-striped.table-hover
@ -33,8 +37,4 @@
td
.form-check.form-switch
= form.check_box "row_#{i}".to_sym, class: "form-check-input", checked: true
.row.g-3
.col
= form.submit t("helpers.buttons.confirm"), class: "btn btn-primary"