fix: no usar firma_svg global como fallback cuando hay datos por-campo
Formularios con 2 campos firma (consentimiento + disentimiento) mostraban la firma del campo 2 también en el campo 1 porque firma_svg se usaba como fallback del primer campo. Ahora si datos_respuestas ya tiene algún _svg, se confía solo en los datos por-campo y se ignora el fallback global. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
136b123cc0
commit
868263fe6f
@@ -888,8 +888,11 @@ function _addExamWizardHtml(string $cid): string {
|
||||
|
||||
// Firma global del profesional (un solo valor para todos los campos firma_profesional)
|
||||
$firmaSharedProfesional = $envio['firma_profesional_svg'] ?? null;
|
||||
// Firma global del paciente: fallback para cuando no hay datos_cliente por campo
|
||||
// Firma global del paciente: fallback solo para registros sin datos por-campo (_svg).
|
||||
$firmaSharedPaciente = $envio['firma_svg'] ?? null;
|
||||
// Si datos_respuestas ya tiene algún campo _svg, no usar firma_svg global como fallback
|
||||
// (evita mostrar la firma del disentimiento en el campo de consentimiento y viceversa).
|
||||
$_hayDatosPerCampoSvg = !empty(array_filter(array_keys($datosCliente ?? []), fn($k) => str_ends_with($k, '_svg')));
|
||||
|
||||
// Rastrear si ya se renderizó la firma inline (para no duplicarla al pie)
|
||||
$_renderedFirmaProfesional = false;
|
||||
@@ -964,7 +967,7 @@ function _addExamWizardHtml(string $cid): string {
|
||||
? (empty($_mpMap) && !$_renderedFirmaProfesional
|
||||
? ($firmaSharedProfesional ?? $datosCliente[$cid] ?? $datosCliente[$cid . '_svg'] ?? null)
|
||||
: ($datosCliente[$cid] ?? $datosCliente[$cid . '_svg'] ?? null))
|
||||
: ($datosCliente[$cid . '_svg'] ?? (!$_firmaGlobalPacienteUsada ? $firmaSharedPaciente : null) ?? null);
|
||||
: ($datosCliente[$cid . '_svg'] ?? (!$_firmaGlobalPacienteUsada && !$_hayDatosPerCampoSvg ? $firmaSharedPaciente : null) ?? null);
|
||||
$fFoto = $datosCliente[$cid . '_foto'] ?? null;
|
||||
$fIcon = $isPro ? 'fa-user-md' : 'fa-signature';
|
||||
$fColor = $isPro ? '#198754' : '#1565c0';
|
||||
|
||||
Reference in New Issue
Block a user