Diff for /loncom/homework/lonhomework.pm between versions 1.230 and 1.233.2.1

version 1.230, 2005/12/21 17:53:25 version 1.233.2.1, 2006/02/16 01:25:33
Line 198  sub check_ip_acc { Line 198  sub check_ip_acc {
     my $ip=$ENV{'REMOTE_ADDR'};      my $ip=$ENV{'REMOTE_ADDR'};
     my $name;      my $name;
     foreach my $pattern (split(',',$acc)) {      foreach my $pattern (split(',',$acc)) {
    $pattern =~ s/^\s*//;
    $pattern =~ s/\s*$//;
  if ($pattern =~ /\*$/) {   if ($pattern =~ /\*$/) {
     #35.8.*      #35.8.*
     $pattern=~s/\*//;      $pattern=~s/\*//;
Line 295  sub check_slot_access { Line 297  sub check_slot_access {
  $slotstatus='CAN_ANSWER';   $slotstatus='CAN_ANSWER';
     }      }
   
     my ($pass_status,$checkedin);      my ($is_correct,$got_grade,$checkedin);
     if ($type eq 'Task') {      if ($type eq 'Task') {
  my $version=$Apache::lonhomework::history{'resource.0.version'};   my $version=$Apache::lonhomework::history{'resource.0.version'};
  $pass_status =    $got_grade = 
     $Apache::lonhomework::history{"resource.$version.0.status"} eq 'fail';      ($Apache::lonhomework::history{"resource.$version.0.status"} 
        =~ /^(?:pass|fail)$/);
    $is_correct =  
       ($Apache::lonhomework::history{"resource.$version.0.status"} eq 'pass'
        || $Apache::lonhomework::history{"resource.0.solved"} =~ /^correct_/ );
  $checkedin =   $checkedin =
     $Apache::lonhomework::history{"resource.$version.0.checkedin"};      $Apache::lonhomework::history{"resource.$version.0.checkedin"};
     } elsif ($type eq 'problem') {      } elsif ($type eq 'problem') {
  $pass_status = 1;   $got_grade = 1;
  $checkedin = $Apache::lonhomework::history{"resource.0.checkedin"};   $checkedin = $Apache::lonhomework::history{"resource.0.checkedin"};
     }      }
           
       &Apache::lonxml::debug(" slot is $slotstatus checkedin ($checkedin) got_grade ($got_grade) is_correct ($is_correct)");
       
     if ($slotstatus eq 'NOT_IN_A_SLOT'       if ($slotstatus eq 'NOT_IN_A_SLOT' 
  && $checkedin ) {   && $checkedin ) {
   
  if ($pass_status) {   if ($got_grade) {
     return ('SHOW_ANSWER');      return ('SHOW_ANSWER');
  } else {   } else {
     return ('WAITING_FOR_GRADE');      return ('WAITING_FOR_GRADE');
  }   }
   
     }      }
       if ( $is_correct) {
    return ('SHOW_ANSWER');
       }
     if ( $status eq 'CANNOT_ANSWER' &&       if ( $status eq 'CANNOT_ANSWER' && 
  ($slotstatus ne 'NEEDS_CHECKIN' && $slotstatus ne 'NOT_IN_A_SLOT')) {   ($slotstatus ne 'NEEDS_CHECKIN' && $slotstatus ne 'NOT_IN_A_SLOT')) {
  return ($status,$datemsg);   return ($status,$datemsg);
Line 764  sub editxmlmode { Line 775  sub editxmlmode {
     &Apache::structuretags::remember_problem_state().'      &Apache::structuretags::remember_problem_state().'
             <input type="hidden" name="problemmode" value="'.&mt('EditXML').'" />              <input type="hidden" name="problemmode" value="'.&mt('EditXML').'" />
             <input type="submit" name="problemmode" accesskey="d" value="'.&mt('Discard Edits and View').'" />              <input type="submit" name="problemmode" accesskey="d" value="'.&mt('Discard Edits and View').'" />
             <input type="submit" name="problemmode" accesskey="e" value="'.&mt('Edit').'" />              <input type="submit" '.&Apache::edit::submit_ask_anyway().'name="problemmode" accesskey="e" value="'.&mt('Edit').'" />
             <input type="submit" name="Undo" accesskey="u" value="'.&mt('undo').'" />              <input type="submit" name="Undo" accesskey="u" value="'.&mt('undo').'" />
             <hr />              <hr />
             <input type="submit" name="submit" accesskey="s" value="'.&mt('Submit Changes').'" />              <input type="submit" name="submit" accesskey="s" value="'.&mt('Submit Changes').'" />

Removed from v.1.230  
changed lines
  Added in v.1.233.2.1


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