[LON-CAPA-cvs] cvs: loncom /interface/spreadsheet default_assesscalc
raeburn
raeburn at source.lon-capa.org
Wed Aug 13 16:03:55 EDT 2025
raeburn Wed Aug 13 20:03:55 2025 EDT
Modified files:
/loncom/interface/spreadsheet default_assesscalc
Log:
- Bug 6623. If submission was between due date and overdue date, "Awarded
Points" value includes reduction for lateness at submission time.
Points without penalty, grace period end date, and "late fraction" shown.
Index: loncom/interface/spreadsheet/default_assesscalc
diff -u loncom/interface/spreadsheet/default_assesscalc:1.8 loncom/interface/spreadsheet/default_assesscalc:1.9
--- loncom/interface/spreadsheet/default_assesscalc:1.8 Fri Feb 28 19:20:11 2014
+++ loncom/interface/spreadsheet/default_assesscalc Wed Aug 13 20:03:55 2025
@@ -58,12 +58,78 @@
<field col=L row=0>'Solved Parts:'</field>
<field col=M row=0>[&EXPANDSUM(PART;(stores_PART_awarded?1:0))]</field>
-
+<field col=N row=0>
+if ([stores_0_endgrace]>100000000) {
+ 'Grace Period Ends:'
+} else {
+ '';
+}
+</field>
+<field col=O row=0>
+if ([stores_0_endgrace]>100000000) {
+ [stores_0_endgrace]
+} else {
+ '';
+}
+</field>
+<field col=P row=0>
+if ([stores_0_endgrace]>100000000) {
+ $tmp = localtime([stores_0_endgrace]);
+ $tmp =~ s/\s/ /g;
+ $tmp;
+} else {
+ '';
+}
+</field>
+<field col=Q row=0>
+if (([stores_0_endgrace]>100000000) &&
+ ([stores_0_latefrac] ne '') &&
+ ([stores_0_latefrac]>=0) &&
+ ([stores_0_latefrac]<1)) {
+ 'Post-Due Fraction'
+} else {
+ '';
+}
+</field>
+<field col=R row=0>
+if (([stores_0_endgrace]>100000000) &&
+ ([stores_0_latefrac] ne '') &&
+ ([stores_0_latefrac]>=0) &&
+ ([stores_0_latefrac]<1)) {
+ [stores_0_latefrac]
+} else {
+ '';
+}
+</field>
+<field col=S row=0>
+if (([stores_0_endgrace]>100000000) &&
+ ([stores_0_latefrac] ne '') &&
+ ([stores_0_latefrac]>=0) &&
+ ([stores_0_latefrac]<1)) {
+ 'Points (no penalty)'
+} else {
+ '';
+}
+</field>
+<field col=T row=0>
+if (([stores_0_endgrace]>100000000) &&
+ ([stores_0_latefrac] ne '') &&
+ ([stores_0_latefrac]>=0) &&
+ ([stores_0_latefrac]<1)) {
+ if ("[stores_0_solved]" eq 'excused') {
+ 0
+ } else {
+ [&EXPANDSUM(PART;parameter_PART_weight*stores_PART_awarded)]
+ }
+} else {
+ '';
+}
+</field>
<field col=W row=0>'Available Points:'</field>
<field col=X row=0>
if ("[stores_0_solved]" eq 'excused') {
- 0
-} else {
+ 0
+} else {
[&EXPANDSUM(PART;parameter_PART_weight*(stores_PART_solved !~ /^\W?excused\W?$/ ? 1 : 0))];
}
</field>
@@ -71,8 +137,8 @@
<field col=Y row=0>'Awarded Points:'</field>
<field col=Z row=0>
if ("[stores_0_solved]" eq 'excused') {
- 0
+ 0
} else {
- [&EXPANDSUM(PART;parameter_PART_weight*stores_PART_awarded)]
+ [&EXPANDSUM(PART;parameter_PART_weight*stores_PART_awarded*(stores_PART_latefrac =~ /^\d+\.?\d*$/ ? stores_PART_latefrac : 1))]
}
</field>
More information about the LON-CAPA-cvs
mailing list