- Toggle activo/inactivo en configuración → guarda ia_activa en lab_config - Botón "Probar" llama api/lab/test_gemini.php con la clave actual - test_gemini.php envía pregunta mínima a Gemini y confirma respuesta - Dashboard oculta botón y panel IA cuando ia_activa != '1' Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
35 lines
1.0 KiB
PHP
35 lines
1.0 KiB
PHP
<?php
|
|
/**
|
|
* POST /api/lab/save_config.php — Guardar configuración global del lab
|
|
* Solo admin.
|
|
* Body JSON: { empresa_nombre, empresa_subtitulo, empresa_direccion, empresa_telefono,
|
|
* empresa_email, empresa_ciudad, doc_color, doc_logo_base64, doc_pie_pagina }
|
|
*/
|
|
require_once __DIR__ . '/_helpers.php';
|
|
requireMethod('POST');
|
|
requireAdmin();
|
|
|
|
$datos = inputJson();
|
|
$db = Database::getInstance();
|
|
|
|
$permitidas = [
|
|
'empresa_nombre', 'empresa_subtitulo', 'empresa_direccion',
|
|
'empresa_telefono', 'empresa_email', 'empresa_ciudad',
|
|
'doc_color', 'doc_logo_base64', 'doc_pie_pagina',
|
|
'gemini_api_key',
|
|
'ia_activa',
|
|
];
|
|
|
|
$guardadas = 0;
|
|
foreach ($permitidas as $clave) {
|
|
if (array_key_exists($clave, $datos)) {
|
|
$db->query(
|
|
'INSERT INTO lab_config(clave, valor) VALUES(?,?) ON DUPLICATE KEY UPDATE valor=?',
|
|
[$clave, $datos[$clave], $datos[$clave]]
|
|
);
|
|
$guardadas++;
|
|
}
|
|
}
|
|
|
|
jsonOk(['guardadas' => $guardadas], 'Configuración guardada');
|