О платформе Войти
← К списку версий
v0.41.1 25.08.2026 PATCH
Система email-рассылок: шаблоны, трекинг, дашборд
Что сделано
  • `AdminController@index` — передаёт `$upcomingCampaigns`, `$scheduledForTomorrow`, `$scheduledForWeek` во view
  • `admin/index.blade.php` — новый блок «Предстоящие письма» между подсказками и «Требуют внимания»: список запланированных кампаний с датой/временем, типом аудитории, числом получателей
  • Подсветка: сегодня — красный, завтра — жёлтый, позже — серый
  • Hint-блок: «Завтра запланировано рассылок: N»
  • `CampaignService::buildUtmParams()` — генерирует `utm_source=ipd_platform`, `utm_medium=email`, `utm_campaign={slug}`
  • `CampaignMail` — принимает `$utmSource`, `$utmMedium`, `$utmCampaign`, `$mailLog`; передаёт `$utmParams` и `$trackingPixelUrl` в Blade
  • Кнопка «Открыть на платформе» теперь содержит UTM-параметры
  • Миграция `2026_08_25_230000` — `tracking_token` (char 32, unique, nullable) в `mail_logs`
  • `MailLog` — автогенерация `tracking_token` при создании (Str::random(32)), методы `trackingPixelUrl()` и `clickUrl()`
  • `emails/campaign.blade.php` — `<img>` tracking pixel внизу письма (1x1 transparent GIF)
  • `SendCampaignEmailJob` — передаёт `$mailLog` в CampaignMail для инъекции пикселя
  • `emails/campaign.blade.php` — обновлён: карточка Алексея Гапеева (фото, должность, телефоны, email, сайт), footer с ООО «Студия ИПД» и УНП, ссылка «Управление уведомлениями»
  • `CampaignService::buildRecipients()` — `$seenEmails` массив: один email = одно письмо, дубликаты пропускаются
  • Version bump → 0.41.1