From 4645b45f5d7263d01ce62bc56bafd2e3a5d0d571 Mon Sep 17 00:00:00 2001 From: sto Date: Thu, 19 Jun 2025 10:33:36 +0200 Subject: [PATCH] Fix CSV import & contestant deletion --- app/controllers/contestants_controller.rb | 5 +++-- app/models/contestant.rb | 2 +- app/models/csv_import.rb | 2 +- app/views/contestants/convert_csv.html.slim | 8 ++++---- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/app/controllers/contestants_controller.rb b/app/controllers/contestants_controller.rb index 992fc7f..9ff677d 100644 --- a/app/controllers/contestants_controller.rb +++ b/app/controllers/contestants_controller.rb @@ -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 diff --git a/app/models/contestant.rb b/app/models/contestant.rb index 2b10992..140bc99 100644 --- a/app/models/contestant.rb +++ b/app/models/contestant.rb @@ -21,7 +21,7 @@ # class Contestant < ApplicationRecord belongs_to :contest - has_many :completions + has_many :completions, dependent: :destroy before_create :initialize_time_seconds diff --git a/app/models/csv_import.rb b/app/models/csv_import.rb index 71844f7..3830aa5 100644 --- a/app/models/csv_import.rb +++ b/app/models/csv_import.rb @@ -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 diff --git a/app/views/contestants/convert_csv.html.slim b/app/views/contestants/convert_csv.html.slim index 7425521..e07ab41 100644 --- a/app/views/contestants/convert_csv.html.slim +++ b/app/views/contestants/convert_csv.html.slim @@ -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"