-
Notifications
You must be signed in to change notification settings - Fork 5
feat: embargo update #1295
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: development
Are you sure you want to change the base?
feat: embargo update #1295
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR implements an embargo feature for projects, allowing users to schedule future publication with automated release and reminder notifications. Key changes include:
- New embargo workflow with DOI assignment at embargo stage
- Automated reminder system (7, 3, 1 days before release)
- Console command for publishing embargoed projects
- UI updates for embargo status display and publication
Reviewed changes
Copilot reviewed 17 out of 19 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| routes/web.php | Adds two new embargo-related routes for setting embargo and publishing embargo projects |
| routes/console.php | Comments out old schedule and adds reference to new embargo publishing command |
| database/migrations/2025_10_23_105820_create_embargo_reminders_table.php | Creates table to track sent embargo reminders |
| app/Models/Project.php | Adds embargoReminders relationship and datetime casts |
| app/Models/EmbargoReminder.php | New model for tracking embargo reminder notifications |
| app/Policies/ProjectPolicy.php | Prevents editing of embargoed projects |
| app/Notifications/EmbargoReleaseReminderNotification.php | Notification class for embargo release reminders |
| app/Mail/EmbargoReleaseReminder.php | Mailable for embargo reminder emails |
| app/Console/Commands/PublishEmbargoProjects.php | Command to send reminders and publish embargoed projects |
| app/Console/Commands/PublishReleasedProjects.php | Deleted old publish command |
| app/Actions/Project/SetEmbargoProject.php | Action to set project to embargo status with validation |
| app/Actions/Project/PublishEmbargoProject.php | Action to publish an embargoed project |
| app/Jobs/ProcessSubmission.php | Removes embargo status logic, always sets to published |
| app/Http/Controllers/ProjectController.php | Adds setEmbargo and publishEmbargoProject controller methods |
| resources/views/vendor/mail/embargo-release-reminder.blade.php | Email template for embargo release reminders |
| resources/js/Shared/PublishStatusModal.vue | New reusable component for publish processing status |
| resources/js/Pages/Publish.vue | Updates publish logic to handle embargo vs immediate publish |
| resources/js/Pages/Project/Show.vue | Major refactor of publish modal UI and embargo project publishing |
| public/build/manifest.json | Build artifact updates from frontend changes |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## development #1295 +/- ##
==============================================
Coverage ? 18.02%
Complexity ? 2306
==============================================
Files ? 213
Lines ? 8871
Branches ? 0
==============================================
Hits ? 1599
Misses ? 7272
Partials ? 0
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
No description provided.