Files
TLA/app/Http/Controllers/TlaController.php
T
Belupeti 48048e516a
Build / Build-image (push) Successful in 54s
frontend stuff and changes to api
2026-08-10 12:33:44 +02:00

95 lines
2.4 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Tla;
use Illuminate\Http\Request;
class TlaController extends Controller
{
public function store(Request $request): RedirectResponse
{
$request->validate([
'title' => 'required',
'body' => 'required',
]);
$tla = new Tla($requestData);
$tla->save();
return redirect()->route('admin')->with('success', 'Record added!');
} //
public function destroy(Tla $tla): RedirectResponse
{
$tla->delete();
return redirect()->route('admin')->with('success', 'Record deleted');
}
public function fetch_tla(Request $request, ?string $language = 'en')
{
$allowedLanguages = array('hu', 'en');
if ( !in_array($language, $allowedLanguages) ) $language = 'en';
$tla = Tla::where('used', date("Y-m-d"))
->where('language', $language)
->first();
if ( is_null($tla) ) {
$tla = Tla::where('language', $language)
->where('used', NULL)
->inRandomOrder()
->first();
$tla->used = date("Y-m-d");
$tla->save();
}
return response()->json([
'hint' => $tla->hint,
'guesses' => $request->session()->get('guesses-'.$language, NULL)
]);
}
public function check_tla(Request $request, ?string $language = 'en')
{
$request->validate([
'guess' => 'required',
]);
$guess = $request->all()['guess'];
$guess_array = explode(' ', $guess);
array_push($guess_array, 1);
array_push($guess_array, 2);
array_push($guess_array, 3);
if ( $request->session()->get('guesses-'.$language, NULL) == NULL ) $request->session()->put('guesses-'.$language, [$guess_array]);
else $request->session()->push('guesses-'.$language, $guess_array);
$guesses = $request->session()->get('guesses-'.$language, NULL);
return $guesses;
}
public function update(Request $request, Tla $tla): RedirectResponse
{
$request->validate([
'title' => 'required',
'body' => 'required',
]);
$requestData = $request->all();
$tla->update($requestData);
$tla->save();
return redirect()->route('admin')->with('success', 'Record updated!');
}
}