From: Sam H. v. a. <we...@ma...> - 2005-08-30 13:10:53
|
Log Message: ----------- fixed error message when answer log does not exist Modified Files: -------------- webwork2/lib/WeBWorK/ContentGenerator/Instructor: ShowAnswers.pm Revision Data ------------- Index: ShowAnswers.pm =================================================================== RCS file: /webwork/cvs/system/webwork2/lib/WeBWorK/ContentGenerator/Instructor/ShowAnswers.pm,v retrieving revision 1.14 retrieving revision 1.15 diff -Llib/WeBWorK/ContentGenerator/Instructor/ShowAnswers.pm -Llib/WeBWorK/ContentGenerator/Instructor/ShowAnswers.pm -u -r1.14 -r1.15 --- lib/WeBWorK/ContentGenerator/Instructor/ShowAnswers.pm +++ lib/WeBWorK/ContentGenerator/Instructor/ShowAnswers.pm @@ -98,24 +98,29 @@ my $pattern = "^[[^]]*]|$studentUser\\|$setName\\|$problemNumber\\|"; - if (open(LOG,"$answer_log")) { - my $line; - $self->{lastdate} = ''; - $self->{lasttime} = 0; - $self->{lastID} = ''; - $self->{lastn} = 0; - - my @lines = grep(/$pattern/,<LOG>); close(LOG); - chomp(@lines); - foreach $line (@lines) {$line = substr($line,27)}; # remove datestamp - - print CGI::start_table({border=>0,cellpadding=>0,cellspacing=>3,align=>"center"}); - print "No entries for $studentUser set $setName, problem $problemNumber" unless @lines; - foreach $line (sort byData @lines) {$self->tableRow(split("\t",$line,-1))} - print CGI::Tr(CGI::td({colspan=>$self->{lastn}},CGI::hr({size=>3}))) if ($self->{lastn}); - print CGI::end_table(); + if (-e $answer_log) { + if (open my $log, $answer_log) { + my $line; + $self->{lastdate} = ''; + $self->{lasttime} = 0; + $self->{lastID} = ''; + $self->{lastn} = 0; + + my @lines = grep(/$pattern/,<LOG>); close(LOG); + chomp(@lines); + foreach $line (@lines) {$line = substr($line,27)}; # remove datestamp + + print CGI::start_table({border=>0,cellpadding=>0,cellspacing=>3,align=>"center"}); + print "No entries for $studentUser set $setName, problem $problemNumber" unless @lines; + foreach $line (sort byData @lines) {$self->tableRow(split("\t",$line,-1))} + print CGI::Tr(CGI::td({colspan=>$self->{lastn}},CGI::hr({size=>3}))) if ($self->{lastn}); + print CGI::end_table(); + } else { + $self->addbadmessage("Failed to open the answer log '$answer_log': $!"); + } } else { - print "<B>Can't open the access log $answer_log</B>"; + # no answer log exists yet -- this is probably not an error + print "No answers have been logged. (Answer log '$answer_log' does not exist.)"; } } |