v1.5.30 — Schedule button, AI Trainer nav, bulk generation, mailing list fix
What's New
Schedule from Campaign List
Draft and ready campaigns now have a Schedule button in the dashboard action row. Clicking it opens a modal with date and time pickers. On confirm, the campaign is created in Brevo (if it doesn't exist yet) and scheduled — the row's status badge updates to "Scheduled" in place.
AI Trainer in Main Nav
AI Trainer has been promoted from a Settings tab to its own submenu entry directly under Brevo Campaigns. It's now a first-class full-width page with "About Your Store" and "About Your Products" fields.
Bulk Campaign Generation
The New Campaign wizard now has a Number of Campaigns dropdown (1–5). Selecting e.g. 3 will generate three separate campaign drafts sequentially in one click, with a "Generating campaign 2 of 3…" progress label. All drafts land on the dashboard ready to review and schedule.
Mailing List Fixed
Mailing lists are now fetched server-side on page load with a 15-minute transient cache, rendering real list names and subscriber counts directly in the <select> element. The old JS AJAX approach was unreliable and caused the "List ID: 2 (loading...)" placeholder to persist. The Refresh button still works as a manual fallback.
Campaign Title Optional
The Campaign Title field is no longer required. If left blank, the server auto-generates a title in the format "Campaign — 23 Feb 2026".