Suggest closest contestant name when converting a message to completion

This commit is contained in:
sto
2025-06-25 08:54:02 +02:00
parent 2cadc8eca5
commit 1a8ea0afee
4 changed files with 20 additions and 2 deletions

View File

@@ -74,7 +74,6 @@ class MessagesController < ApplicationController
@action_name = t("helpers.buttons.back")
@action_path = contest_path(@contest)
@message = Message.find(params[:message_id])
@completion = Completion.new()
@completion.display_time_from_start = @message.display_time
@@ -96,7 +95,19 @@ class MessagesController < ApplicationController
end
def set_data
@contestants = @contest.contestants.order(:name)
@message = Message.find(params[:message_id])
@puzzles = @contest.puzzles
@contestants = @contest.contestants.order(:name)
if @contestants.size > 0
@closest_contestant = @contestants.first
closest_distance = 10000
@contestants.each do |contestant|
distance = DamerauLevenshtein.distance(@message.author, contestant.name)
if distance < closest_distance
closest_distance = distance
@closest_contestant = contestant
end
end
end
end
end