From 19328a7ff63c89b6be3cf18933a1f65799875b85 Mon Sep 17 00:00:00 2001 From: arieeefajar Date: Mon, 3 Feb 2025 20:38:16 +0700 Subject: [PATCH] feat(assessment-form): create assessment form page --- .../Controllers/AssesmentFormController.php | 13 ++ app/Http/Kernel.php | 2 + app/Http/Middleware/AdminMiddleware.php | 26 ++++ app/Http/Middleware/OfficerMiddleware.php | 26 ++++ .../js/pages/customJs/assesment-form/index.js | 20 +++ .../views/assesment-form/index.blade.php | 115 ++++++++++++++++++ resources/views/layouts/app.blade.php | 4 +- resources/views/partials/sidebar.blade.php | 7 ++ routes/web.php | 67 +++++----- 9 files changed, 249 insertions(+), 31 deletions(-) create mode 100644 app/Http/Controllers/AssesmentFormController.php create mode 100644 app/Http/Middleware/AdminMiddleware.php create mode 100644 app/Http/Middleware/OfficerMiddleware.php create mode 100644 public/assets/js/pages/customJs/assesment-form/index.js create mode 100644 resources/views/assesment-form/index.blade.php diff --git a/app/Http/Controllers/AssesmentFormController.php b/app/Http/Controllers/AssesmentFormController.php new file mode 100644 index 0000000..8b7ac97 --- /dev/null +++ b/app/Http/Controllers/AssesmentFormController.php @@ -0,0 +1,13 @@ + \Illuminate\Routing\Middleware\ThrottleRequests::class, 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, 'verifiedAcount' => \App\Http\Middleware\verifiedAcount::class, + 'admin' => \App\Http\Middleware\AdminMiddleware::class, + 'officer' => \App\Http\Middleware\OfficerMiddleware::class ]; } diff --git a/app/Http/Middleware/AdminMiddleware.php b/app/Http/Middleware/AdminMiddleware.php new file mode 100644 index 0000000..0dea158 --- /dev/null +++ b/app/Http/Middleware/AdminMiddleware.php @@ -0,0 +1,26 @@ +role == 'admin') { + return $next($request); + } + + toast('Anda tidak memiliki akses', 'warning')->position('top')->autoclose(3000); + return redirect()->back(); + } +} diff --git a/app/Http/Middleware/OfficerMiddleware.php b/app/Http/Middleware/OfficerMiddleware.php new file mode 100644 index 0000000..60e58fd --- /dev/null +++ b/app/Http/Middleware/OfficerMiddleware.php @@ -0,0 +1,26 @@ +role == 'user') { + return $next($request); + } + + toast('Anda tidak memiliki akses', 'warning')->position('top')->autoclose(3000); + return redirect()->back(); + } +} diff --git a/public/assets/js/pages/customJs/assesment-form/index.js b/public/assets/js/pages/customJs/assesment-form/index.js new file mode 100644 index 0000000..c7e1f26 --- /dev/null +++ b/public/assets/js/pages/customJs/assesment-form/index.js @@ -0,0 +1,20 @@ +document.addEventListener("DOMContentLoaded", function () { + const inputs = document.querySelectorAll( + "#pH-field, #ketinggian_tempat-field", + "#ketersediaan_air-field", + "#curah_hujan-field" + ); + + inputs.forEach((input) => { + input.addEventListener("input", function () { + this.value = this.value.replace(/[^0-9.]/g, ""); + this.value = this.value.replace(/^(\.)/, ""); + if ((this.value.match(/\./g) || []).length > 1) { + this.value = this.value.substring( + 0, + this.value.lastIndexOf(".") + ); + } + }); + }); +}); diff --git a/resources/views/assesment-form/index.blade.php b/resources/views/assesment-form/index.blade.php new file mode 100644 index 0000000..74828bd --- /dev/null +++ b/resources/views/assesment-form/index.blade.php @@ -0,0 +1,115 @@ +@extends('layouts.app') +@push('title', 'Form Penilaian') +@section('content') +
+
+ +
+
+
+

Form Penilaian

+ +
+ +
+
+
+
+ + +
+
+
+
+

Form Penilaian

+
+
+
+
+ +
+ + pH +
+ Masukan nilai pH +
+
+
+
+ +
+ + m +
+ Masukan nilai Ketinggian Tempat +
+
+
+
+ +
+ + % +
+ Masukan nilai Ketersediaan Air +
+
+
+
+ +
+ + mm +
+ Masukan nilai Curah Hujan +
+
+
+
+ +
+
+
+
+
+
+

Hasil Penilaian

+
+
+
+
+
+
+
+ +
+ +
+ + @push('other-js') + + + + + + + + + + @endpush +@endsection diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index 51aa4b7..69dea44 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -66,7 +66,7 @@ -
+ {{--
Theme Customizer
@@ -590,7 +590,7 @@ class="form-check-input">
- + --}} @include('sweetalert::alert') diff --git a/resources/views/partials/sidebar.blade.php b/resources/views/partials/sidebar.blade.php index e08733d..d4db20a 100644 --- a/resources/views/partials/sidebar.blade.php +++ b/resources/views/partials/sidebar.blade.php @@ -86,6 +86,13 @@ class="nav-link {{ request()->routeIs('master_data.aturan.*') ? 'active' : '' }} data-key="t-dashboards">Dashboards + @endif {{--