Diff for /loncom/homework/lonhomework.pm between versions 1.100 and 1.103

version 1.100, 2002/11/10 15:39:37 version 1.103, 2002/12/05 22:59:37
Line 144  $Apache::lonxml::browse=''; Line 144  $Apache::lonxml::browse='';
 sub check_access {  sub check_access {
   my ($id) = @_;    my ($id) = @_;
   my $date ='';    my $date ='';
   my $status = '';    my $status;
   my $datemsg = '';    my $datemsg = '';
   my $lastdate = '';    my $lastdate = '';
   my $temp;    my $temp;
Line 156  sub check_access { Line 156  sub check_access {
     $lastdate = $date;      $lastdate = $date;
     $date = &Apache::lonnet::EXT("resource.$id.$temp");      $date = &Apache::lonnet::EXT("resource.$id.$temp");
     my $thistype = &Apache::lonnet::EXT("resource.$id.$temp.type");      my $thistype = &Apache::lonnet::EXT("resource.$id.$temp.type");
       if ($thistype =~ /^(con_lost|no_such_host)/ ||
    $date     =~ /^(con_lost|no_such_host)/) {
    $status='UNAVAILABLE';
    $date="may open later.";
    return($status,$date);
       }
     if ($thistype eq 'date_interval') {      if ($thistype eq 'date_interval') {
  if ($temp eq 'opendate') {   if ($temp eq 'opendate') {
            $date=&Apache::lonnet::EXT("resource.$id.duedate")-$date;             $date=&Apache::lonnet::EXT("resource.$id.duedate")-$date;
Line 309  sub handle_save_or_undo { Line 315  sub handle_save_or_undo {
   return $error;    return $error;
 }  }
   
   sub analyze_header {
       my ($request) = @_;
       my $result.='<html><body bgcolor="#FFFFFF">
               <form name="lonhomework" method="POST" action="'.
         $ENV{'request.uri'}.'">
               <input type="submit" name="problemmode" value="EditXML" />
               <input type="submit" name="problemmode" value="Edit" />
               <hr />
               <input type="submit" name="submit" value="View" />
               <hr />
               List of possible answers:
               </form>';
       $request->print($result);
       $request->rflush();
   }
   
 sub analyze {  sub analyze {
   my ($request,$file) = @_;      my ($request,$file) = @_;
   &Apache::lonxml::debug("Analyze");      &Apache::lonxml::debug("Analyze");
   my $result=&Apache::lonnet::ssi($request->uri,('grade_target' => 'analyze'));      my $result;
   &Apache::lonxml::debug(":$result:");      my %overall;
   (my $garbage,$result)=split(/_HASH_REF__/,$result,2);      my %allparts;
   &showhash(&Apache::lonnet::str2hash($result));      my $rndseed=$ENV{'form.rndseed'};
   return $result;      &analyze_header($request);
       for(my $i=1;$i<$ENV{'form.numtoanalyze'}+1;$i++) {
    my $subresult=&Apache::lonnet::ssi($request->uri,
      ('grade_target' => 'analyze'),
      ('rndseed' => $i));
    &Apache::lonxml::debug(":$subresult:");
    (my $garbage,$subresult)=split(/_HASH_REF__/,$subresult,2);
    my %analyze=&Apache::lonnet::str2hash($subresult);
    &Apache::lonhomework::showhash(%analyze);
    my @parts = @{ $analyze{'parts'} };
    foreach my $part (@parts) {
       if (!exists($allparts{$part})) {$allparts{$part}=1;};
       if ($analyze{$part.'.type'} eq 'numericalresponse') {
    push( @{ $overall{$part.'.answer'} },
         [@{ $analyze{$part.'.answer'} }]);
       }
    }
       }
       foreach my $part (keys(%allparts)) {
    $request->print('<table><tr><td>Part '.$part.'</td></tr>');
    foreach my $answer (sort {$a->[0] <=> $b->[0]} (@{ $overall{$part.'.answer'} })) {
       $request->print('<tr><td>'.join('</td><td>',@{ $answer }).
       '</td></tr>');
    }
       }
       &Apache::lonhomework::showhash(%overall);
       return $result;
 }  }
   
 sub editxmlmode {  sub editxmlmode {

Removed from v.1.100  
changed lines
  Added in v.1.103


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>