@@ -284,6 +284,14 @@ def _scorable_mchoice_answers(
284284 & (db .mchoice_answers .sid == sid )
285285 & (db .mchoice_answers .div_id == question_name )
286286 )
287+
288+ course = (
289+ db (db .courses .course_name == course_name )
290+ .select ()
291+ .first ()
292+ )
293+ query = query & (db .mchoice_answers .timestamp >= course .term_start_date )
294+
287295 if deadline :
288296 query = query & (db .mchoice_answers .timestamp < deadline )
289297 if practice_start_time :
@@ -351,6 +359,13 @@ def _scorable_useinfos(
351359 else :
352360 query = query & (db .useinfo .div_id == div_id )
353361
362+ course = (
363+ db (db .courses .course_name == course_name )
364+ .select ()
365+ .first ()
366+ )
367+ query = query & (db .useinfo .timestamp >= course .term_start_date )
368+
354369 if event_filter :
355370 query = query & (db .useinfo .event == event_filter )
356371 if deadline :
@@ -379,6 +394,12 @@ def _scorable_webwork_answers(
379394 & (db .webwork_answers .sid == sid )
380395 & (db .webwork_answers .div_id == question_name )
381396 )
397+ course = (
398+ db (db .courses .course_name == course_name )
399+ .select ()
400+ .first ()
401+ )
402+ query = query & (db .webwork_answers .timestamp >= course .term_start_date )
382403 if deadline :
383404 query = query & (db .webwork_answers .timestamp < deadline )
384405 if practice_start_time :
@@ -403,6 +424,12 @@ def _scorable_parsons_answers(
403424 & (db .parsons_answers .sid == sid )
404425 & (db .parsons_answers .div_id == question_name )
405426 )
427+ course = (
428+ db (db .courses .course_name == course_name )
429+ .select ()
430+ .first ()
431+ )
432+ query = query & (db .parsons_answers .timestamp >= course .term_start_date )
406433 if deadline :
407434 query = query & (db .parsons_answers .timestamp < deadline )
408435 if practice_start_time :
@@ -427,6 +454,12 @@ def _scorable_microparsons_answers(
427454 & (db .microparsons_answers .sid == sid )
428455 & (db .microparsons_answers .div_id == question_name )
429456 )
457+ course = (
458+ db (db .courses .course_name == course_name )
459+ .select ()
460+ .first ()
461+ )
462+ query = query & (db .microparsons_answers .timestamp >= course .term_start_date )
430463 if deadline :
431464 query = query & (db .microparsons_answers .timestamp < deadline )
432465 if practice_start_time :
@@ -451,6 +484,12 @@ def _scorable_fitb_answers(
451484 & (db .fitb_answers .sid == sid )
452485 & (db .fitb_answers .div_id == question_name )
453486 )
487+ course = (
488+ db (db .courses .course_name == course_name )
489+ .select ()
490+ .first ()
491+ )
492+ query = query & (db .fitb_answers .timestamp >= course .term_start_date )
454493 if deadline :
455494 query = query & (db .fitb_answers .timestamp < deadline )
456495 if practice_start_time :
@@ -475,6 +514,12 @@ def _scorable_clickablearea_answers(
475514 & (db .clickablearea_answers .sid == sid )
476515 & (db .clickablearea_answers .div_id == question_name )
477516 )
517+ course = (
518+ db (db .courses .course_name == course_name )
519+ .select ()
520+ .first ()
521+ )
522+ query = query & (db .clickablearea_answers .timestamp >= course .term_start_date )
478523 if deadline :
479524 query = query & (db .clickablearea_answers .timestamp < deadline )
480525 if practice_start_time :
@@ -499,6 +544,12 @@ def _scorable_dragndrop_answers(
499544 & (db .dragndrop_answers .sid == sid )
500545 & (db .dragndrop_answers .div_id == question_name )
501546 )
547+ course = (
548+ db (db .courses .course_name == course_name )
549+ .select ()
550+ .first ()
551+ )
552+ query = query & (db .dragndrop_answers .timestamp >= course .term_start_date )
502553 if deadline :
503554 query = query & (db .dragndrop_answers .timestamp < deadline )
504555 if practice_start_time :
@@ -547,6 +598,12 @@ def _scorable_splice_answers(
547598 & (db .splice_answers .sid == sid )
548599 & (db .splice_answers .div_id == question_name )
549600 )
601+ course = (
602+ db (db .courses .course_name == course_name )
603+ .select ()
604+ .first ()
605+ )
606+ query = query & (db .splice_answers .timestamp >= course .term_start_date )
550607 if deadline :
551608 query = query & (db .splice_answers .timestamp < deadline )
552609 if practice_start_time :
@@ -571,6 +628,12 @@ def _scorable_codelens_answers(
571628 & (db .codelens_answers .sid == sid )
572629 & (db .codelens_answers .div_id == question_name )
573630 )
631+ course = (
632+ db (db .courses .course_name == course_name )
633+ .select ()
634+ .first ()
635+ )
636+ query = query & (db .codelens_answers .timestamp >= course .term_start_date )
574637 if deadline :
575638 query = query & (db .codelens_answers .timestamp < deadline )
576639 if practice_start_time :
@@ -595,6 +658,12 @@ def _scorable_lp_answers(
595658 & (db .lp_answers .sid == sid )
596659 & (db .lp_answers .div_id == question_name )
597660 )
661+ course = (
662+ db (db .courses .course_name == course_name )
663+ .select ()
664+ .first ()
665+ )
666+ query = query & (db .lp_answers .timestamp >= course .term_start_date )
598667 if deadline :
599668 query = query & (db .lp_answers .timestamp < deadline )
600669 if practice_start_time :
0 commit comments