feat(usermanagement): update user profile validation to handle nullable NIK and improve signature handling

This commit is contained in:
Sholahuddin Al Ayubi
2025-12-16 15:48:16 +07:00
parent 8b51a4f039
commit 5e0544f375

View File

@@ -286,15 +286,15 @@ class UsersController extends Controller
$validatedData = $request->validate([
'name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users,email,' . $user->id,
'nik' => 'nullable|string|max:255',
'sign' => 'nullable|image|mimes:jpeg,png,jpg,gif|max:2048',
]);
$user->name = $validatedData['name'];
$user->email = $validatedData['email'];
$user->nik = $validatedData['nik'];
$user->nik = $validatedData['nik'] ?? $user->nik;
if ($request->hasFile('sign')) {
// Delete old e-sign if exists
if ($user->sign) {
Storage::disk('public')->delete('signatures/' . $user->id . '/' . $user->sign);
}
@@ -302,11 +302,9 @@ class UsersController extends Controller
$sign = $request->file('sign');
$signName = time() . '.' . $sign->getClientOriginalExtension();
// Make sure the directory exists
Storage::disk('public')->makeDirectory('signatures/' . $user->id);
// Store the file
$sign->storeAs('signatures/' . $user->id, $signName, 'public');
$user->sign = $signName;
}