--- loncom/interface/lonmenu.pm 2016/05/13 22:48:05 1.448 +++ loncom/interface/lonmenu.pm 2016/06/02 01:43:46 1.450 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Routines to control the menu # -# $Id: lonmenu.pm,v 1.448 2016/05/13 22:48:05 raeburn Exp $ +# $Id: lonmenu.pm,v 1.450 2016/06/02 01:43:46 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1650,10 +1650,8 @@ sub done_button_js { nokey => 'A proctor key is required', ); my $navmap = Apache::lonnavmaps::navmap->new(); - my ($missing,$tried); + my ($missing,$tried) = (0,0); if (ref($navmap)) { - $missing=0; - $tried=0; my @resources=(); if ($type eq 'map') { my ($mapurl,$rid,$resurl)=&Apache::lonnet::decode_symb($env{'request.symb'}); @@ -1667,13 +1665,7 @@ sub done_button_js { } } foreach my $res (@resources) { - if ($res->singlepart()) { - if (!$res->tries()) { - $missing++; - } else { - $tried++; - } - } else { + if (ref($res->parts()) eq 'ARRAY') { foreach my $part (@{$res->parts()}) { if (!$res->tries($part)) { $missing++; @@ -1697,6 +1689,7 @@ sub done_button_js { $lt{'miss'} .= ' '.&mt('If you confirm you are done you will be unable to submit an answer for it.').'

'; } } + $donebuttontext = &HTML::Entities::encode($donebuttontext,'<>&"'); if ($proctor) { if ($height !~ /^\d+$/) { $height = 400; @@ -1721,7 +1714,7 @@ sub done_button_js {

$lt{'preamble'} $lt{$type}

$lt{'miss'}

$lt{'proctor'}

-
+
@@ -1795,7 +1788,7 @@ END
- +