[LON-CAPA-cvs] cvs: loncom /interface lonnavmaps.pm
raeburn
raeburn at source.lon-capa.org
Tue Apr 4 19:15:48 EDT 2023
raeburn Tue Apr 4 23:15:48 2023 EDT
Modified files:
/loncom/interface lonnavmaps.pm
Log:
- Bug 4928
Don't show ellipsis and "Answer submitted" unless a submission has occurred,
in case where problemstatus is "No" and this post-due date bu pre-answer date.
Index: loncom/interface/lonnavmaps.pm
diff -u loncom/interface/lonnavmaps.pm:1.562 loncom/interface/lonnavmaps.pm:1.563
--- loncom/interface/lonnavmaps.pm:1.562 Tue Oct 4 20:39:59 2022
+++ loncom/interface/lonnavmaps.pm Tue Apr 4 23:15:48 2023
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Navigate Maps Handler
#
-# $Id: lonnavmaps.pm,v 1.562 2022/10/04 20:39:59 raeburn Exp $
+# $Id: lonnavmaps.pm,v 1.563 2023/04/04 23:15:48 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -549,6 +549,10 @@
$resObj->EXCUSED => '#3333FF',
$resObj->PAST_DUE_ANSWER_LATER => '',
$resObj->PAST_DUE_NO_ANSWER => '',
+ $resObj->PAST_DUE_ATMPT_ANS => '',
+ $resObj->PAST_DUE_ATMPT_NOANS => '',
+ $resObj->PAST_DUE_NO_ATMT_ANS => '',
+ $resObj->PAST_DUE_NO_ATMT_NOANS => '',
$resObj->ANSWER_OPEN => '#006600',
$resObj->OPEN_LATER => '',
$resObj->TRIES_LEFT => '',
@@ -694,10 +698,10 @@
return &Apache::lonhtmlcommon::direct_parm_link(&mt("Open, no due date"),$res->symb(),'duedate',$part).$slotinfo;
}
}
- if ($status == $res->PAST_DUE_ANSWER_LATER) {
+ if (($status == $res->PAST_DUE_ANSWER_LATER) || ($status == $res->PAST_DUE_ATMPT_ANS) || ($status == $res->PAST_DUE_NO_ATMT_ANS)) {
return &mt("Answer open [_1]",&Apache::lonhtmlcommon::direct_parm_link(&timeToHumanString($answer,'start'),$res->symb(),'answerdate',$part));
}
- if ($status == $res->PAST_DUE_NO_ANSWER) {
+ if (($status == $res->PAST_DUE_NO_ANSWER) || ($status == $res->PAST_DUE_ATMPT_NOANS) || ($status == $res->PAST_DUE_NO_ATMT_NOANS)) {
if ($res->is_practice()) {
return &mt("Closed [_1]",&Apache::lonhtmlcommon::direct_parm_link(&timeToHumanString($due,'start'),$res->symb(),'answerdate,duedate',$part));
} else {
@@ -5715,7 +5719,6 @@
Open and not yet due.
-
=item * B<PAST_DUE_ANSWER_LATER>:
The due date has passed, but the answer date has not yet arrived.
@@ -5728,6 +5731,26 @@
The answer date is here.
+=item * B<NOTHING_SET>:
+
+No dates have been set for this problem at all.
+
+=item * B<PAST_DUE_ATMPT_ANS>:
+
+The due date has passed, feedback is suppressed, the problem was attempted, and the answer date has not yet arrived.
+
+=item * B<PAST_DUE_ATMPT_NOANS>:
+
+The due date has passed, feedback is suppressed, the problem was attempted, and there is no answer opening date set.
+
+=item * B<PAST_DUE_NO_ATMT_ANS>:
+
+The due date has passed, feedback is suppressed, the problem was not attempted, and the answer date has not yet arrived.
+
+=item * B<PAST_DUE_NO_ATMT_NOANS>:
+
+The due date has passed, feedback is suppressed, the problem was not attempted, and there is no answer opening date set.
+
=item * B<NETWORK_FAILURE>:
The information is unknown due to network failure.
@@ -5743,6 +5766,10 @@
sub PAST_DUE_ANSWER_LATER { return 3; }
sub ANSWER_OPEN { return 4; }
sub NOTHING_SET { return 5; }
+sub PAST_DUE_ATMPT_ANS { return 6; }
+sub PAST_DUE_ATMPT_NOANS { return 7; }
+sub PAST_DUE_NO_ATMT_ANS { return 8; }
+sub PAST_DUE_NO_ATMT_NOANS { return 9; }
sub NETWORK_FAILURE { return 100; }
# getDateStatus gets the date status for a given problem part.
@@ -5946,6 +5973,26 @@
The problem is past due, not considered correct, and an answer date in
the future is set.
+=item * B<PAST_DUE_ATMPT_ANS>:
+
+The problem is past due, feedback is suppressed, the problem was
+attempted and an answer date in the future is set.
+
+=item * B<PAST_DUE_ATMPT_NOANS>:
+
+The problem is past due, feedback is suppressed, the problem was
+attempted and no answer date is set.
+
+=item * B<PAST_DUE_NO_ATMT_ANS>:
+
+The problem is past due, feedback is suppressed, the problem was
+not attempted and an answer date in the future is set.
+
+=item * B<PAST_DUE_NO_ATMT_NOANS>:
+
+The problem is past due, feedback is suppressed, the problem was
+not attempted and no answer date is set.
+
=item * B<ANSWER_OPEN>:
The problem is past due, not correct, and the answer is now available.
@@ -6029,7 +6076,18 @@
if ($completionStatus == CORRECT ||
$completionStatus == CORRECT_BY_OVERRIDE ||
$completionStatus == CORRECT_BY_PASSBACK ) {
- if ( $suppressFeedback ) { return ANSWER_SUBMITTED }
+ if ( $suppressFeedback ) {
+ if ($dateStatus == PAST_DUE_ANSWER_LATER ||
+ $dateStatus == PAST_DUE_NO_ANSWER ) {
+ if ($dateStatus == PAST_DUE_ANSWER_LATER) {
+ return PAST_DUE_ATMPT_ANS;
+ } else {
+ return PAST_DUE_ATMPT_NOANS;
+ }
+ } else {
+ return ANSWER_SUBMITTED;
+ }
+ }
my $awarded=$self->awarded($part);
if ($awarded < 1 && $awarded > 0) {
return PARTIALLY_CORRECT;
@@ -6069,7 +6127,23 @@
if ($dateStatus == PAST_DUE_ANSWER_LATER ||
$dateStatus == PAST_DUE_NO_ANSWER ) {
- return $suppressFeedback ? ANSWER_SUBMITTED : $dateStatus;
+ if ($suppressFeedback) {
+ if ($completionStatus == NOT_ATTEMPTED) {
+ if ($dateStatus == PAST_DUE_ANSWER_LATER) {
+ return PAST_DUE_NO_ATMT_ANS;
+ } else {
+ return PAST_DUE_NO_ATMT_NOANS;
+ }
+ } else {
+ if ($dateStatus == PAST_DUE_ANSWER_LATER) {
+ return PAST_DUE_ATMPT_ANS;
+ } else {
+ return PAST_DUE_ATMPT_NOANS;
+ }
+ }
+ } else {
+ return $dateStatus;
+ }
}
if ($dateStatus == ANSWER_OPEN) {
@@ -6315,6 +6389,10 @@
EXCUSED() => CORRECT,
PAST_DUE_NO_ANSWER() => INCORRECT,
PAST_DUE_ANSWER_LATER() => INCORRECT,
+ PAST_DUE_ATMPT_ANS() => ATTEMPTED,
+ PAST_DUE_ATMPT_NOANS() => ATTEMPTED,
+ PAST_DUE_NO_ATMT_ANS() => CLOSED,
+ PAST_DUE_NO_ATMT_NOANS() => CLOSED,
ANSWER_OPEN() => INCORRECT,
OPEN_LATER() => CLOSED,
TRIES_LEFT() => OPEN,
More information about the LON-CAPA-cvs
mailing list