sigd/resources/views/modules/setting/file-data-aktivitas/edit.blade.php

198 lines
8.6 KiB
PHP

@extends('layouts.master')
@section('content')
<div class="card shadow-sm">
<div class="card-header d-flex justify-content-between align-items-center">
<h5 class="mb-0 font-weight-bold">{{ @$title }}</h5>
</div>
<div class="card-body">
@if ($errors->has('error'))
<div class="alert alert-danger">
{{ $errors->first('error') }}
</div>
@endif
<form method="POST" action="{{ route($route.'.update', $data->id) }}" enctype="multipart/form-data">
@csrf
@method('PUT')
<div class="form-group">
<label for="sector">Sector <span class="text-danger">*</span></label>
<select class="form-control @error('sector') is-invalid @enderror" id="sector" name="sector"
required>
<option value=""></option>
@foreach ($sectors as $sector)
<option value="{{ $sector->code }}"
{{ old('sector', $data->sector) == $sector->code ? 'selected' : '' }}>
{{ $sector->name }}
</option>
@endforeach
</select>
@error('sector')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div id="subSectorContainer" style="display: none;">
<div class="form-group">
<label for="sub_sector">Sub Sector</label>
<select class="form-control @error('sub_sector') is-invalid @enderror" id="sub_sector"
name="sub_sector">
<option value=""></option>
</select>
@error('sub_sector')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="form-group">
<label for="inventory_year">Tahun Inventory <span class="text-danger">*</span></label>
<div class="input-group">
<select name="inventory_year" id="inventory_year" class="form-control">
<option value=""></option>
@for ($year = date('Y'); $year >= 2000; $year--)
<option value="{{ $year }}"
{{ old('inventory_year', $data->inventory_year) == $year ? 'selected' : '' }}>
{{ $year }}
</option>
@endfor
</select>
@error('inventory_year')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="form-group">
<label for="name">Judul <span class="text-danger">*</span></label>
<input type="text" class="form-control @error('name') is-invalid @enderror" id="name"
name="name" value="{{ old('name', $data->name) }}" required>
@error('name')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div class="form-group">
<label for="description">Deskripsi</label>
<textarea class="form-control @error('description') is-invalid @enderror" id="description" name="description">{{ old('description', $data->description) }}</textarea>
@error('description')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div class="form-group">
<label for="file_document">Lampirkan Dokumen</label>
<div class="input-group">
<input type="file" class="form-control @error('file_document') is-invalid @enderror"
id="file_document" name="file_document">
@if ($data->file_upload)
<div class="input-group-append">
<a href="{{ asset('storage/'.$storagePath . '/' . $data->file_upload) }}"
class="btn btn-success" download>Download File</a>
</div>
@endif
@error('file_document')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
<div class="alert alert-warning material-shadow" role="alert">
Maksimum Ukuran File: 2MB. <br />
{{-- Jenis file yang dibolehkan: pdf, PDF, jpg, JPG, jpeg, JPEG, png, PNG --}}
</div>
<a href="{{ route($route.'.index') }}" class="btn btn-secondary">Kembali</a>
<button type="submit" class="btn btn-primary">Simpan</button>
</form>
</div>
</div>
@endsection
@section('js')
<script>
$(document).ready(function() {
$('#sector').select2({
placeholder: 'Pilih Sektor',
});
$('#inventory_year').select2({
placeholder: 'Pilih Tahun',
});
$('#sub_sector').select2({
placeholder: 'Pilih Sub-Sektor',
});
// Initialize sub-sector for the existing data
var selectedSector = '{{ old('sector', $data->sector) }}';
var selectedSubSector = '{{ old('sub_sector', $data->sub_sector) }}';
// Fetch sub-sectors for pre-selected sector (if applicable)
if (selectedSector) {
fetchSubSectors(selectedSector, selectedSubSector);
}
// Handle sector change to fetch sub-sectors dynamically
$('#sector').on('change', function() {
var sectorCode = $(this).val();
fetchSubSectors(sectorCode, null); // Clear selected sub-sector on change
});
function fetchSubSectors(sectorCode, selectedSubSector) {
$('#sub_sector').empty(); // Clear previous options
$('#subSectorContainer').hide(); // Hide the sub-sector container initially
if (sectorCode) {
$.ajax({
url: '{{ route('modules.subsectors.fetch') }}',
method: 'GET',
data: {
sector_code: sectorCode
},
success: function(data) {
if (data.length > 0) {
$('#sub_sector').append(
'<option value=""></option>'); // Add a blank option
$.each(data, function(index, subSector) {
$('#sub_sector').append('<option value="' + subSector.code +
'">' + subSector.name + '</option>');
});
if (selectedSubSector) {
$('#sub_sector').val(selectedSubSector).trigger(
'change'); // Pre-select the sub-sector
}
$('#subSectorContainer').show(); // Show the sub-sector container
$('#sub_sector').select2({
placeholder: 'Pilih Sub Sektor',
});
} else {
$('#subSectorContainer').hide(); // Hide the container if no sub-sectors
}
},
error: function() {
alert('Error fetching sub-sectors.');
}
});
}
}
});
</script>
@endsection