nik unique

parent ff05393b
...@@ -99,6 +99,14 @@ public function group_kegiatan(Request $request){ ...@@ -99,6 +99,14 @@ public function group_kegiatan(Request $request){
return view('form_kegiatan_kelompok', $data); return view('form_kegiatan_kelompok', $data);
} }
public function nikUnique($nik)
{
$count = Anggota::query()->where('nik', $nik)->count();
$count += Registrasi::query()->where('nik', $nik)->count();
return $count == 0;
}
public function preview(Request $request){ public function preview(Request $request){
//cek jika kelompok atau tidak //cek jika kelompok atau tidak
...@@ -426,6 +434,10 @@ public function addFormAnggota(Request $request) ...@@ -426,6 +434,10 @@ public function addFormAnggota(Request $request)
'telepon' => $request->telepon, 'telepon' => $request->telepon,
]; ];
if(!$this->nikUnique($request->nik)){
return response('nik sudah terdaftar sebelumnya', 403);
}
return view('row_anggota', $data); return view('row_anggota', $data);
} }
......
...@@ -187,6 +187,23 @@ function hapusKegiatan(id){ ...@@ -187,6 +187,23 @@ function hapusKegiatan(id){
function tambahAnggota() function tambahAnggota()
{ {
if($('#nik_anggota').val() === '' || $('#nama_anggota').val() === '' || $('#email_anggota').val() === '' || $('#telepon_anggota').val() === ''){
alert('input anggota harus lengkap');
return true;
}
for (let key in anggota) {
if (anggota[key].nik === $('#nik_anggota').val()) {
alert('nik anggota harus unik');
return true; // Return true if nik exists
}
if (anggota[key].email === $('#email_anggota').val()) {
alert('email anggota harus unik');
return true; // Return true if nik exists
}
}
let token = '{{ csrf_token() }}'; let token = '{{ csrf_token() }}';
var request = $.ajax({ var request = $.ajax({
...@@ -223,8 +240,12 @@ function tambahAnggota() ...@@ -223,8 +240,12 @@ function tambahAnggota()
iA++; iA++;
}, },
error: function(error) { error: function(xhr) {
alert('periksa koneksi anda'); if (xhr.status === 403) {
alert(xhr.responseText); // Error message
} else {
alert('An unexpected error occurred.'); // Fallback error message
}
} }
}); });
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment