false, 'error' => 'Missing parameters')); exit; } // Hole erst fk_facturedet (falls Section in Rechnung ist) $sql_get = "SELECT fk_facturedet FROM ".MAIN_DB_PREFIX."facture_lines_manager"; $sql_get .= " WHERE rowid = ".(int)$section_id; $sql_get .= " AND line_type = 'section'"; $resql = $db->query($sql_get); $obj = $db->fetch_object($resql); $fk_facturedet = $obj ? $obj->fk_facturedet : null; // Update Manager-Tabelle $sql = "UPDATE ".MAIN_DB_PREFIX."facture_lines_manager"; $sql .= " SET title = '".$db->escape($title)."'"; $sql .= " WHERE rowid = ".(int)$section_id; $sql .= " AND line_type = 'section'"; if (!$db->query($sql)) { subtotaltitle_debug_log('❌ Fehler: ' . $db->lasterror()); echo json_encode(array('success' => false, 'error' => $db->lasterror())); exit; } // Falls in facturedet vorhanden, dort auch updaten if ($fk_facturedet > 0) { $sql_fd = "UPDATE ".MAIN_DB_PREFIX."facturedet"; $sql_fd .= " SET description = '".$db->escape($title)."'"; $sql_fd .= " WHERE rowid = ".(int)$fk_facturedet; $db->query($sql_fd); subtotaltitle_debug_log('✅ Section + facturedet umbenannt'); } else { subtotaltitle_debug_log('✅ Section umbenannt (nicht in facturedet)'); } echo json_encode(array('success' => true, 'synced_facturedet' => ($fk_facturedet > 0)));