Description
Future enhancement: automated monthly summary of publications per region.
Proposed Solution
- Users can opt in/out of monthly digest
- Monthly digest includes titles/DOIs and statuses
Implementation Details
Database Changes
Add to user notification preferences (from issue #4):
NotificationType::MONTHLY_DIGEST = 'monthly_digest';
Or dedicated column:
$table->boolean('receive_monthly_digest')->default(false);
Backend Changes
- Mailable: Create
/app/Mail/MonthlyPublicationDigestMail.php:
class MonthlyPublicationDigestMail extends Mailable
{
public function __construct(
public User $user,
public Collection $publications,
public Carbon $periodStart,
public Carbon $periodEnd,
) {}
}
- Command: Create
/app/Console/Commands/SendMonthlyDigest.php:
// Get users who opted in
// Group publications by region
// Send personalized digest to each user
- Schedule: Add to
/routes/console.php:
Schedule::command('digest:monthly')->monthlyOn(1, '08:00');
- View: Create
/resources/views/mail/monthly-digest.blade.php with:
- Summary stats (total publications, by type)
- List of publications with DOI links
- Regional breakdown
Frontend Changes
- Add opt-in checkbox to user settings
- Preview of what digest looks like (optional)
Pros
- Low-effort feature once notification preferences exist
- High visibility for publication activity
- Can be extended to weekly/quarterly
Cons
- Need to design digest format carefully
- Large regions may have very long digests
- Timing considerations (first of month may be holiday)
Acceptance Criteria
Labels
reporting, notifications, nice-to-have
Dependencies
Description
Future enhancement: automated monthly summary of publications per region.
Proposed Solution
Implementation Details
Database Changes
Add to user notification preferences (from issue #4):
Or dedicated column:
Backend Changes
/app/Mail/MonthlyPublicationDigestMail.php:/app/Console/Commands/SendMonthlyDigest.php:/routes/console.php:/resources/views/mail/monthly-digest.blade.phpwith:Frontend Changes
Pros
Cons
Acceptance Criteria
Labels
reporting, notifications, nice-to-have
Dependencies