[LON-CAPA-cvs] cvs: loncom /interface loncoursedata.pm

raeburn raeburn at source.lon-capa.org
Tue Sep 9 01:01:24 EDT 2025


raeburn		Tue Sep  9 05:01:24 2025 EDT

  Modified files:              
    /loncom/interface	loncoursedata.pm 
  Log:
  - Bug 6623. Value stored in latefrac column (type double) in MySQL 
    md5_*_performance table needs to be NULL if $latefrac is empty string.     
  
  
Index: loncom/interface/loncoursedata.pm
diff -u loncom/interface/loncoursedata.pm:1.211 loncom/interface/loncoursedata.pm:1.212
--- loncom/interface/loncoursedata.pm:1.211	Mon Aug 11 21:52:25 2025
+++ loncom/interface/loncoursedata.pm	Tue Sep  9 05:01:24 2025
@@ -1,6 +1,6 @@
 # The LearningOnline Network with CAPA
 #
-# $Id: loncoursedata.pm,v 1.211 2025/08/11 21:52:25 raeburn Exp $
+# $Id: loncoursedata.pm,v 1.212 2025/09/09 05:01:24 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -1265,10 +1265,21 @@
             $award       = '' if (! defined($award));
             $awarddetail = '' if (! defined($awarddetail));
             $latefrac    = '' if (! defined($latefrac));
+            if ($latefrac ne '') {
+                unless (($latefrac >= 0) && ($latefrac <= 1)) {
+                    $latefrac = '';
+                }
+            }
             my $sql_performance = 
                 "('".join("','",$symb_id,$student_id,$part_id,$part,
                                 $solved,$tries,$awarded,$award,
-                                $awarddetail,$latefrac,$timestamp)."'),\n";
+                                $awarddetail);
+            if ($latefrac eq '') {
+                $sql_performance .= "',NULL,'";
+            } else {
+                $sql_performance .= "','$latefrac','";
+            }
+            $sql_performance .= "$timestamp'),\n";
             if ($max_perf) {
                 my $length = length($sql_performance);
                 if ($length > $max_perf) {




More information about the LON-CAPA-cvs mailing list