Sha256: d17ea9aecbfb88ba832f29eae4712c7f360cd5afb6361194a5429366484ae237
Contents?: true
Size: 882 Bytes
Versions: 19
Compression:
Stored size: 882 Bytes
Contents
<%= autogenerated_event_warning %> class LiveEvents::SyllabusEvent < LiveEvents::BaseEvent # The following is provided in the live events call: # { # course_id: course.global_id, # syllabus_body: LiveEvents.truncate(course.syllabus_body), # old_syllabus_body: LiveEvents.truncate(old_syllabus_body) # } # def perform(event_payload) super attrs = { course_id: course.try(:id), syllabus_body: payload[:syllabus_body] } create_or_update(attrs) rescue => e log_error e ensure true end private def create_or_update(attrs) syllabus = Syllabus.where(course_id: attrs[:course_id]).first_or_initialize syllabus.body = attrs[:syllabus_body] # Syllabus Body can get truncated by live events syllabus.save! end def course Course.find_by(canvas_course_id: local_canvas_id(payload[:course_id])) end end
Version data entries
19 entries across 19 versions & 1 rubygems