diff --git a/modules/impianti/add.php b/modules/impianti/add.php index 60a5a553d..81c99cd78 100644 --- a/modules/impianti/add.php +++ b/modules/impianti/add.php @@ -27,7 +27,7 @@ $id_anagrafica = filter('id_anagrafica');
- {[ "type": "text", "label": "", "name": "matricola", "required": 1, "class": "text-center alphanumeric-mask", "maxlength": 25 ]} + {[ "type": "text", "label": "", "name": "matricola", "required": 1, "class": "text-center alphanumeric-mask", "maxlength": 25, "validation": "matricola" ]}
diff --git a/modules/impianti/edit.php b/modules/impianti/edit.php index 317746664..90448cc02 100644 --- a/modules/impianti/edit.php +++ b/modules/impianti/edit.php @@ -48,7 +48,7 @@ if (!empty($record['immagine'])) {
- {[ "type": "text", "label": "", "name": "matricola", "required": 1, "class": "text-center", "maxlength": 25, "value": "$matricola$" ]} + {[ "type": "text", "label": "", "name": "matricola", "required": 1, "class": "text-center", "maxlength": 25, "value": "$matricola$", "validation": "matricola" ]}
diff --git a/modules/impianti/validation.php b/modules/impianti/validation.php new file mode 100644 index 000000000..ea273a962 --- /dev/null +++ b/modules/impianti/validation.php @@ -0,0 +1,42 @@ +. + */ + +include_once __DIR__.'/../../core.php'; + +use Modules\Impianti\Impianto; + +$name = filter('name'); +$value = filter('value'); + +switch ($name) { + case 'matricola': + $disponibile = Impianto::where([ + ['matricola', $value], + ['id', '<>', $id_record], + ])->count() == 0; + + $message = $disponibile ? tr('La matricola è disponbile') : tr('La matricola è già utilizzata in un altro impianto'); + + $response = [ + 'result' => $disponibile, + 'message' => $message, + ]; + + break; +}