File: /var/www/api.ayokah.co.uk/app/Http/Controllers/Admin/NewsFlashController.php
<?php
namespace App\Http\Controllers\Admin;
use App\Models\NewsFlash;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class NewsFlashController extends Controller
{
public function store(Request $request)
{
try {
$validatedData = $request->validate([
'title' => ['required', 'unique:news_flashes,title,' . $request->uuid],
]);
if ($request->has('uuid')) {
$news = NewsFlash::findOrFail($request->uuid);
$status = 'updated';
} else {
$news = new NewsFlash();
$status = 'created';
}
$news->title = $validatedData['title'];
$news->save();
return response()->json(['message' => 'Category ' . $status . ' successfully', 'news' => $news], 200);
} catch (\Exception $e) {
return response()->json(['status' => 'failed', 'message' => $e->getMessage()], 422);
}
}
public function list()
{
$news = NewsFlash::latest()->limit(3)->get();
return response()->json(['news' => $news], 200);
}
public function index()
{
$news = NewsFlash::latest()->get();
return response()->json(['news' => $news], 200);
}
public function delete(Request $request)
{
try {
$validatedData = $request->validate([
'id' => ['required', 'exists:news_flashes,id'],
]);
} catch (\Illuminate\Validation\ValidationException $e) {
return response()->json(['error' => $e->errors()], 422);
}
$newsflash = NewsFlash::findOrFail($request->id);
$newsflash->delete();
return response()->json(['message' => 'News Flash deleted successfully'], 200);
}
}