58 lines
1.9 KiB
PHP
58 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Yajra\DataTables\Facades\DataTables;
|
|
use App\Models\ActivitiesAttended;
|
|
|
|
class AdminController extends Controller
|
|
{
|
|
// Admin dashboard (optional)
|
|
public function index()
|
|
{
|
|
return view('admin.dashboard');
|
|
}
|
|
|
|
// View responses submitted by users
|
|
public function viewActivitiesAttendedResponses()
|
|
{
|
|
return view('admin.activities-attended-responses');
|
|
}
|
|
|
|
public function getActivitiesAttendedResponses()
|
|
{
|
|
$responses = ActivitiesAttended::with('user', 'department');
|
|
|
|
return DataTables::of($responses)
|
|
->addColumn('user_name', function ($response) {
|
|
return $response->user->name ?? 'Unknown';
|
|
})
|
|
->addColumn('department_name', function ($response) {
|
|
return $response->department->name ?? 'Unknown';
|
|
})
|
|
->addColumn('start_date', function ($response) {
|
|
return \Carbon\Carbon::parse($response->start_date)->format('d-m-Y');
|
|
})
|
|
->addColumn('start_time', function ($response) {
|
|
return \Carbon\Carbon::parse($response->start_date)->format('h:i A');
|
|
})
|
|
->addColumn('end_date', function ($response) {
|
|
return \Carbon\Carbon::parse($response->end_date)->format('d-m-Y');
|
|
})
|
|
->addColumn('end_time', function ($response) {
|
|
return \Carbon\Carbon::parse($response->end_date)->format('h:i A');
|
|
})
|
|
->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);
|
|
}
|
|
}
|