program dan basis data ekosistem

This commit is contained in:
2026-04-20 16:05:27 +07:00
parent 0bbcb22d50
commit 4032eb6e75
49 changed files with 4384 additions and 155 deletions
@@ -0,0 +1,77 @@
@extends('layout.main')
@section('content')
<div class="container-xxl flex-grow-1 container-p-y">
<div class="card">
<div class="card-header border-bottom mb-4">
<h5 class="card-title mb-0">Tambah Kelompok Baru</h5>
</div>
<div class="card-body">
<form id="addNewGroupForm" action="{{ route('group.store') }}" method="POST" >
@csrf
<h6 class="mb-3">Informasi Kelompok Tabel</h6>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-group-nama">Nama Kelompok<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('group') is-invalid @enderror" id="add-group-nama" name="group" placeholder="Cth: Tabel Pertanian" value="{{ old('group') }}" />
@error('group')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-group-label">Label<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('label') is-invalid @enderror" id="add-group-label" name="label" placeholder="Cth: budi@email.com" value="{{ old('label') }}" />
@error('label')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-12 mb-4 form-control-validation">
<label class="form-label" for="add-group-deskripsi">Deskripsi</label>
<input type="text" class="form-control @error('deskripsi') is-invalid @enderror" id="add-group-deskripsi" name="deskripsi" placeholder="Cth: Deskripsi tabel pertanian" value="{{ old('deskripsi') }}" />
@error('deskripsi')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="mt-4 text-end">
<a href="{{ route('group.index') }}" class="btn btn-label-secondary me-2">Kembali</a>
<button type="submit" class="btn btn-success data-submit">Simpan Kelompok</button>
</div>
</form>
</div>
</div>
</div>
@endsection
@push('scripts')
<script>
'use strict';
$(document).ready(function () {
$.validator.addMethod("snakecase", function(value, element) {
return this.optional(element) || /^[a-z0-9]+(_[a-z0-9]+)*$/.test(value);
}, "Gunakan format snake_case (huruf kecil dan underscore)");
$('#addNewGroupForm').validate({
rules: {
group: { required: true, snakecase: true },
label: { required: true },
},
messages: {
group: { required: "Nama kelompok wajib diisi", snakecase: "Gunakan format snake_case (huruf kecil dan underscore)" },
label: { required: "Label wajib diisi" },
},
errorElement: 'div',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.mb-6, .form-control-validation').append(error);
},
highlight: function (element) {
$(element).addClass('is-invalid');
},
unhighlight: function (element) {
$(element).removeClass('is-invalid');
}
});
});
</script>
@endpush