api change dahsboard
This commit is contained in:
@@ -9,12 +9,13 @@ try {
|
||||
throw new Exception("Invalid request method.");
|
||||
}
|
||||
|
||||
// Recupera e sanifica i dati
|
||||
$name = trim($_POST['name']);
|
||||
$header_row = intval($_POST['header_row']);
|
||||
$start_column = trim($_POST['start_column']);
|
||||
// Retrieve and sanitize form data
|
||||
$name = trim($_POST['name'] ?? '');
|
||||
$source_type = strtoupper(trim($_POST['source_type'] ?? 'XLS'));
|
||||
$header_row = isset($_POST['header_row']) && $_POST['header_row'] !== '' ? intval($_POST['header_row']) : null;
|
||||
$start_column = trim($_POST['start_column'] ?? '');
|
||||
$description = trim($_POST['description'] ?? '');
|
||||
$target_table = trim($_POST['target_table']);
|
||||
$target_table = trim($_POST['target_table'] ?? 'datadb');
|
||||
$idclient = intval($_POST['client_id'] ?? 0);
|
||||
$clientname = trim($_POST['client_name'] ?? '');
|
||||
$idschema = intval($_POST['idschema'] ?? 0);
|
||||
@@ -25,24 +26,61 @@ try {
|
||||
$button_text_color = trim($_POST['button_text_color'] ?? '#ffffff');
|
||||
$button_label = trim($_POST['button_label'] ?? 'Click Me');
|
||||
|
||||
// Controllo sui campi obbligatori
|
||||
if (empty($name) || empty($header_row) || empty($start_column) || empty($target_table) || $idclient <= 0 || $idschema <= 0) {
|
||||
// Normalize source type
|
||||
if (!in_array($source_type, ['XLS', 'API'], true)) {
|
||||
$source_type = 'XLS';
|
||||
}
|
||||
|
||||
// Required fields validation
|
||||
if ($name === '' || $target_table === '' || $idclient <= 0 || $idschema <= 0) {
|
||||
throw new Exception("All fields marked with * are required, including client and schema.");
|
||||
}
|
||||
|
||||
// Connessione al database
|
||||
// XLS-only validation
|
||||
if ($source_type === 'XLS') {
|
||||
if ($header_row === null || $header_row <= 0 || $start_column === '') {
|
||||
throw new Exception("Header Row and Start Column are required for XLS templates.");
|
||||
}
|
||||
}
|
||||
|
||||
// API templates do not require XLS coordinates
|
||||
if ($source_type === 'API') {
|
||||
$header_row = null;
|
||||
$start_column = null;
|
||||
}
|
||||
|
||||
// Database connection
|
||||
$db = DBHandlerSelect::getInstance();
|
||||
$pdo = $db->getConnection();
|
||||
|
||||
// Inserisci il nuovo template
|
||||
// Insert the new template
|
||||
$stmt = $pdo->prepare("
|
||||
INSERT INTO excel_templates
|
||||
(name, header_row, start_column, description, target_table, idclient, clientname, idschema, schemaname, idroutine,
|
||||
button_size, button_bg_color, button_text_color, button_label, created_at, updated_at)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NOW(), NOW())
|
||||
(
|
||||
name,
|
||||
source_type,
|
||||
header_row,
|
||||
start_column,
|
||||
description,
|
||||
target_table,
|
||||
idclient,
|
||||
clientname,
|
||||
idschema,
|
||||
schemaname,
|
||||
idroutine,
|
||||
button_size,
|
||||
button_bg_color,
|
||||
button_text_color,
|
||||
button_label,
|
||||
created_at,
|
||||
updated_at
|
||||
)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NOW(), NOW())
|
||||
");
|
||||
|
||||
$stmt->execute([
|
||||
$name,
|
||||
$source_type,
|
||||
$header_row,
|
||||
$start_column,
|
||||
$description,
|
||||
|
||||
Reference in New Issue
Block a user