Closed cycomachead closed 2 weeks ago
Data migration script
irb(main):057:1* School.where(grade_level: nil, teachers_count: 1...).each do |s|
irb(main):058:1* t = s.teachers.validated
irb(main):059:1* edu = t.pluck(:education_level).compact.uniq
irb(main):060:1* next unless edu.length == 1
irb(main):061:1* s.grade_level = School.grade_levels[edu[0]]
irb(main):062:1* puts "School: #{s.name} -- #{edu} -- #{School.grade_levels[edu[0]]}"
irb(main):063:1* puts s.save!
irb(main):064:0> end
enum application_status: {
validated: "Validated",
denied: "Denied",
info_needed: "Info Needed",
not_reviewed: "Not Reviewed",
}
validates_inclusion_of :application_status, in: application_statuses.keys
# Non-admin teachers whose application has neither been accepted nor denied
# It might or might not have been reviewed.
scope :unvalidated, -> { where("(application_status=? OR application_status=?) AND admin=?", application_statuses[:info_needed], application_statuses[:not_reviewed], "false") }
scope :unreviewed, -> { where("application_status=? AND admin=?", application_statuses[:not_reviewed], "false") }
# Non-admin teachers who have been accepted/validated
scope :validated, -> { where("application_status=? AND admin=?", application_statuses[:validated], "false") }
snap
tosnap_username
email
toemail_address
status
torole