Class: WorkStateTransition::NewSubmission
- Inherits:
-
Base
- Object
- ActiveRecord::Base
- ApplicationRecord
- WorkActivity
- Base
- WorkStateTransition::NewSubmission
- Defined in:
- app/models/work_state_transition/new_submission.rb
Constant Summary
Constants inherited from WorkActivity
WorkActivity::CHANGES, WorkActivity::CHANGE_LOG_ACTIVITY_TYPES, WorkActivity::DATACITE_ERROR, WorkActivity::EMBARGO, WorkActivity::FILE_CHANGES, WorkActivity::MESSAGE, WorkActivity::MESSAGE_ACTIVITY_TYPES, WorkActivity::MIGRATION_COMPLETE, WorkActivity::MIGRATION_START, WorkActivity::NOTIFICATION, WorkActivity::PROVENANCE_NOTES, WorkActivity::SYSTEM, WorkActivity::USER_REFERENCE
Class Method Summary collapse
Instance Method Summary collapse
-
#notify_users ⇒ Object
explicitly email the submitter of the new submission activity the NewSubmissionNotification additionally use the generic notification class to notify the group administrators that a submission has been created.
Methods inherited from Base
data_commons_url, #group_users, #notification_class, user_tags, #work
Methods inherited from WorkActivity
activities_for_work, changes_for_work, #created_by_user, #log_event_type?, #message_event_type?, messages_for_work, #notify_creator, #notify_curator, #notify_group, #renderer, #users_referenced
Class Method Details
.add_work_activity(work_id, current_user_id) ⇒ Object
4 5 6 7 8 9 10 11 12 13 |
# File 'app/models/work_state_transition/new_submission.rb', line 4 def self.add_work_activity(work_id, current_user_id) work_title = Work.find(work_id).title work_url = data_commons_url(work_id) = "[#{work_title}](#{work_url}) has been created." activity = NewSubmission.new(work_id:, activity_type: WorkActivity::NOTIFICATION, message:, created_by_user_id: current_user_id) activity.save! activity.notify_users activity end |
Instance Method Details
#notify_users ⇒ Object
explicitly email the submitter of the new submission activity the NewSubmissionNotification additionally use the generic notification class to notify the group administrators that a submission has been created
17 18 19 20 |
# File 'app/models/work_state_transition/new_submission.rb', line 17 def notify_users group_users.each { |user| WorkActivityNotification.create(work_activity_id: id, user_id: user.id) } NewSubmissionNotification.create(work_activity_id: id, user_id: work.created_by_user_id) end |