Updated validation logic on edit
Some checks failed
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (push) Has been cancelled
Some checks failed
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (push) Has been cancelled
This commit is contained in:
@@ -58,6 +58,8 @@ class LeakTestReadingResource extends Resource
|
||||
$plantId = $get('plant_id');
|
||||
|
||||
$set('lsrPlantError', null);
|
||||
$set('lsrCodeError', null);
|
||||
$set('lsrSerialError', null);
|
||||
$set('item_code', null);
|
||||
$set('serial_number', null);
|
||||
$set('test_status', null);
|
||||
@@ -80,10 +82,10 @@ class LeakTestReadingResource extends Resource
|
||||
->alphaNum()
|
||||
->minLength(6)
|
||||
->reactive()
|
||||
->disabled(fn (Get $get) => ! empty($get('id')))
|
||||
->disabled(fn (Get $get) => ! empty($get('id')) && ! Filament::auth()->user()->hasRole('Super Admin'))
|
||||
->afterStateUpdated(function ($state, callable $set, callable $get) {
|
||||
$code = $get('item_code');
|
||||
// Ensure `linestop_id` is not cleared
|
||||
$set('lsrCodeError', null);
|
||||
if (! $code) {
|
||||
$set('lsrCodeError', 'Scan the valid item code.');
|
||||
|
||||
@@ -95,7 +97,9 @@ class LeakTestReadingResource extends Resource
|
||||
return;
|
||||
} elseif (! ctype_alnum($code)) {
|
||||
$set('item_code', null);
|
||||
$set('lsrSerialError', 'Item code must contain only alpha-numeric characters!');
|
||||
$set('lsrCodeError', 'Item code must contain only alpha-numeric characters!');
|
||||
|
||||
return;
|
||||
} elseif (! preg_match('/^[a-zA-Z1-9][a-zA-Z0-9]{5,}$/', $code)) {
|
||||
$set('item_code', null);
|
||||
$set('lsrCodeError', "Item code should not begin with '0' or letter!");
|
||||
@@ -117,10 +121,10 @@ class LeakTestReadingResource extends Resource
|
||||
->alphaNum()
|
||||
->minLength(9)
|
||||
->reactive()
|
||||
->disabled(fn (Get $get) => ! empty($get('id')))
|
||||
->disabled(fn (Get $get) => ! empty($get('id')) && ! Filament::auth()->user()->hasRole('Super Admin'))
|
||||
->afterStateUpdated(function ($state, callable $set, callable $get) {
|
||||
$serial = $get('serial_number');
|
||||
// Ensure `linestop_id` is not cleared
|
||||
$set('lsrSerialError', null);
|
||||
if (! $serial) {
|
||||
$set('lsrSerialError', 'Scan the valid serial number!');
|
||||
|
||||
@@ -133,6 +137,8 @@ class LeakTestReadingResource extends Resource
|
||||
} elseif (! ctype_alnum($serial)) {
|
||||
$set('serial_number', null);
|
||||
$set('lsrSerialError', 'Serial number must contain only alpha-numeric characters!');
|
||||
|
||||
return;
|
||||
} elseif (! preg_match('/^[1-9][a-zA-Z0-9]{8,}$/', $serial)) {
|
||||
$set('serial_number', null);
|
||||
$set('lsrSerialError', "Serial number should not begin with '0' or letter!");
|
||||
@@ -152,6 +158,7 @@ class LeakTestReadingResource extends Resource
|
||||
->label('Test Status')
|
||||
->searchable()
|
||||
->reactive()
|
||||
// ->disabled(fn (Get $get) => ! empty($get('id')))
|
||||
->options(function (callable $set, callable $get) {
|
||||
$plantId = $get('plant_id');
|
||||
$itemCode = $get('item_code');
|
||||
|
||||
Reference in New Issue
Block a user