up
This commit is contained in:
@@ -26,7 +26,15 @@ try {
|
||||
if (!empty($datos['id'])) {
|
||||
$id = (int)$datos['id'];
|
||||
unset($datos['id']);
|
||||
$form->actualizar($id, $datos, $admin);
|
||||
// Verificar que el formulario existe
|
||||
$existe = $form->obtener($id);
|
||||
if (!$existe) {
|
||||
jsonError("Formulario #$id no encontrado en la base de datos", 404);
|
||||
}
|
||||
$ok = $form->actualizar($id, $datos, $admin);
|
||||
if (!$ok) {
|
||||
jsonError('No se pudo actualizar el formulario. Verifica los datos e intenta de nuevo.', 500);
|
||||
}
|
||||
jsonOk(['id' => $id], 'Formulario actualizado');
|
||||
}
|
||||
|
||||
|
||||
@@ -75,7 +75,8 @@ class Formulario {
|
||||
$campos = array_intersect_key($datos, array_flip($permitidos));
|
||||
if (isset($campos['esquema'])) {
|
||||
$this->validarEsquema($campos['esquema']);
|
||||
$campos['version'] = (int)$this->db->fetch('SELECT version FROM lab_formularios WHERE id = ?', [$id])['version'] + 1;
|
||||
$row = $this->db->fetch('SELECT version FROM lab_formularios WHERE id = ?', [$id]);
|
||||
$campos['version'] = (int)($row['version'] ?? 0) + 1;
|
||||
}
|
||||
$ok = $this->db->update('lab_formularios', $campos, 'id = ?', [$id]);
|
||||
$this->log->registrar($adminId, 'formularios', 'editar', $id, $campos);
|
||||
|
||||
Reference in New Issue
Block a user