penjadwalan-ga/resources/views/admin/pages/guru.blade.php

1469 lines
82 KiB
PHP

@extends('admin.layouts.app')
@section('title', 'Guru')
@push('style')
<style>
.capitalize-text {
text-transform: lowercase;
}
.capitalize-text:first-letter, .capitalize-text:first-line {
text-transform: capitalize;
}
#edit .modal-dialog{
max-width: 800px!important;
}
.profile img{
width: 40px;
height: 40px;
object-fit: cover;
border-radius: 50px;
border: 2px solid rgba(44, 44, 169, 0.3);
}
table tbody td{
vertical-align: middle!important;
}
table thead th{
width: fit-content;
}
.detailModal{
cursor: pointer;
}
.sorting{
width: 100%;
display: flex;
gap: 15px;
flex-wrap: wrap;
}
.category{
position: relative;
cursor: pointer;
font-size: .95em;
}
.category span{
font-size: .8em;
padding: 5px 8px 3px 8px;
}
.category::after{
content: '';
width: 0;
height: 3px;
display: inline-block;
background-color: #6777ef;
position: absolute;
bottom: 0;
left: 0;
transition: .3s;
}
.category.active::after,
.category:hover::after{
width: 23px;
}
.category .detail-sorting{
position: absolute;
width: 400px;
background-color: #6777ef;
color: #fff;
display: none;
bottom: 35px;
left: 0;
padding: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.03);
border-radius: 4px;
font-size: .9em;
line-height: 1.6em;
transition: .3s ease-in-out;
z-index: 9999;
}
/*.category .detail-sorting::before{*/
/* font-family: "Font Awesome 5 Free";*/
/* content: "\f06a";*/
/* font-weight: 900;*/
/* margin-right: 5px;*/
/*}*/
.category:hover .detail-sorting{
display: inline-block;
}
@media screen and (max-width: 800px){
.category .detail-sorting{
width: 360px;
}
}
@media screen and (max-width: 400px){
.category .detail-sorting{
width: 300px;
}
.category:hover .detail-sorting{
display: none;
}
}
.nav-link{
padding: 0;
cursor: pointer;
}
.card-header.tab-list{
min-height: fit-content;
}
.wrap-image {
position: relative;
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
width: 100%;
height: auto;
aspect-ratio: 1/1;
box-sizing: border-box;
border: solid 1px #E5E5E5;
border-radius: 8px;
background-color: #EEE;
font-size: 46px;
color: #00000030;
}
.wrap-image img {
width: 100%;
height: auto;
aspect-ratio: 1/1;
object-fit: cover;
}
.wrap-image .btn {
position: absolute;
bottom: 12px;
right: 12px;
background-color: #f3f6f9CC;
border-color: #f3f6f9CC;
border-radius: 13px;
padding: 0;
width: 35px;
height: 35px;
}
#Detail .modal-body,
#Create .modal-body,
#Edit .modal-body
{
padding-bottom: 110px!important;
min-height: 67vh;
max-height: 80vh;
overflow-y: scroll;
}
#Detail .modal-footer,
#Create .modal-footer,
#Edit .modal-footer
{
background: rgba(255, 255, 255, 0.2);
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
backdrop-filter: blur(5px);
-webkit-backdrop-filter: blur(5px);
position: absolute;
width: 100%;
bottom: 0;
}
#copy{
cursor: pointer;
padding: 10px 10px 10px 4px;
}
.copy-message{
text-align: center;
position: fixed;
bottom: 60px;
left: 50%;
transform: translate(-50%, -50%);
font-size: 1em;
z-index: 100;
padding: 4px 10px;
color: #0bb783;
background: #d7f9ef;
border-radius: 6px;
visibility: hidden;
transition: .3s;
white-space: nowrap;
}
.copy-message.show{
visibility: visible;
bottom: 70px;
}
</style>
@endpush
@section('main')
{{-- delete --}}
<div class="modal fade" id="Delete" tabindex="-1" role="dialog"
aria-labelledby="deleteUserModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="deleteUserModalLabel"><i class="fa-solid fa-bolt p-1 bg-danger text-white" style="border-radius: 4px;"></i> Peringatan Hapus User</h5>
</div>
<div class="modal-body">
<p>Apakah anda yakin ingin menghapus guru ini?</p>
<form id="FormDelete" method="POST" action="">
@csrf
@method('DELETE')
<input type="hidden" name="id" id="delete_id">
<button type="submit" class="btn btn-danger">Hapus</button>
</form>
</div>
</div>
</div>
</div>
<!-- Detail Data -->
{{-- <div class="modal fade" id="Detail" tabindex="-1" role="dialog" aria-labelledby="editUserModalLabel"--}}
{{-- aria-hidden="true">--}}
{{-- <div class="modal-dialog modal-lg modal-dialog-centered" role="document">--}}
{{-- <div class="modal-content">--}}
{{-- <div class="modal-header">--}}
{{-- <h5 class="modal-title" id="editUserModalLabel">Detail Guru</h5>--}}
{{-- <button type="button" class="close" data-dismiss="modal" aria-label="Close">--}}
{{-- <span aria-hidden="true" class="font-weight-normal">&times;</span>--}}
{{-- </button>--}}
{{-- </div>--}}
{{-- <div class="modal-body py-1">--}}
{{-- <div class="d-flex justify-content-center pb-3 mb-1" style="border-bottom: 1.5px solid #efefef;">--}}
{{-- </div>--}}
{{-- <div class="tab-content" id="pills-tabContent">--}}
{{-- <div class="tab-pane fade show active" id="pills-detail-siswa" role="tabpanel" aria-labelledby="pills-detail-siswa-tab">--}}
{{-- <div class="row mb-3 d-flex align-items-center">--}}
{{-- <div class="col-md-3">--}}
{{-- <div class="wrap-image detail-foto">--}}
{{-- <img class="lazy" src="{{ asset('img/bg-load.jpg') }}" data-src="{{ asset('img/kid-man.png') }}" alt="">--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-9 d-flex flex-wrap flex-column justify-content-center justify-content-md-end">--}}
{{-- <div class="mt-2" id="detail-status">--}}
{{-- <br>--}}
{{-- </div>--}}
{{-- <div class="" id="detail-bank">--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="row">--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Nama Guru</label>--}}
{{-- <h6 id="detail-nama">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Tempat Lahir</label>--}}
{{-- <h6 id="detail-tempat-lahir">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Tanggal Lahir</label>--}}
{{-- <h6 id="detail-tanggal-lahir">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Jenis Kelamin</label>--}}
{{-- <h6 id="detail-jeniskelamin">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>No Hp</label>--}}
{{-- <br>--}}
{{-- <a target="_blank" style="font-size: 16px; font-weight:600" class="badge bg-light-success" id="detail-no-hp">-</a>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Email</label>--}}
{{-- <h6 id="detail-email">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Pendidikan Terakhir</label>--}}
{{-- <h6 id="detail-pendidikan-terakhir">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Jurusan</label>--}}
{{-- <h6 id="detail-jurusan">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Divisi</label>--}}
{{-- <h6 id="detail-divisi">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Jabatan</label>--}}
{{-- <h6 id="detail-jabatan">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Mulai Bergabung</label>--}}
{{-- <h6 id="detail-startjoin">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-md-6">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Jenis Pekerja</label>--}}
{{-- <h6 id="detail-jenispekerja">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-12">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Alamat</label>--}}
{{-- <h6 id="detail-alamat">-</h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="col-12">--}}
{{-- <div class="mb-3">--}}
{{-- <label>Talent Mapping</label>--}}
{{-- <br>--}}
{{-- <h6><a href="" id="detail-talent-mapping"><i class="fa-solid fa-download"></i> Lihat Talent Mapping</a></h6>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="tab-pane fade" id="pills-histori-event" role="tabpanel" aria-labelledby="pills-histori-event-tab">--}}
{{-- <table class="table table-bordered" id="event-table">--}}
{{-- <thead>--}}
{{-- <tr>--}}
{{-- <th>Nama Event</th>--}}
{{-- <th>Tanggal Event</th>--}}
{{-- <th>Status</th>--}}
{{-- <th>Kehadiran</th>--}}
{{-- </tr>--}}
{{-- </thead>--}}
{{-- <tbody>--}}
{{-- </tbody>--}}
{{-- </table>--}}
{{-- </div>--}}
{{-- <div class="tab-pane fade" id="pills-histori-kelas" role="tabpanel" aria-labelledby="pills-histori-kelas-tab">--}}
{{-- <table class="table table-bordered" id="kelas-table">--}}
{{-- <thead>--}}
{{-- <tr>--}}
{{-- <th>Nama Kelas</th>--}}
{{-- <th>Jenis Kelas</th>--}}
{{-- <th>Tanggal Bergabung</th>--}}
{{-- <th>Status</th>--}}
{{-- </tr>--}}
{{-- </thead>--}}
{{-- <tbody>--}}
{{-- </tbody>--}}
{{-- </table>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- <div class="modal-footer d-flex justify-content-end">--}}
{{-- <button type="button" class="btn btn-secondary text-dark" data-dismiss="modal">Tutup</button>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div> --}}
{{-- Detail Data --}}
<!-- Add -->
<div class="modal fade" id="Create" tabindex="-1" role="dialog" aria-labelledby="editUserModalLabel"
aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="editUserModalLabel">Tambah Guru</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true" class="font-weight-normal">&times;</span>
</button>
</div>
<div class="modal-body">
<form id="FormCreate" method="POST" action="/admin/guru" enctype="multipart/form-data">
@csrf
@method('POST')
<div class="row">
<div class="col-lg-3 col-md-5 col-12">
<div class="form-group">
<label for="gambar-thumb">Foto</label>
<div class="wrap-image gambar" style="width: 100%!important;">
<i class="fa-solid fa-magnifying-glass bx-lg icon"></i>
<img class="d-none" src="" alt="" style="width: 100%">
<input type="file" class="d-none gambar-thumb" id="gambar-thumb" name="foto" accept="image/*">
</div>
<small>*kosongi jika tidak ada foto</small>
@error('gambar')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>
<div class="row">
<div class="col-lg-6">
<div class="form-group">
<label for="nama" class="form-label">Nama Guru<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="nama" placeholder="Masukkan nama guru" name="nama" value="{{ old('nama') }}">
@error('nama')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="tempat-lahir">Tempat Lahir</label>
<input type="text" class="form-control @error('tempat_lahir') is-invalid @enderror" id="tempat-lahir" placeholder="Masukkan tempat lahir" name="tempat_lahir" value="{{ old('tempat_lahir') }}">
@error('tempat_lahir')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="tanggal-lahir">Tanggal Lahir</label>
<input type="date" class="form-control @error('tanggal_lahir') is-invalid @enderror" id="tanggal-lahir" placeholder="Masukkan tanggal lahir" name="tanggal_lahir" value="{{ old('tanggal_lahir') }}">
@error('tanggal_lahir')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="jenis-kelamin">Jenis Kelamin</label>
<select class="form-control @error('jenis_kelamin') is-invalid @enderror" id="jenis-kelamin" name="jenis_kelamin">
<option selected disabled>--Pilih jenis kelamin anak--</option>
<option value="L" {{ old('jenis_kelamin') == 'L' ? 'selected' : '' }}>L</option>
<option value="P" {{ old('jenis_kelamin') == 'P' ? 'selected' : '' }}>P</option>
</select>
@error('jenis_kelamin')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="nohp" class="form-label">No Hp</label>
<div class="input-group">
<span class="input-group-text" id="basic-addon1" style="font-size: 14px">+62</span>
<input type="number" class="form-control @error('no_hp') is-invalid @enderror" id="nohp" placeholder="Masukkan no hp" name="no_hp" aria-describedby="basic-addon1" value="{{ old('no_hp') }}">
</div>
@error('no_hp')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="email" class="form-label">Email</label>
<input type="email" class="form-control @error('email') is-invalid @enderror" id="email" placeholder="Masukkan email" name="email" value="{{ old('email') }}">
@error('email')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-12">
<div class="form-group">
<label for="alamat" class="form-label">Alamat</label>
<textarea style="height: 100px" class="form-control @error('alamat') is-invalid @enderror" id="alamat" rows="6" placeholder="Masukkan alamat lengkap guru" name="alamat">{{ old('alamat') }}</textarea>
@error('alamat')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
{{-- <div class="col-lg-12">--}}
{{-- <div class="form-group">--}}
{{-- <label for="gmaps">Gmaps</label>--}}
{{-- <input type="text" class="form-control @error('gmaps') is-invalid @enderror" id="gmaps" placeholder="Masukkan gmaps" name="gmaps" value="{{ old('gmaps') }}">--}}
{{-- @error('gmaps')--}}
{{-- <div class="invalid-feedback">--}}
{{-- {{ $message }}--}}
{{-- </div>--}}
{{-- @enderror--}}
{{-- </div>--}}
{{-- </div>--}}
<div class="col-lg-6">
<div class="form-group">
<label for="pendidikan-terakhir" class="form-label">Pendidikan Terakhir</label>
<input type="text" class="form-control @error('pendidikan_terakhir') is-invalid @enderror" id="pendidikan-terakhir" placeholder="Masukkan pendidikan terakhir" name="pendidikan_terakhir" value="{{ old('pendidikan_terakhir') }}">
@error('pendidikan_terakhir')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="instansi-pendidikan" class="form-label">Instansi Pendidikan</label>
<input type="text" class="form-control @error('instansi_pendidikan') is-invalid @enderror" id="instansi-pendidikan" placeholder="Masukkan nama instansi pendidikan" name="instansi_pendidikan" value="{{ old('instansi_pendidikan') }}">
@error('instansi_pendidikan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="jurusan" class="form-label">Jurusan</label>
<input type="text" class="form-control @error('jurusan') is-invalid @enderror" id="jurusan" placeholder="Masukkan jurusan" name="jurusan" value="{{ old('jurusan') }}">
@error('jurusan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="divisi">Divisi</label>
<select class="form-control @error('divisi') is-invalid @enderror" id="divisi" name="divisi">
<option selected disabled>--Pilih divisi--</option>
@foreach($divisi_guru as $divisi)
<option value="{{ $divisi->nama_divisi }}" {{ old('divisi') == $divisi->nama_divisi ? 'selected' : '' }}>{{ $divisi->nama_divisi }}</option>
@endforeach
</select>
@error('jenis_kelamin')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="jabatan" class="form-label">Jabatan</label>
<input type="text" class="form-control @error('jabatan') is-invalid @enderror" id="jabatan" placeholder="Masukkan jabatan" name="jabatan" value="{{ old('jabatan') }}">
@error('jabatan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="level-maksimal" class="form-label">Level Maksimal Diajar <span class="text-muted">(Opsional)</span></label>
<select class="form-control @error('level_maksimal') is-invalid @enderror" id="level-maksimal" name="level_maksimal">
<option value="">-- Pilih Level Maksimal --</option>
<option value="1" {{ old('level_maksimal') == 1 ? 'selected' : '' }}>1 = Beginner</option>
<option value="2" {{ old('level_maksimal') == 2 ? 'selected' : '' }}>2 = Basic</option>
<option value="3" {{ old('level_maksimal') == 3 ? 'selected' : '' }}>3 = Intermediate</option>
<option value="4" {{ old('level_maksimal') == 4 ? 'selected' : '' }}>4 = Advance</option>
</select>
@error('level_maksimal')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="start-join">Start Join<span class="text-danger">*</span></label>
<input type="date" class="form-control @error('start_join') is-invalid @enderror" id="start-join" name="start_join" value="{{ old('start_join') }}" required>
@error('start_join')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="pekerja">Jenis Pekerja</label>
<select class="form-control @error('pekerja') is-invalid @enderror" id="pekerja" name="pekerja">
<option selected disabled>--Pilih jenis pekerja--</option>
<option value="Tetap" {{ old('pekerja') == 'Tetap' ? 'selected' : '' }}>Tetap</option>
<option value="Kontrak" {{ old('pekerja') == 'Kontrak' ? 'selected' : '' }}>Kontrak</option>
<option value="Freelance" {{ old('pekerja') == 'Freelance' ? 'selected' : '' }}>Freelance</option>
<option value="Magang" {{ old('pekerja') == 'Magang' ? 'selected' : '' }}>Magang</option>
</select>
@error('pekerja')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="status">Status<span class="text-danger">*</span></label>
<select class="form-control @error('status') is-invalid @enderror" id="status" name="status">
<option selected disabled>--Pilih status--</option>
<option value="Aktif" {{ old('status') == 'Tetap' ? 'selected' : '' }}>Aktif</option>
<option value="Non Aktif" {{ old('status') == 'Kontrak' ? 'selected' : '' }}>Non Aktif</option>
</select>
@error('status')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="no-rekening" class="form-label">No Rekening</label>
<input type="text" class="form-control @error('no_rekening') is-invalid @enderror" id="no-rekening" placeholder="Masukkan no rekening" name="no_rekening" value="{{ old('no_rekening') }}">
@error('no_rekening')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="bank-keterangan" class="form-label">Bank Keterangan</label>
<input type="text" class="form-control @error('bank_keterangan') is-invalid @enderror" id="bank-keterangan" placeholder="Ex. BCA A/N: Khoirul Anam" name="bank_keterangan" value="{{ old('bank_keterangan') }}">
@error('bank_keterangan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-12">
<div class="form-group">
<label for="talent-mapping" class="form-label">Talent Mapping</label>
<input type="file" class="form-control @error('talent_mapping') is-invalid @enderror" id="talent-mapping" placeholder="Masukkan talent mapping" name="talent_mapping" value="{{ old('talent_mapping') }}" accept="application/pdf">
@error('talent_mapping')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary text-dark" data-dismiss="modal">Tutup</button>
<button type="submit" class="btn btn-primary tambah-btn" form="FormCreate"><i class='bx bx-loader bx-spin d-none'></i> Simpan</button>
</div>
</div>
</div>
</div>
{{-- Add --}}
<!-- edit -->
<div class="modal fade" id="Edit" tabindex="-1" role="dialog" aria-labelledby="editUserModalLabel"
aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="editUserModalLabel">Edit Guru</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true" class="font-weight-normal">&times;</span>
</button>
</div>
<div class="modal-body">
<form id="FormEdit" method="POST" action="" enctype="multipart/form-data">
@csrf
@method('PUT')
<div class="row">
<div class="col-lg-3 col-md-5 col-12">
<div class="form-group">
<label for="gambaredit-thumb">Foto</label>
<div class="wrap-image gambaredit" style="width: 100%!important;">
<i class="fa-solid fa-magnifying-glass bx-lg icon"></i>
<img class="d-none" src="" alt="" style="width: 100%">
<input type="file" class="d-none gambaredit-thumb" id="gambaredit-thumb" name="foto" accept="image/*">
</div>
<small>*klik untuk mengganti foto</small>
@error('gambar')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>
<div class="row">
<div class="col-lg-6">
<div class="form-group">
<label for="update-nama" class="form-label">Nama Guru<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="update-nama" placeholder="Masukkan nama guru" name="nama" value="{{ old('nama') }}">
@error('nama')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-tempat-lahir">Tempat Lahir</label>
<input type="text" class="form-control @error('tempat_lahir') is-invalid @enderror" id="update-tempat-lahir" placeholder="Masukkan tempat lahir" name="tempat_lahir" value="{{ old('tempat_lahir') }}">
@error('tempat_lahir')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-tanggal-lahir">Tanggal Lahir</label>
<input type="date" class="form-control @error('tanggal_lahir') is-invalid @enderror" id="update-tanggal-lahir" placeholder="Masukkan tanggal lahir" name="tanggal_lahir" value="{{ old('tanggal_lahir') }}">
@error('tanggal_lahir')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-jenis-kelamin">Jenis Kelamin</label>
<select class="form-control @error('jenis_kelamin') is-invalid @enderror" id="update-jenis-kelamin" name="jenis_kelamin">
<option selected disabled>--Pilih jenis kelamin anak--</option>
<option value="L" {{ old('jenis_kelamin') == 'L' ? 'selected' : '' }}>L</option>
<option value="P" {{ old('jenis_kelamin') == 'P' ? 'selected' : '' }}>P</option>
</select>
@error('jenis_kelamin')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-nohp" class="form-label">No Hp</label>
<div class="input-group">
<span class="input-group-text" id="basic-addon1" style="font-size: 14px">+62</span>
<input type="number" class="form-control @error('no_hp') is-invalid @enderror" id="update-nohp" placeholder="Masukkan no hp" name="no_hp" aria-describedby="basic-addon1" value="{{ old('no_hp') }}">
</div>
@error('no_hp')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-email" class="form-label">Email</label>
<input type="email" class="form-control @error('email') is-invalid @enderror" id="update-email" placeholder="Masukkan email" name="email" value="{{ old('email') }}">
@error('email')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-12">
<div class="form-group">
<label for="update-alamat" class="form-label">Alamat</label>
<textarea style="height: 100px" class="form-control @error('alamat') is-invalid @enderror" id="update-alamat" rows="6" placeholder="Masukkan alamat lengkap guru" name="alamat">{{ old('alamat') }}</textarea>
@error('alamat')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-pendidikan-terakhir" class="form-label">Pendidikan Terakhir</label>
<input type="text" class="form-control @error('pendidikan_terakhir') is-invalid @enderror" id="update-pendidikan-terakhir" placeholder="Masukkan pendidikan terakhir" name="pendidikan_terakhir" value="{{ old('pendidikan_terakhir') }}">
@error('pendidikan_terakhir')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-instansi-pendidikan" class="form-label">Instansi Pendidikan</label>
<input type="text" class="form-control @error('instansi_pendidikan') is-invalid @enderror" id="update-instansi-pendidikan" placeholder="Masukkan nama instansi pendidikan" name="instansi_pendidikan" value="{{ old('instansi_pendidikan') }}">
@error('instansi_pendidikan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-jurusan" class="form-label">Jurusan</label>
<input type="text" class="form-control @error('jurusan') is-invalid @enderror" id="update-jurusan" placeholder="Masukkan jurusan" name="jurusan" value="{{ old('jurusan') }}">
@error('jurusan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-divisi">Divisi</label>
<select class="form-control @error('divisi') is-invalid @enderror" id="update-divisi" name="divisi">
<option selected disabled>--Pilih divisi--</option>
@foreach($divisi_guru as $divisi)
<option value="{{ $divisi->nama_divisi }}" {{ old('divisi') == $divisi->nama_divisi ? 'selected' : '' }}>{{ $divisi->nama_divisi }}</option>
@endforeach
</select>
@error('jenis_kelamin')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-jabatan" class="form-label">Jabatan</label>
<input type="text" class="form-control @error('jabatan') is-invalid @enderror" id="update-jabatan" placeholder="Masukkan jabatan" name="jabatan" value="{{ old('jabatan') }}">
@error('jabatan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-level-maksimal" class="form-label">Level Maksimal Diajar <span class="text-muted">(Opsional)</span></label>
<select class="form-control @error('level_maksimal') is-invalid @enderror" id="update-level-maksimal" name="level_maksimal">
<option value="">-- Pilih Level Maksimal --</option>
<option value="1">1 = Beginner</option>
<option value="2">2 = Basic</option>
<option value="3">3 = Intermediate</option>
<option value="4">4 = Advance</option>
</select>
@error('level_maksimal')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-start-join">Start Join<span class="text-danger">*</span></label>
<input type="date" class="form-control @error('start_join') is-invalid @enderror" id="update-start-join" name="start_join" value="{{ old('start_join') }}" required>
@error('start_join')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-pekerja">Jenis Pekerja</label>
<select class="form-control @error('pekerja') is-invalid @enderror" id="update-pekerja" name="pekerja">
<option selected disabled>--Pilih jenis pekerja--</option>
<option value="Tetap" {{ old('pekerja') == 'Tetap' ? 'selected' : '' }}>Tetap</option>
<option value="Kontrak" {{ old('pekerja') == 'Kontrak' ? 'selected' : '' }}>Kontrak</option>
<option value="Freelance" {{ old('pekerja') == 'Freelance' ? 'selected' : '' }}>Freelance</option>
<option value="Magang" {{ old('pekerja') == 'Magang' ? 'selected' : '' }}>Magang</option>
</select>
@error('pekerja')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-status">Status<span class="text-danger">*</span></label>
<select class="form-control @error('status') is-invalid @enderror" id="update-status" name="status">
<option selected disabled>--Pilih status--</option>
<option value="Aktif" {{ old('status') == 'Tetap' ? 'selected' : '' }}>Aktif</option>
<option value="Non Aktif" {{ old('status') == 'Kontrak' ? 'selected' : '' }}>Non Aktif</option>
</select>
@error('status')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-no-rekening" class="form-label">No Rekening</label>
<input type="text" class="form-control @error('no_rekening') is-invalid @enderror" id="update-no-rekening" placeholder="Masukkan no rekening" name="no_rekening" value="{{ old('no_rekening') }}">
@error('no_rekening')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label for="update-bank-keterangan" class="form-label">Bank Keterangan</label>
<input type="text" class="form-control @error('bank_keterangan') is-invalid @enderror" id="update-bank-keterangan" placeholder="Ex. BCA A/N: Gamma Kristian" name="bank_keterangan" value="{{ old('bank_keterangan') }}">
@error('bank_keterangan')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="col-lg-12">
<div class="form-group">
<label for="update-talent-mapping" class="form-label">Talent Mapping<small>*Masukkan file baru jika ingin mengganti</small></label>
<input type="file" class="form-control @error('talent_mapping') is-invalid @enderror" id="update-talent-mapping" placeholder="Masukkan talent mapping" name="talent_mapping" value="{{ old('talent_mapping') }}" accept="application/pdf">
@error('talent_mapping')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>
<input type="hidden" id="edit_id">
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary text-dark" data-dismiss="modal">Tutup</button>
<button type="submit" class="btn btn-primary edit-btn" form="FormEdit"><i class='bx bx-loader bx-spin d-none'></i> Simpan</button>
</div>
</div>
</div>
</div>
{{-- edit --}}
<div class="main-content">
<section class="section">
<div class="section-header" style="display: flex; justify-content: space-between; align-items: center">
<h1>Guru</h1>
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#Create">Tambah Guru</button>
</div>
<div class="section-body">
<div class="row">
<div class="col-12">
<div class="card" id="id-table">
<div class="card-header">
<div class="sorting">
<div class="category active" data-category="Semua">Semua
<span class="badge bg-secondary">30</span>
<div class="detail-sorting">Menampilkan semua guru</div>
</div>
<div class="category" data-category="Aktif">Aktif
<span class="badge bg-secondary">0</span>
<div class="detail-sorting">Menampilkan guru yang masih aktif</div>
</div>
<div class="category" data-category="Non-Aktif">Non Aktif
<span class="badge bg-secondary">0</span>
<div class="detail-sorting">Menampilkan guru yang telah non aktif</div>
</div>
</div>
<div class="card-header-form ">
<form>
<div class="input-group">
<input type="search" class="search form-control" placeholder="Search">
<div class="input-group-btn">
<span class="btn bg-primary text-white" style="cursor: text; border-top-left-radius: 0; border-bottom-left-radius: 0"><i class="fas fa-search"></i></span>
</div>
</div>
</form>
</div>
</div>
<div class="card-body">
<div class="table-responsive table-hover">
<table class="table-striped table-md table" id="pesertaTable">
<thead>
<tr>
<th scope="col" width="5%" class="sort asc text-center full-text" data-sort="no">#</th>
<th scope="col" width="7%" >Foto</th>
<th scope="col" width="18%" class="sort" data-sort="nama">Nama Guru</th>
<th scope="col" width="9%" class="hidden-sm sort" data-sort="nohp">No Hp</th>
<th scope="col" width="10%" class="hidden-sm sort" data-sort="ttl">TTL</th>
<th scope="col" width="12%" class="hidden-sm sort full-text" data-sort="level-maksimal">Level Maksimal</th>
<th scope="col" width="13%" class="hidden-sm sort full-text" data-sort="pendidikan-terakhir">Pend. Terakhir</th>
<th scope="col" width="8%" class="hidden-sm sort full-text" data-sort="status">Status</th>
<th scope="col" width="10%" style="text-align: center">Action</th>
</tr>
</thead>
<tbody class="list">
@php
$levelMaxMap = [
1 => '1 - Beginner',
2 => '2 - Basic',
3 => '3 - Intermediate',
4 => '4 - Advance',
];
@endphp
@foreach($data as $item)
<tr class="status-{{ str_replace(' ', '-', $item->status) }}">
<td valign="middle" class="no text-center detailModal" data-id="{{ $item->id }}" scope="row">{{ $loop->iteration }}</td>
<td valign="middle" class="detailModal profile" data-id="{{ $item->id }}">
@if($item->foto == null || $item->foto == "")
@if($item->jenis_kelamin == 'P')
<img class="lazy" src="{{ asset('img/bg-load.jpg') }}" data-src="{{ asset('img/kid-woman.png') }}">
@else
<img class="lazy" src="{{ asset('img/bg-load.jpg') }}" data-src="{{ asset('img/kid-man.png') }}">
@endif
@else
<img class="lazy" src="{{ asset('img/bg-load.jpg') }}" data-src="{{ asset('storage/' . $item->foto) }}">
@endif
</td>
<td valign="middle" class="nama detailModal capitalize-text full-text" data-id="{{ $item->id }}" scope="row">{{ $item->nama }}</td>
<td valign="middle" class="nohp hidden-sm" data-id="{{ $item->id }}" scope="row">
<a class="badge bg-light-success" target="_blank" href="https://wa.me/62{{ $item->no_hp }}"><i class="fa-brands fa-whatsapp"></i> +62{{ $item->no_hp }}</a>
</td>
<td valign="middle" class="ttl hidden-sm detailModal capitalize-text" data-id="{{ $item->id }}" scope="row">
<span class="badge bg-light-secondary capitalize-text" style="">{{ $item->tempat_lahir }}</span>
<br>
<span class="badge bg-light-primary mt-1 p-1" style="border-radius: 4px!important; font-size: 0.7em">{{ \Carbon\Carbon::parse($item->tanggal_lahir)->locale('id')->translatedFormat('d M Y') }}</span>
</td>
<td valign="middle" class="level-maksimal hidden-sm detailModal text-center" data-id="{{ $item->id }}" scope="row">
@if($item->level_maksimal && isset($levelMaxMap[$item->level_maksimal]))
<span class="badge bg-light-info">{{ $levelMaxMap[$item->level_maksimal] }}</span>
@else
<span class="text-muted">-</span>
@endif
</td>
<td valign="middle" class="pendidikan-terakhir hidden-sm detailModal text-center" data-id="{{ $item->id }}" scope="row">
{{ $item->pendidikan_terakhir }}
</td>
<td valign="middle" class="hidden-sm detailModal" data-id="{{ $item->id }}" scope="row">
@if($item->status == 'Aktif')
<span class="status badge bg-light-primary">{{ str_replace(' ', '-', $item->status) }}</span>
@elseif($item->status == 'Non Aktif')
<span class="status badge bg-light-danger">{{ str_replace(' ', '-', $item->status) }}</span>
@endif
</td>
<td valign="middle" scope="row">
<div class="action d-flex justify-content-center align-items-center gap-1">
<button type="button" class="btn edit-data" data-id="{{ $item->id }}" data-toggle="modal"
data-target="#Edit">
<i class="fa-regular fa-pen-to-square"></i>
</button>
<button type="button" class="btn delete-data" data-id="{{ $item->id }}" data-toggle="modal"
data-target="#Delete">
<i class="fa-regular fa-trash-can"></i>
</button>
</div>
</td>
</tr>
@endforeach
</tbody>
<tbody class="not-found" style="">
<tr>
<td colspan="9" class="text-center">-- Data Kosong --</td>
</tr>
</tbody>
</table>
</div>
<div class="d-flex justify-content-between">
<div class="d-flex">
<label for="entries">Tampilkan</label>
<select class="form-control p-0" id="entries" style="height: fit-content; width: fit-content">
<option value="25">25</option>
<option value="50">50</option>
<option value="100">100</option>
<option value="-1">Semua</option>
</select> Data
</div>
<ul class="pagination"></ul>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
@endsection
@push('scripts')
<script src="{{ asset('library/listjs/list.min.js') }}"></script>
<script>
$('.wrap-image.gambar').on('click', function () {
$('.gambar-thumb')[0].click()
})
$('.gambar-thumb').change(function(){
readURL(this, '.gambar')
})
$('.wrap-image.gambarplaadd').on('click', function () {
$('.gambarplaadd-thumb')[0].click()
})
$('.gambarplaadd-thumb').change(function(){
readURL(this, '.gambarplaadd')
})
$('.wrap-image.gambaredit').on('click', function () {
$('.gambaredit-thumb')[0].click()
})
$('.gambaredit-thumb').change(function(){
readURL(this, '.gambaredit')
})
$('.wrap-image.gambarplaedit').on('click', function () {
$('.gambarplaedit-thumb')[0].click()
})
$('.gambarplaedit-thumb').change(function(){
readURL(this, '.gambarplaedit')
})
function readURL(input, type) {
if (input.files && input.files[0]) {
var reader = new FileReader()
let image = `.wrap-image${type} img`
let icon = `.wrap-image${type} .icon`
reader.onload = function (e) {
$(image).removeClass('d-none').addClass('d-inline').attr('src', e.target.result)
$(icon).addClass('d-none')
};
reader.readAsDataURL(input.files[0])
}
}
$(document).ready(function () {
const options = {
valueNames: ['no', 'nama', 'nohp', 'ttl', 'pekerja', 'level-maksimal', 'pendidikan-terakhir', 'status'],
page: 25,
pagination: true
};
const tableList = new List('id-table', options);
document.getElementById('entries').addEventListener('change', function () {
var perPage = parseInt(this.value, 10);
tableList.page = perPage === -1 ? tableList.items.length : perPage;
tableList.update();
});
checkEmptyData();
$('.category').on('click', function() {
const category = $(this).data('category');
$('.category').removeClass('active');
$(this).addClass('active');
// console.info(category);
if (category === 'Semua') {
tableList.filter();
} else {
tableList.filter(function(item) {
return item.values().status === category;
});
}
checkEmptyData()
});
function checkEmptyData() {
let num = $('.list').children().length
if (num === 0) {
$('.not-found').show()
$('.list').hide()
} else {
$('.not-found').hide()
$('.list').show()
$.ajax({
url: `/admin/guru-get-count`,
method: 'GET',
success: function (response) {
$('.category').each(function() {
const category = $(this).data('category');
let count = 0;
if (category === "Semua") {
count = response.Semua;
} else {
count = response[category] || 0;
}
$('.category[data-category="' + category + '"] .badge').text(count);
$(this).find('.badge').text(count);
});
},
error: function () {
alert('Gagal mengambil data. Silakan coba lagi.');
}
});
}
}
function openModal(data) {
$('#update-nama').val(data.nama);
$('#update-nohp').val(data.no_hp);
$('#update-email').val(data.email);
$('#update-tempat-lahir').val(data.tempat_lahir);
$('#update-tanggal-lahir').val(data.tanggal_lahir);
$('#update-alamat').val(data.alamat);
$('#update-pendidikan-terakhir').val(data.pendidikan_terakhir);
$('#update-instansi-pendidikan').val(data.instansi_pendidikan);
$('#update-jurusan').val(data.jurusan);
$('#update-start-join').val(data.start_join);
$('#update-no-rekening').val(data.no_rekening);
$('#update-bank-keterangan').val(data.bank_keterangan);
$('#update-jabatan').val(data.jabatan);
$('#update-level-maksimal').val(data.level_maksimal || '');
$(`#update-jenis-kelamin option[value=${data.jenis_kelamin}]`).attr('selected', 'selected')
$(`#update-pekerja option[value=${data.pekerja}]`).attr('selected', 'selected')
$('#update-divisi option').filter(function() {
return $(this).text().trim() == data.divisi;
}).prop('selected', true);
$('#update-status option').filter(function() {
return $(this).text().trim() == data.status;
}).prop('selected', true);
const jenisKelamin = data.jenis_kelamin;
const assetBaseUrl = "{{ asset('storage') }}/";
const imageMan = "{{ asset('img/kid-man.png') }}";
const imageWoman = "{{ asset('img/kid-woman.png') }}";
const gambarUrl = data.foto;
if (gambarUrl){
const gambarUrl = assetBaseUrl + data.foto;
$(".wrap-image.gambaredit img").attr('src', gambarUrl).removeClass('d-none').addClass('d-inline');
$(".wrap-image.gambaredit .icon").addClass('d-none');
}else{
if (jenisKelamin === "L"){
$(".wrap-image.gambaredit img").attr('src', imageMan).removeClass('d-none').addClass('d-inline');
$(".wrap-image.gambaredit .icon").addClass('d-none');
}else if(jenisKelamin === "P"){
$(".wrap-image.gambaredit img").attr('src', imageWoman).removeClass('d-none').addClass('d-inline');
$(".wrap-image.gambaredit .icon").addClass('d-none');
}
else{
$(".wrap-image.gambaredit img").addClass('d-none').removeClass('d-inline');
$(".wrap-image.gambaredit .icon").removeClass('d-none');
}
}
}
$(document).on('click', '.edit-data', function(e) {
e.preventDefault();
let id = $(this).data('id');
$.ajax({
url: `/admin/guru-get/${id}`,
method: 'GET',
success: function (response) {
openModal(response);
},
error: function () {
alert('Gagal mengambil data. Silakan coba lagi.');
}
});
$("#FormEdit").attr('action', `/admin/guru-update/${id}`);
});
$('.list').on('click', '.detailModal', function(e) {
let id = $(this).data('id');
window.location.href = `/admin/guru/${id}/detail`;
});
/* =======================================================
* Kode lama: detail menggunakan modal (dinonaktifkan)
* Sekarang detail dialihkan ke halaman terpisah (guru_detail.blade.php)
* ======================================================= */
/*
$('.list').on('click', '.detailModal', function(e) {
$('#Detail').modal('show');
let id = $(this).data('id');
$.ajax({
url: `/admin/guru-get/${id}`,
method: 'GET',
success: function (response) {
let bank = null;
if(response.no_rekening){
bank = `
<label><span id="no-account">${response.no_rekening}</span> ${response.bank_keterangan}</label>
<i class="fa-regular fa-copy" id="copy"></i>
<span class="copy-message">Teks disalin ke clipboard</span>`
}else{
bank = `<label>-</label>`;
}
$('#detail-nama').text(response.nama ?? 'Belum Diisi');
$('#detail-tempat-lahir').text(response.tempat_lahir ?? 'Belum Diisi');
$('#detail-tanggal-lahir').text(response.tanggal_lahir_parse ?? 'Belum Diisi');
let noHp = `<i class="fa-brands fa-whatsapp"></i> +62${response.no_hp}`;
let linkWa = `https://wa.me/62${response.no_hp}`;
const detailNoHpOrangTua = $('#detail-no-hp');
detailNoHpOrangTua.html(noHp);
detailNoHpOrangTua.attr('href', linkWa);
$('#detail-email').text(response.email ?? 'Belum Diisi');
$('#detail-pendidikan-terakhir').text(response.pendidikan_terakhir ? `${response.pendidikan_terakhir} ${response.instansi_pendidikan}` : 'Belum Diisi');
$('#detail-jurusan').text(response.jurusan ?? 'Belum Diisi');
$('#detail-divisi').text(response.divisi ?? 'Belum Diisi');
$('#detail-jabatan').text(response.jabatan ?? 'Belum Diisi');
$('#detail-startjoin').text(response.start_join_parse ?? 'Belum Diisi');
$('#detail-bank').html(bank);
$('#detail-jenispekerja').text(response.pekerja ?? 'Belum Diisi');
$('#detail-alamat').text(response.alamat ?? 'Belum Diisi');
let labelStatus = `<label class="badge bg-light-danger">Status ${response.status}</label>`;
if(response.status === "Aktif"){
labelStatus = `<label class="badge bg-light-primary">Status ${response.status}</label>`
}
$('#detail-status').html(labelStatus);
const jeniskelaminselect = $('#detail-jeniskelamin');
jeniskelaminselect.text(response.jenis_kelamin ?? 'Belum Diisi');
$('#detail-keterangan').text(response.keterangan ?? 'Belum Diisi');
const jenisKelamin = response.jenis_kelamin;
if (jenisKelamin === "L") {
jeniskelaminselect.text("Laki - Laki");
} else if (jenisKelamin === "P") {
jeniskelaminselect.text("Perempuan");
}
const assetBaseUrl = "{{ asset('storage') }}/";
const imageMan = "{{ asset('img/kid-man.png') }}";
const imageWoman = "{{ asset('img/kid-woman.png') }}";
const gambarUrl = response.foto;
if (response.talent_mapping) {
let talentMapping = response.talent_mapping.startsWith('http') ?
response.talent_mapping :
`${assetBaseUrl}/${response.talent_mapping}`;
$('#detail-talent-mapping').attr('href', talentMapping);
} else {
$('#detail-talent-mapping').removeAttr('href').text('-');
}
if (gambarUrl) {
const gambarUrl = assetBaseUrl + response.foto;
$(".wrap-image.detail-foto img").attr('data-src', gambarUrl);
} else {
if (jenisKelamin === "L") {
$(".wrap-image.detail-foto img").attr('data-src', imageMan);
} else if (jenisKelamin === "P") {
$(".wrap-image.detail-foto img").attr('data-src', imageWoman);
} else {
$(".wrap-image.detail-foto img").attr('data-src', '');
}
}
const lazyImages = $('img.lazy');
const observer = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const img = entry.target;
const src = $(img).attr('data-src');
if (src) {
$(img).attr('src', src).removeAttr('data-src');
$(img).on('load', function () {
$(img).addClass('loaded');
});
}
observer.unobserve(img);
}
});
});
// Observasi semua gambar lazy
setTimeout(() => {
lazyImages.each(function () {
observer.observe(this);
});
}, 50);
$('#copy').on('click', function() {
const text = $('#no-account').text();
navigator.clipboard.writeText(text)
.then(() => {
$('.copy-message').addClass('show');
setTimeout(() => {
$('.copy-message').removeClass('show');
}, 2000);
})
.catch(err => {
console.info('Gagal menyalin teks');
console.error(err);
});
});
},
error: function () {
alert('Gagal mengambil data. Silakan coba lagi.');
}
});
});
*/
$(document).on('click', '.delete-data', function(e) {
let id = $(this).data('id');
$('#delete_id').val(id);
$("#FormDelete").attr('action',
`/admin/delete-guru/${id}`);
});
$(".tambah-btn").on("click", function () {
let $this = $(this);
let loader = $this.find(".bx-loader");
loader.removeClass("d-none");
$this.prop("disabled", true);
$("#FormCreate").submit();
});
$(".edit-btn").on("click", function () {
let $this = $(this);
let loader = $this.find(".bx-loader");
loader.removeClass("d-none");
$this.prop("disabled", true);
$("#FormEdit").submit();
});
});
</script>
@endpush