--- loncom/interface/loncoursedata.pm 2003/10/03 16:39:17 1.101 +++ loncom/interface/loncoursedata.pm 2003/10/17 21:36:10 1.104 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: loncoursedata.pm,v 1.101 2003/10/03 16:39:17 matthew Exp $ +# $Id: loncoursedata.pm,v 1.104 2003/10/17 21:36:10 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1222,6 +1222,7 @@ sub update_full_student_data { # However, there is one wrinkle: submissions which end in # and odd number of '\' cause insert errors to occur. # Best trap this somehow... + $value =~ s/\'/\\\'/g; my ($offensive_string) = ($value =~ /(\\+)$/); if (length($offensive_string) % 2) { $value =~ s/\\$/\\\\/; @@ -1986,9 +1987,11 @@ sub execute_SQL_request { return (); } +#sub get_timestamp_data { +# my ($students,$symb, sub get_optionresponse_data { my ($students,$symb,$response,$courseid) = @_; - return if (! defined($symb) || + return undef if (! defined($symb) || ! defined($response)); $courseid = $ENV{'request.course.id'} if (! defined($courseid)); # @@ -1999,7 +2002,8 @@ sub get_optionresponse_data { my $dbh = &Apache::lonmysql::get_dbh(); return undef if (! defined($dbh)); my $request = 'SELECT '. - 'a.response_specific_value, a.submission, b.timestamp, c.tries '. + 'a.awarddetail, a.response_specific_value, a.submission, '. + 'b.timestamp, c.tries '. 'FROM '.$fulldump_response_table.' AS a '. 'LEFT JOIN '.$fulldump_timestamp_table.' AS b '. 'ON a.symb_id=b.symb_id AND a.student_id=b.student_id AND '. @@ -2011,19 +2015,19 @@ sub get_optionresponse_data { 'a.symb_id='.$symb_id.' AND a.response_id='.$response_id; if (defined($students)) { $request .= ' AND ('. - join(' OR ', map {'student_id='. + join(' OR ', map {'a.student_id='. &get_student_id($_->{'username'}, $_->{'domain'}) } @$students ).')'; } $request .= ' ORDER BY b.timestamp'; - &Apache::lonnet::logthis("request =\n".$request); +# &Apache::lonnet::logthis("request =\n".$request); my $sth = $dbh->prepare($request); $sth->execute(); my $dataset = $sth->fetchall_arrayref(); if (ref($dataset) eq 'ARRAY' && scalar(@$dataset)>0) { - return @$dataset; + return $dataset; } }