From 7cbf6db807d855b71694c64e6348788f310d3b29 Mon Sep 17 00:00:00 2001 From: Louis Ramos Date: Thu, 23 Nov 2023 21:44:33 +0100 Subject: [PATCH 1/3] fix(users): remove blank params from user form --- app/controllers/users_controller.rb | 5 ++++- db/schema.rb | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index ef7cf401..3a053609 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -103,6 +103,9 @@ def unlock_achievements end def user_params - params.require(:user).permit(:accepted_coc, :aoc_id, :city_id, :entered_hardcore, :event_awareness, :favourite_language, :username) + params + .require(:user) + .permit(:accepted_coc, :aoc_id, :city_id, :entered_hardcore, :event_awareness, :favourite_language, :username) + .compact_blank end end diff --git a/db/schema.rb b/db/schema.rb index 3c881b48..d26b5adf 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -374,8 +374,8 @@ t.bigint "city_id" t.datetime "created_at", null: false t.boolean "entered_hardcore", default: false, null: false - t.string "favourite_language" t.integer "event_awareness" + t.string "favourite_language" t.string "github_username" t.string "private_leaderboard" t.string "provider" From 98febf3698b78e0e5fcb0f591c591417b7982e5c Mon Sep 17 00:00:00 2001 From: Louis Ramos Date: Thu, 30 Nov 2023 21:39:32 +0100 Subject: [PATCH 2/3] fix(users): replace #compact_blank with before_validation --- app/controllers/users_controller.rb | 1 - app/models/user.rb | 8 ++++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 3a053609..44ecd154 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -106,6 +106,5 @@ def user_params params .require(:user) .permit(:accepted_coc, :aoc_id, :city_id, :entered_hardcore, :event_awareness, :favourite_language, :username) - .compact_blank end end diff --git a/app/models/user.rb b/app/models/user.rb index 673acfd1..c5906982 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -34,6 +34,8 @@ class User < ApplicationRecord validate :referrer_must_exist, on: :update, if: :referrer_id_changed? validate :referrer_cannot_be_self, on: :update + before_validation :blank_language_to_nil + scope :admins, -> { where(uid: ADMINS.values) } scope :confirmed, -> { where(accepted_coc: true, synced: true).where.not(aoc_id: nil) } scope :insanity, -> { where(entered_hardcore: true) } @@ -135,6 +137,12 @@ def batch_cannot_be_changed errors.add(:batch, "can't be changed") end + def blank_language_to_nil + return if favourite_language.present? + + self.favourite_language = nil + end + def city_cannot_be_changed_if_present errors.add(:city, "can't be changed") if city_id_was.present? end From ac261278fef9d694aa3a5fc2e4ccafd7f0a31b68 Mon Sep 17 00:00:00 2001 From: Louis Ramos Date: Thu, 30 Nov 2023 22:52:48 +0100 Subject: [PATCH 3/3] profile fail --- Procfile.dev | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Procfile.dev b/Procfile.dev index 88ff649b..99abce16 100644 --- a/Procfile.dev +++ b/Procfile.dev @@ -1,3 +1,3 @@ -web: bin/rails server -p 3000 +web: bin/rails server -p 3000 -b 0.0.0.0 css: bin/rails tailwindcss:watch worker: bundle exec good_job start