fix: images, couverture, slash, agents, wizard, Stripe et admin
- Collage/accès images: ownership path userId + meta legacy, 403 non caché - Couverture note: explicite (choix/aucune), plus d’auto depuis le corps - Éditeur: suppression image TipTap, sync immédiate, toolbar réordonnée - Slash: listes par titre (plus d’index), keywords nettoyés - Agents: nextRun à la réactivation, cron sans stampede null - Wizard: titres courts + mode Expert plus robuste - Stripe checkout hosted fiable; admin métriques live; dark mode IA/settings - Indexation notes courtes + test unit aligné
This commit is contained in:
@@ -39,10 +39,18 @@ export async function POST(request: NextRequest) {
|
||||
{ level, count, language: language || 'fr' }
|
||||
)
|
||||
|
||||
// Prefer AI short title over raw user prompt (notebookName from client is often the full message)
|
||||
const resolvedName = (
|
||||
result.notebookName?.trim()
|
||||
|| (notebookName && notebookName.trim().length <= 60 ? notebookName.trim() : '')
|
||||
|| result.notes[0]?.title?.trim()
|
||||
|| topic.trim().slice(0, 60)
|
||||
).slice(0, 80)
|
||||
|
||||
// 1. Create notebook
|
||||
const notebook = await prisma.notebook.create({
|
||||
data: {
|
||||
name: notebookName || topic,
|
||||
name: resolvedName,
|
||||
icon: notebookIcon || '📚',
|
||||
userId: session.user.id,
|
||||
order: 0,
|
||||
|
||||
Reference in New Issue
Block a user