Add login and Laravel Pulse

This commit is contained in:
NoBody313
2025-04-20 10:03:36 +07:00
parent 5b8f8ee818
commit 35e675bb5d
21 changed files with 1016 additions and 390 deletions
@@ -1,87 +0,0 @@
<?php
namespace App\Http\Controllers;
use App\Models\AcceptanceLetter;
use Illuminate\Http\Request;
class AcceptanceLetterController extends Controller
{
/**
* Menampilkan semua data Acceptance Letter (GET /acceptance_letters).
*/
public function index()
{
$letters = AcceptanceLetter::all();
return response()->json($letters);
}
/**
* Menyimpan data baru (POST /acceptance_letters).
*/
public function store(Request $request)
{
$request->validate([
'nomor_surat' => 'required',
'nama_mahasiswa' => 'required',
'nomor_induk_mahasiswa' => 'required',
'program_studi_mahasiswa' => 'required',
'tahun_ajaran' => 'required',
'start_date' => 'required|date',
]);
$letter = AcceptanceLetter::create($request->all());
return response()->json([
'message' => 'Acceptance Letter berhasil disimpan.',
'data' => $letter
], 201);
}
/**
* Menampilkan detail data (GET /acceptance_letters/{id}).
*/
public function show($id)
{
$letter = AcceptanceLetter::findOrFail($id);
return response()->json($letter);
}
/**
* Mengupdate data (PUT/PATCH /acceptance_letters/{id}).
*/
public function update(Request $request, $id)
{
$letter = AcceptanceLetter::findOrFail($id);
$request->validate([
'nomor_surat' => 'required',
'nama_mahasiswa' => 'required',
'nomor_induk_mahasiswa' => 'required',
'program_studi_mahasiswa' => 'required',
'tahun_ajaran' => 'required',
'start_date' => 'required|date',
'lampiran' => 'nullable'
]);
$letter->update($request->all());
return response()->json([
'message' => 'Acceptance Letter berhasil diupdate.',
'data' => $letter
]);
}
/**
* Menghapus data (DELETE /acceptance_letters/{id}).
*/
public function destroy($id)
{
$letter = AcceptanceLetter::findOrFail($id);
$letter->delete();
return response()->json([
'message' => 'Acceptance Letter berhasil dihapus.'
]);
}
}
@@ -0,0 +1,44 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class AdminMonitoringController extends Controller
{
public function showLoginForm()
{
return view('monitoring.login');
}
public function login(Request $request)
{
$credentials = $request->validate([
'email' => ['required', 'email'],
'password' => ['required'],
]);
// Ubah dari 'monitor' ke 'monitoring' sesuai config/auth.php
if (Auth::guard('monitoring')->attempt($credentials, $request->filled('remember'))) {
$request->session()->regenerate();
return redirect()->intended('/pulse');
}
return back()->withErrors([
'email' => 'Email atau password salah.',
])->onlyInput('email');
}
public function logout(Request $request)
{
// Ubah dari 'monitor' ke 'monitoring'
Auth::guard('monitoring')->logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
return redirect('/monitoring/login');
}
}
@@ -1,62 +0,0 @@
<?php
namespace App\Http\Controllers;
use App\Models\CompletionLetter;
use Illuminate\Http\Request;
class CompletionLetterController extends Controller
{
public function index()
{
$letters = CompletionLetter::all();
return response()->json($letters);
}
public function store(Request $request)
{
$request->validate([
'nomor_surat' => 'required',
'nama_mahasiswa' => 'required',
'nomor_induk_mahasiswa' => 'required',
'program_studi_mahasiswa' => 'required',
'tahun_ajaran' => 'required',
'completion_date' => 'required|date',
'lampiran' => 'nullable'
]);
$letter = CompletionLetter::create($request->all());
return response()->json([
'message' => 'Completion Letter berhasil disimpan.',
'data' => $letter
], 201);
}
public function show($id)
{
$letter = CompletionLetter::findOrFail($id);
return response()->json($letter);
}
public function update(Request $request, $id)
{
$letter = CompletionLetter::findOrFail($id);
$letter->update($request->all());
return response()->json([
'message' => 'Completion Letter berhasil diupdate.',
'data' => $letter
]);
}
public function destroy($id)
{
$letter = CompletionLetter::findOrFail($id);
$letter->delete();
return response()->json([
'message' => 'Completion Letter berhasil dihapus.'
]);
}
}