Class: Mumuki::Classroom::GuideProgress
- Inherits:
-
Document
- Object
- Document
- Mumuki::Classroom::GuideProgress
show all
- Includes:
- Mongoid::Timestamps
- Defined in:
- lib/mumuki/classroom/models/guide_progress.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Document
inherited, whitelist_attributes
Class Method Details
.attach_all_by!(query) ⇒ Object
28
29
30
|
# File 'lib/mumuki/classroom/models/guide_progress.rb', line 28
def attach_all_by!(query)
where(query).unset(:detached)
end
|
.destroy_all_by!(query) ⇒ Object
32
33
34
|
# File 'lib/mumuki/classroom/models/guide_progress.rb', line 32
def destroy_all_by!(query)
where(query).destroy
end
|
.detach_all_by!(query) ⇒ Object
24
25
26
|
# 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) ⇒ Object
40
41
42
43
44
45
46
47
48
49
50
|
# 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) ⇒ Object
56
57
58
|
# 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) ⇒ Object
36
37
38
|
# 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 ⇒ Object
52
53
54
|
# File 'lib/mumuki/classroom/models/guide_progress.rb', line 52
def uid_field
'student.uid'.to_sym
end
|
Instance Method Details
#slug ⇒ Object
19
20
21
|
# File 'lib/mumuki/classroom/models/guide_progress.rb', line 19
def slug
guide[:slug]
end
|