From 0f1de1fffcc2b232cf53d152f57e913baa4687cf Mon Sep 17 00:00:00 2001 From: Beluzsar Peter Date: Tue, 11 Aug 2026 17:57:38 +0200 Subject: [PATCH] backend fixes, better case handling, some frontend changes --- app/Http/Controllers/TlaController.php | 30 ++++++++++++++----- app/Models/Tla.php | 2 +- database/factories/TlaFactory.php | 3 +- .../2026_08_08_224606_create_tla_table.php | 3 +- resources/js/App.vue | 2 -- resources/js/components/GuessWord.vue | 2 -- resources/js/pages/HomeView.vue | 22 +++++++------- 7 files changed, 39 insertions(+), 25 deletions(-) diff --git a/app/Http/Controllers/TlaController.php b/app/Http/Controllers/TlaController.php index 40226be..d94ec1d 100644 --- a/app/Http/Controllers/TlaController.php +++ b/app/Http/Controllers/TlaController.php @@ -49,6 +49,8 @@ class TlaController extends Controller 'hint' => $tla->hint, 'guesses' => $request->session()->get('guesses-'.$language, []), 'date' => $request->session()->get('date'), + 'tla' => $request->session()->get('tla') == $tla->acronym ? $tla->acronym : NULL, + 'context' => $request->session()->get('tla') == $tla->acronym ? $tla->context : NULL, ]); } @@ -58,10 +60,16 @@ class TlaController extends Controller 'guess' => 'required|array|size:3', ]); $this->session_flush($request, $language); + $tla_object = Tla::GetCurrentTla($language); + + $session = $request->session(); - $tla = explode(' ', Tla::GetCurrentTla($language)->abbreviation); + $tla = explode(' ', strtolower($tla_object->acronym)); $guess_array = $request->all()['guess']; + for ($i = 0; $i<3; $i++) { + $guess_array[$i] = strtolower($guess_array[$i]); + } $proposal = []; @@ -85,16 +93,24 @@ class TlaController extends Controller array_push($guess_array, max($proposal[0][$i], $proposal[1][$i], $proposal[2][$i])); } + $score = 0; - if ( $request->session()->get('guesses-'.$language, NULL) == NULL ) $request->session()->put('guesses-'.$language, [$guess_array]); - else $request->session()->push('guesses-'.$language, $guess_array); + for ($i = 0; $i<3; $i++) { + $guess_array[$i] = ucfirst($guess_array[$i]); + $score += $guess_array[$i + 3]; + } - $guesses = $request->session()->get('guesses-'.$language, NULL); + if ($score == 12) $session->put('tla', $tla_object->acronym); + + $session->push('guesses-'.$language, $guess_array); + $guesses = $session->get('guesses-'.$language, NULL); return response()->json([ - 'guesses' => $request->session()->get('guesses-'.$language, []), - 'date' => $request->session()->get('date'), - 'real' => $tla + 'guesses' => $session->get('guesses-'.$language, []), + 'date' => $session->get('date'), + 'tla' => $session->get('tla') == $tla_object->acronym ? $tla_object->acronym : NULL, + 'context' => $session->get('tla') == $tla_object->acronym ? $tla_object->context : NULL, + 'score' => $score, ]); } diff --git a/app/Models/Tla.php b/app/Models/Tla.php index f7adf70..a58c37d 100644 --- a/app/Models/Tla.php +++ b/app/Models/Tla.php @@ -11,7 +11,7 @@ class Tla extends Model use HasFactory; - protected $fillable = ['abbreviation', 'hint', 'used']; + protected $fillable = ['acronym', 'hint', 'used', 'context']; public static function GetCurrentTla( string $language ) : Tla { $tla = Tla::where('used', date("Y-m-d")) diff --git a/database/factories/TlaFactory.php b/database/factories/TlaFactory.php index c434b0d..b73cc36 100644 --- a/database/factories/TlaFactory.php +++ b/database/factories/TlaFactory.php @@ -18,9 +18,10 @@ class TlaFactory extends Factory public function definition(): array { return [ - 'abbreviation' => fake()->word() . ' ' . fake()->word() . ' ' . fake()->word(), + 'acronym' => fake()->word() . ' ' . fake()->word() . ' ' . fake()->word(), 'hint' => fake()->sentence(), 'language' => fake()->randomElement(['hu', 'en']), + 'context' => fake()->paragraph(), ]; } } diff --git a/database/migrations/2026_08_08_224606_create_tla_table.php b/database/migrations/2026_08_08_224606_create_tla_table.php index 999cbec..a4a6685 100644 --- a/database/migrations/2026_08_08_224606_create_tla_table.php +++ b/database/migrations/2026_08_08_224606_create_tla_table.php @@ -13,10 +13,11 @@ return new class extends Migration { Schema::create('tla', function (Blueprint $table) { $table->id(); - $table->string('abbreviation'); + $table->string('acronym'); $table->string('hint')->nullable(); $table->enum('language', ['hu', 'en']); $table->date('used')->nullable(); + $table->longText('context')->nullable(); $table->timestamps(); }); } diff --git a/resources/js/App.vue b/resources/js/App.vue index bed11cb..700897c 100644 --- a/resources/js/App.vue +++ b/resources/js/App.vue @@ -27,8 +27,6 @@ diff --git a/resources/js/components/GuessWord.vue b/resources/js/components/GuessWord.vue index 8638d91..2e0ed84 100644 --- a/resources/js/components/GuessWord.vue +++ b/resources/js/components/GuessWord.vue @@ -8,8 +8,6 @@