144 lines
5.7 KiB
PHP
144 lines
5.7 KiB
PHP
@extends('admin.layouts.app')
|
|
|
|
@section('title', 'Data Guru')
|
|
|
|
@section('content')
|
|
<section class="section">
|
|
<div class="section-header">
|
|
<h1>Data Guru</h1>
|
|
<div class="section-header-breadcrumb">
|
|
<div class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Dashboard</a></div>
|
|
<div class="breadcrumb-item active">Data Guru</div>
|
|
</div>
|
|
</div>
|
|
|
|
{{-- Notifikasi sukses --}}
|
|
@if (session('success'))
|
|
<div class="alert alert-success alert-dismissible show fade">
|
|
<div class="alert-body">
|
|
{{ session('success') }}
|
|
<button class="close" data-dismiss="alert">
|
|
<span>×</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
@endif
|
|
|
|
<div class="section-body">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h4>Filter, Import/Export & Data Guru</h4>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="d-flex justify-content-between flex-wrap mb-4 gap-3">
|
|
|
|
{{-- Filter --}}
|
|
<form method="GET" action="{{ route('admin.guru.index') }}" class="form-inline">
|
|
<div class="form-group mb-2 d-flex align-items-center gap-2">
|
|
<input type="text" name="nip" id="nip" value="{{ request('nip') }}" class="form-control" placeholder="Cari NIP">
|
|
|
|
{{-- Filter Tahun Ajaran --}}
|
|
<select name="tahun_ajaran_id" id="tahun_ajaran_id" class="form-control">
|
|
<option value="">-- Pilih Tahun Ajaran --</option>
|
|
@foreach($tahunAjaranList as $tahunAjaran)
|
|
<option value="{{ $tahunAjaran->id }}" {{ request('tahun_ajaran_id') == $tahunAjaran->id ? 'selected' : '' }}>
|
|
{{ $tahunAjaran->tahun }}{{ $tahunAjaran->semester }}
|
|
</option>
|
|
@endforeach
|
|
</select>
|
|
<button type="submit" class="btn btn-primary">Filter</button>
|
|
</div>
|
|
</form>
|
|
|
|
{{-- Tombol Import, Export, Tambah --}}
|
|
<div>
|
|
{{-- Import --}}
|
|
<form action="{{ route('admin.guru.import') }}" method="POST" enctype="multipart/form-data" id="importForm" class="d-inline">
|
|
@csrf
|
|
<input type="file" name="file" id="file" class="d-none" onchange="document.getElementById('importForm').submit()" required>
|
|
<label for="file" class="btn btn-success mb-0" title="Import Excel" style="cursor: pointer;">
|
|
<i class="fas fa-file-import"></i>
|
|
</label>
|
|
</form>
|
|
|
|
{{-- Export --}}
|
|
<a href="{{ route('admin.guru.export') }}" class="btn btn-info" title="Export Excel">
|
|
<i class="fas fa-file-export"></i>
|
|
</a>
|
|
|
|
{{-- Tambah Guru --}}
|
|
{{-- Note: The route 'admin.guru.create' should not typically pass 'kelas_id' for guru creation unless it's a specific requirement. Adjusted to remove it. --}}
|
|
<a href="{{ route('admin.guru.create') }}" class="btn btn-primary" title="Tambah Guru">
|
|
<i class="fas fa-user-plus"></i> Tambah Guru
|
|
</a>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
{{-- Tabel Data --}}
|
|
<div class="table-responsive">
|
|
<table class="table table-striped table-md">
|
|
<thead>
|
|
<tr>
|
|
<th>#</th>
|
|
<th>NIP/NUPTK</th>
|
|
<th>Nama</th>
|
|
<th>Email</th>
|
|
<th>Jenis Kelamin</th>
|
|
<th>Jabatan</th>
|
|
<th>Tahun Ajaran</th> {{-- Added this column --}}
|
|
<th>Aksi</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse($data as $index => $item)
|
|
<tr>
|
|
<td>{{ $data->firstItem() + $index }}</td>
|
|
<td>{{ $item->nip }}</td>
|
|
<td>{{ $item->nama }}</td>
|
|
<td>{{ $item->user->email ?? '-' }}</td>
|
|
<td>{{ $item->jenis_kelamin == 'L' ? 'Laki-laki' : 'Perempuan' }}</td>
|
|
<td>
|
|
@php
|
|
$jabatan = strtolower($item->jabatan);
|
|
$badgeClass = 'badge-secondary';
|
|
if(str_contains($jabatan, 'guru')) $badgeClass = 'badge-primary';
|
|
elseif(str_contains($jabatan, 'kepala')) $badgeClass = 'badge-success';
|
|
elseif(str_contains($jabatan, 'staff')) $badgeClass = 'badge-info';
|
|
@endphp
|
|
<div class="badge {{ $badgeClass }}">{{ $item->jabatan }}</div>
|
|
</td>
|
|
<td>{{ $item->tahunAjaran->tahun ?? '-' }}</td> {{-- Display Tahun Ajaran --}}
|
|
<td>
|
|
<a href="{{ route('admin.guru.edit', $item->id) }}" class="btn btn-warning btn-action mr-1" title="Edit">
|
|
<i class="fas fa-edit"></i>
|
|
</a>
|
|
<form action="{{ route('admin.guru.destroy', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Yakin ingin menghapus data ini?')">
|
|
@csrf
|
|
@method('DELETE')
|
|
<button class="btn btn-danger btn-action" title="Hapus">
|
|
<i class="fas fa-trash"></i>
|
|
</button>
|
|
</form>
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr>
|
|
<td colspan="8" class="text-center">Belum ada data guru.</td> {{-- Adjusted colspan --}}
|
|
</tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
{{-- Pagination --}}
|
|
<div class="mt-3">
|
|
{{ $data->withQueryString()->links('pagination::bootstrap-4') }}
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
@endsection |