Feat: Yajra tables for response view

This commit is contained in:
Sallu9007
2025-01-26 20:56:11 +05:30
parent ec028d3f6f
commit dac2090e5c
6 changed files with 1156 additions and 7 deletions

View File

@@ -2,7 +2,11 @@
namespace App\Http\Controllers;
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Yajra\DataTables\Facades\DataTables;
use App\Models\Response;
class AdminController extends Controller
{
@@ -15,11 +19,22 @@ class AdminController extends Controller
// View responses submitted by users
public function viewResponses()
{
// Logic to fetch responses from the database
// For example, you could fetch all responses from a 'responses' table
// $responses = Response::all(); // Replace with your actual model
// return view('admin.responses', compact('responses'));
return view('admin.responses');
}
public function getResponses()
{
$responses = Response::with('user');
return DataTables::of($responses)
->addColumn('user_name', function ($response) {
return $response->user->name ?? 'Unknown';
})
->addColumn('action', function ($response) {
$viewButton = $response->proof ? '<a href="' . asset('storage/' . $response->proof) . '" target="_blank" class="btn btn-sm btn-primary">View</a>' : 'No Proof';
return $viewButton;
})
->rawColumns(['action'])
->make(true);
}
}