add persistent win/loss and some frontend feedback
Build / Build-image (push) Successful in 50s

This commit is contained in:
2026-08-14 22:38:08 +02:00
parent 406458c33b
commit 11d440c6ed
2 changed files with 39 additions and 13 deletions
+20 -10
View File
@@ -30,10 +30,13 @@ class TlaController extends Controller
public function session_flush(Request $request, string $language)
{
if ($request->session()->get('date', NULL) != date('Y-m-d'))
$session = $request->session();
if ($session->get('date', NULL) != date('Y-m-d'))
{
$request->session()->forget('guesses-'.$language);
$request->session()->put('date', date('Y-m-d'));
$session->forget('guesses-'.$language);
$session->forget('tla');
$session->forget('correct');
$session->put('date', date('Y-m-d'));
}
}
@@ -45,12 +48,15 @@ class TlaController extends Controller
$tla = Tla::GetCurrentTla($language);
$this->session_flush($request, $language);
$session = $request->session();
return response()->json([
'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,
'guesses' => $session->get('guesses-'.$language, []),
'date' => $session->get('date'),
'tla' => $session->get('tla') == $tla->acronym ? $tla->acronym : NULL,
'context' => $session->get('tla') == $tla->acronym ? $tla->context : NULL,
'correct' => $session->get('correct'),
]);
}
@@ -100,17 +106,21 @@ class TlaController extends Controller
$score += $guess_array[$i + 3];
}
if ($score == 12) $session->put('tla', $tla_object->acronym);
$session->push('guesses-'.$language, $guess_array);
$guesses = $session->get('guesses-'.$language, NULL);
if ($score == 12 || count($guesses) == env('MAX_GUESSES', 10)) {
$session->put('tla', $tla_object->acronym);
$session->put('correct', true);
}
return response()->json([
'guesses' => $session->get('guesses-'.$language, []),
'guesses' => $guesses,
'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,
'correct' => $session->get('correct'),
]);
}
+19 -3
View File
@@ -17,6 +17,7 @@
victory: false,
loss: false,
maxGuesses: 10,
correct: false,
};
},
@@ -28,6 +29,7 @@
this.guesses = response.data.guesses;
this.tla = response.data.tla;
this.context = response.data.context;
this.correct = response.data.correct;
});
},
@@ -50,9 +52,13 @@
this.victory = !this.victory;
this.tla = response.data.tla;
this.context = response.data.context;
this.correct = response.data.correct;
}
else if (this.guesses.length == this.maxGuesses) {
this.loss = !this.loss;
this.tla = response.data.tla;
this.context = response.data.context;
this.correct = response.data.correct;
}
})
}
@@ -118,12 +124,18 @@
</GuessWord>
</template>
</div>
<template v-if="guesses.length < maxGuesses">
<template v-if="guesses.length < maxGuesses && !correct">
<form ref="main-form" @submit="onSubmit" onsubmit="return false">
<UInput v-model="guess" @keyup="onkeyup()"/>
</form>
</template>
<h3>{{ guesses.length }} / {{ maxGuesses }}</h3>
<template v-if="!correct && guesses.length >= maxGuesses">
You ran out of guesses. Todays TLA was {{ tla }}
</template>
<template v-if="correct">
You completed todays TLAdle! Todays TLA was {{ tla }}
</template>
<h3>Guesses: {{ guesses.length }} / {{ maxGuesses }}</h3>
</template>
</UCard>
@@ -131,10 +143,14 @@
<Modal v-model:open="victory">
<h1>Congratulations!</h1>
Todays TLA was: {{ tla }}
<h3>The context of todays TLA:</h3>
{{ context }}
</Modal>
<Modal v-model:open="loss">
<h1>What a shame!</h1>
Todays TLA was: whatever you didnt write
Todays TLA was: {{ tla }}
<h3>The context of todays TLA:</h3>
{{ context }}
</Modal>
</template>