class Mumuki::Classroom::GuideProgress
Public Class Methods
attach_all_by!(query)
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 28 def attach_all_by!(query) where(query).unset(:detached) end
destroy_all_by!(query)
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 32 def destroy_all_by!(query) where(query).destroy end
detach_all_by!(query)
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 24 def detach_all_by!(query) where(query).set(detached: true) end
last_assignment_by(query)
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 40 def last_assignment_by(query) where(query).order_by('last_assignment.submission.created_at': :desc).first.try do |it| Mumuki::Classroom::LastAssignment.new(guide: it.guide, exercise: it.last_assignment.exercise, submission: { sid: it.last_assignment.submission.sid, status: it.last_assignment.submission.status, created_at: it.last_assignment.submission.created_at, }) end end
progresses_for(progress_item, student)
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 56 def progresses_for(progress_item, student) where(organization: progress_item.organization, course: student.course, slug: progress_item.content.slug, 'student.uid': student.uid) end
transfer_all_by!(query, new_organization, new_course)
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 36 def transfer_all_by!(query, new_organization, new_course) where(query).set(organization: new_organization, course: new_course) end
uid_field()
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 52 def uid_field 'student.uid'.to_sym end
Public Instance Methods
slug()
click to toggle source
# File lib/mumuki/classroom/models/guide_progress.rb, line 19 def slug guide[:slug] end