first commit

This commit is contained in:
2026-05-14 15:28:23 +08:00
commit 4fad704fd2
4034 changed files with 1093582 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
<div class="x_panel">
<div class="x_title">
<h2>{{ __('profil.HAPUS_AKAUN') }} <small>{{ __('profil.HAPUS_AKAUN_AYAT') }}</small></h2>
<ul class="nav navbar-right panel_toolbox">
<li><a class="collapse-link"><i class="fa fa-chevron-up"></i></a>
</li>
</ul>
<div class="clearfix"></div>
</div>
<div class="x_content">
<br />
<!-- Delete Account Button -->
<button type="button" class="btn btn-danger" id="deleteAccountButton" >
{{ __('profil.HAPUS_AKAUN') }}
</button>
<!-- Modal -->
<div class="modal fade" id="confirmUserDeletionModal" tabindex="-1" aria-labelledby="confirmUserDeletionModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<form method="post" action="{{ route('profile.destroy') }}" class="form-label-left input_mask">
@csrf
@method('delete')
<div class="modal-header">
<h5 class="modal-title" id="confirmUserDeletionModalLabel">{{ __('profil.HAPUS_AKAUN_CONFIRM') }}</h5>
<button type="button" class="btn-close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
</div>
<div class="modal-body">
<p>
{{ __('profil.HAPUS_AKAUN_CONFIRM_AYAT') }}
</p>
<div class="item form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="password">{{ __('profil.KATALALUAN') }}
</label>
<div class="col-md-6 col-sm-6 ">
<input
type="password"
id="password"
name="password"
class="form-control @error('password') is-invalid @enderror"
placeholder=""
>
@error('password')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">{{ __('profil.BATAL') }}</button>
<button type="submit" class="btn btn-danger">{{ __('profil.HAPUS_AKAUN') }}</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,55 @@
<section class="space-y-6">
<header>
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
{{ __('Delete Account') }}
</h2>
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
{{ __('Once your account is deleted, all of its resources and data will be permanently deleted. Before deleting your account, please download any data or information that you wish to retain.') }}
</p>
</header>
<x-danger-button
x-data=""
x-on:click.prevent="$dispatch('open-modal', 'confirm-user-deletion')"
>{{ __('Delete Account') }}</x-danger-button>
<x-modal name="confirm-user-deletion" :show="$errors->userDeletion->isNotEmpty()" focusable>
<form method="post" action="{{ route('profile.destroy') }}" class="p-6">
@csrf
@method('delete')
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
{{ __('Are you sure you want to delete your account?') }}
</h2>
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
{{ __('Once your account is deleted, all of its resources and data will be permanently deleted. Please enter your password to confirm you would like to permanently delete your account.') }}
</p>
<div class="mt-6">
<x-input-label for="password" value="{{ __('Password') }}" class="sr-only" />
<x-text-input
id="password"
name="password"
type="password"
class="mt-1 block w-3/4"
placeholder="{{ __('Password') }}"
/>
<x-input-error :messages="$errors->userDeletion->get('password')" class="mt-2" />
</div>
<div class="mt-6 flex justify-end">
<x-secondary-button x-on:click="$dispatch('close')">
{{ __('Cancel') }}
</x-secondary-button>
<x-danger-button class="ms-3">
{{ __('Delete Account') }}
</x-danger-button>
</div>
</form>
</x-modal>
</section>

View File

@@ -0,0 +1,48 @@
<div class="card mb-3">
<div class="card-header">
<h3 class="card-title">TUKAR PASSWORD</h3>
</div> <!-- /.card-header -->
<div class="card-body">
<form class="form-label-left input_mask" method="post" action="{{ route('password.update') }}">
@csrf
@method('put')
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="nokp">Katalaluan Semasa
</label>
<div class="col-12 ">
<input type="password" id="update_password_current_password" name="update_password_current_password" class="form-control @error('update_password_current_password') is-invalid @enderror" >
@error('update_password_current_password')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
</div>
</div>
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="update_password_password">Katalaluan Baru
</label>
<div class="col-12 ">
<input type="password" id="update_password_password" name="password" class="form-control @error('password') is-invalid @enderror" >
@error('password')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
</div>
</div>
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="update_password_password_confirmation">Sahkan Katalaluan Baru
</label>
<div class="col-12 ">
<input type="password" id="update_password_password_confirmation" name="password_confirmation" class="form-control @error('password_confirmation') is-invalid @enderror" >
@error('password_confirmation')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-12 offset-md-3">
<button type="submit" class="btn btn-success btn-sm ms-auto">SIMPAN</button>
</div>
</div>
</form>
</div>
</div> <!-- /.card -->

View File

@@ -0,0 +1,48 @@
<section>
<header>
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
{{ __('Update Password') }}
</h2>
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
{{ __('Ensure your account is using a long, random password to stay secure.') }}
</p>
</header>
<form method="post" action="{{ route('password.update') }}" class="mt-6 space-y-6">
@csrf
@method('put')
<div>
<x-input-label for="update_password_current_password" :value="__('Current Password')" />
<x-text-input id="update_password_current_password" name="current_password" type="password" class="mt-1 block w-full" autocomplete="current-password" />
<x-input-error :messages="$errors->updatePassword->get('current_password')" class="mt-2" />
</div>
<div>
<x-input-label for="update_password_password" :value="__('New Password')" />
<x-text-input id="update_password_password" name="password" type="password" class="mt-1 block w-full" autocomplete="new-password" />
<x-input-error :messages="$errors->updatePassword->get('password')" class="mt-2" />
</div>
<div>
<x-input-label for="update_password_password_confirmation" :value="__('Confirm Password')" />
<x-text-input id="update_password_password_confirmation" name="password_confirmation" type="password" class="mt-1 block w-full" autocomplete="new-password" />
<x-input-error :messages="$errors->updatePassword->get('password_confirmation')" class="mt-2" />
</div>
<div class="flex items-center gap-4">
<x-primary-button>{{ __('Save') }}</x-primary-button>
@if (session('status') === 'password-updated')
<p
x-data="{ show: true }"
x-show="show"
x-transition
x-init="setTimeout(() => show = false, 2000)"
class="text-sm text-gray-600 dark:text-gray-400"
>{{ __('Saved.') }}</p>
@endif
</div>
</form>
</section>

View File

@@ -0,0 +1,94 @@
<div class="card mb-3">
<div class="card-header">
<h3 class="card-title">MAKLUMAT PROFIL</h3>
</div> <!-- /.card-header -->
<div class="card-body">
<form id="send-verification" method="post" action="{{ route('verification.send') }}" enctype="multipart/form-data">
@csrf
</form>
<form class="form-label-left input_mask" method="post" action="{{ route('profile.update') }}" enctype="multipart/form-data">
@csrf
@method('patch')
<div class="row">
<div class="col-8">
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="nokp">No KP <span class="required">*</span>
</label>
<div class="col-12">
<input type="text" id="nokp" name="nokp" required="required" class="form-control" value="{{$user->nokp}}" readonly>
</div>
</div>
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="name">Nama <span class="required">*</span>
</label>
<div class="col-12">
<input type="text" id="name" name="name" required="required" class="form-control @error('name') is-invalid @enderror" value="{{old('name', $user->name)}}" autofocus>
@error('name')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
</div>
</div>
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="email">Emel <span class="required">*</span>
</label>
<div class="col-12">
<input type="email" id="email" name="email" required="required" class="form-control @error('email') is-invalid @enderror" value="{{old('email', $user->email)}}" >
@error('email')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
</div>
@if ($user instanceof \Illuminate\Contracts\Auth\MustVerifyEmail && ! $user->hasVerifiedEmail())
<div>
<p class="mt-2 text-warning">
{{ __('Your email address is unverified.') }}
<button form="send-verification" class="btn btn-primary">
{{ __('Click here to re-send the verification email.') }}
</button>
</p>
@if (session('status') === 'verification-link-sent')
<p class="mt-2 text-success">
{{ __('A new verification link has been sent to your email address.') }}
</p>
@endif
</div>
@endif
</div>
<div class="form-group">
<label class="col-form-label col-md-3 col-sm-3 label-align" for="notelefon">No Telefon
</label>
<div class="col-12">
<input type="text" id="notelefon" name="notelefon" class="form-control " value="{{old('email', $user->notelefon)}}" >
</div>
</div>
</div>
<div class="col-4">
<div class="avatar avatar-xxl">
@if(!is_null($user->avatar_path))
<img src="{{ route('profil.stream', [$user->avatar_path]) }}" class="avatar-img rounded-circle">
@else
<img src="{{ asset('img/avatar.png') }}" class="avatar-img rounded">
@endif
</div>
<div class="form-group">
<div class="col-12">
<input type="file" id="avatar" name="avatar" class="form-control" value="">
</div>
</div>
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-12 offset-md-3">
<button type="submit" class="btn btn-success btn-sm ms-auto">SIMPAN</button>
</div>
</div>
</form>
</div>
</div>

View File

@@ -0,0 +1,94 @@
<section>
<header>
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
{{ __('Profile Information') }}
</h2>
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
{{ __("Update your account's profile information and email address.") }}
</p>
</header>
<form id="send-verification" method="post" action="{{ route('verification.send') }}">
@csrf
</form>
<form method="post" action="{{ route('profile.update') }}" class="mt-6 space-y-6">
@csrf
@method('patch')
<div>
<x-input-label for="name" :value="__('Name')" />
<x-text-input id="name" name="name" type="text" class="mt-1 block w-full" :value="old('name', $user->name)" required autofocus autocomplete="name" />
<x-input-error class="mt-2" :messages="$errors->get('name')" />
</div>
<div>
<x-input-label for="notelefon" :value="__('No Telefon')" />
<x-text-input id="notelefon" name="notelefon" type="text" class="mt-1 block w-full" :value="old('notelefon', $user->notelefon)" required autofocus autocomplete="notelefon" />
<x-input-error class="mt-2" :messages="$errors->get('notelefon')" />
</div>
<div>
<x-input-label for="alamat" :value="__('Alamat')" />
<x-textarea id="alamat" name="alamat" type="text" class="mt-1 block w-full" :value="old('alamat', $user->alamat)" required autofocus autocomplete="alamat" />
<x-input-error class="mt-2" :messages="$errors->get('alamat')" />
</div>
<div>
<x-input-label for="jantina" :value="__('Jantina')" />
<x-select id="jantina" name="jantina" class="mt-1 block w-full"
:options="[''=>'','lelaki' => 'Lelaki', 'perempuan' => 'Perempuan']"
:selected="old('jantina', $user->jantina)"
/>
<x-input-error class="mt-2" :messages="$errors->get('jantina')" />
</div>
<div>
<x-input-label for="bangsa" :value="__('Bangsa')" />
<x-select id="bangsa" name="bangsa" type="text" class="mt-1 block w-full"
:options="[''=>'','melayu' => 'Melayu', 'asli' => 'Asli', 'bumiputera sabah' => 'Bumiputera Sabah', 'bumiputera sarawak' => 'Bumiputera Sarawak', 'cina' => 'Cina', 'india' => 'India', 'peranakan' => 'Peranakan', 'lain-lain' => 'Lain-lain']"
:selected="old('bangsa', $user->bangsa)"
/>
<x-input-error class="mt-2" :messages="$errors->get('bangsa')" />
</div>
<div>
<x-input-label for="email" :value="__('Email')" />
<x-text-input id="email" name="email" type="email" class="mt-1 block w-full" :value="old('email', $user->email)" required autocomplete="username" />
<x-input-error class="mt-2" :messages="$errors->get('email')" />
@if ($user instanceof \Illuminate\Contracts\Auth\MustVerifyEmail && ! $user->hasVerifiedEmail())
<div>
<p class="text-sm mt-2 text-gray-800 dark:text-gray-200">
{{ __('Your email address is unverified.') }}
<button form="send-verification" class="underline text-sm text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-100 rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 dark:focus:ring-offset-gray-800">
{{ __('Click here to re-send the verification email.') }}
</button>
</p>
@if (session('status') === 'verification-link-sent')
<p class="mt-2 font-medium text-sm text-green-600 dark:text-green-400">
{{ __('A new verification link has been sent to your email address.') }}
</p>
@endif
</div>
@endif
</div>
<div class="flex items-center gap-4">
<x-primary-button>{{ __('Save') }}</x-primary-button>
@if (session('status') === 'profile-updated')
<p
x-data="{ show: true }"
x-show="show"
x-transition
x-init="setTimeout(() => show = false, 2000)"
class="text-sm text-gray-600 dark:text-gray-400"
>{{ __('Saved.') }}</p>
@endif
</div>
</form>
</section>