Skip to content

Add instructor email notifications for pending requests#342

Merged
noahnizamian merged 7 commits into
cs169:mainfrom
alxstx:email-notifications
Apr 30, 2026
Merged

Add instructor email notifications for pending requests#342
noahnizamian merged 7 commits into
cs169:mainfrom
alxstx:email-notifications

Conversation

@alxstx
Copy link
Copy Markdown

@alxstx alxstx commented Apr 6, 2026

Changes

  • Added pending_notification_frequency and pending_notification_email columns to course_settings
  • Added validations, normalization callbacks, and query scope to CourseSettings model
  • Added PendingRequestsNotificationJob to send digest emails with pending request count and link
  • Added pending notification params to CourseSettingsController permit list
  • Added rake task notifications:send_pending_digests[daily|weekly] for cron scheduling
  • Added frequency dropdown and notification email field to General Settings tab
  • Added Stimulus toggle to disable email field when no frequency is selected

Testing

  • Run bundle exec rspec spec/models/course_settings_spec.rb for model validation and scope tests
  • Run bundle exec rspec spec/jobs/pending_requests_notification_job_spec.rb for job tests
  • Run bundle exec rspec spec/controllers/course_settings_controller_spec.rb for controller tests
  • Run bundle exec rspec spec/tasks/notifications_rake_spec.rb for rake task tests
  • Run the full rspec test suite to verify no regressions

Documentation

No documentation needed

Checklist

  • Name of branch corresponds to story
  • 80%+ test coverage with all tests passing

Closes #344

alxstx pushed a commit to alxstx/flextensions that referenced this pull request Apr 26, 2026
@alxstx alxstx force-pushed the email-notifications branch from bad19a8 to 8a8984a Compare April 26, 2026 21:05
@noahnizamian
Copy link
Copy Markdown

Looks good and tests all pass

@noahnizamian noahnizamian merged commit 94bd760 into cs169:main Apr 30, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants