class Family::Legacy::MissingGradesController < Family::Controller
  def index
    render_success :ok, json: class_grades.map { |g| grade_props(g) }
  end

  private
    def class_grades
      current_family.class_grades
        .missing
        .includes(:class_assignment)
        .by_term(params[:term])
        .by_parent_viewable
        .with_classroom_students
        .order('ClassAssignments.DateDue asc')
    end

    def grade_props(grade)
      {
        id: grade.id,
        status: grade.status,
        student_id: grade.student_id,
        assignment_name: grade.class_assignment.name,
        assignment_due_date: grade.class_assignment.due_date,
        class_name: grade.class_assignment.classroom.name
      }
    end
end
