--- loncom/homework/grades.pm 2005/11/22 20:21:02 1.298 +++ loncom/homework/grades.pm 2005/12/02 19:40:47 1.300 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.298 2005/11/22 20:21:02 www Exp $ +# $Id: grades.pm,v 1.300 2005/12/02 19:40:47 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1852,13 +1852,15 @@ KEYWORDS &mt('Message will be sent when you click on Save & Next below.').")\n"; $request->print($result); } - if (&Apache::lonnet::allowed('vgr',$env{'request.course.id'})) { + if ($perm{'vgr'}) { $request->print('
'. - &Apache::loncommon::track_student_link(&mt('View recent activity'),$uname,$udom,'check')); + &Apache::loncommon::track_student_link(&mt('View recent activity'), + $uname,$udom,'check')); } - if (&Apache::lonnet::allowed('opa',$env{'request.course.id'})) { + if ($perm{'opa'}) { $request->print('
'. - &Apache::loncommon::pprmlink(&mt('Set/Change parameters'),$uname,$udom,$symb,'check')); + &Apache::loncommon::pprmlink(&mt('Set/Change parameters'), + $uname,$udom,$symb,'check')); } my %seen = (); @@ -2879,10 +2881,10 @@ sub editgrades { "$env{'user.name'}:$env{'user.domain'}"; if ($dropMenu eq 'reset status' && $old_score ne '') { # ignore if no previous attempts => nothing to reset - $newrecord{'resource.'.$_.'.tries'} = 0; + $newrecord{'resource.'.$_.'.tries'} = ''; $newrecord{'resource.'.$_.'.solved'} = ''; $newrecord{'resource.'.$_.'.award'} = ''; - $newrecord{'resource.'.$_.'.awarded'} = 0; + $newrecord{'resource.'.$_.'.awarded'} = ''; $updateflag = 1; if ($env{'form.GD_'.$user.'_'.$_.'_aggtries'} > 0) { my $aggtries = $env{'form.GD_'.$user.'_'.$_.'_aggtries'}; @@ -5524,18 +5526,18 @@ sub reset_perm { sub init_perm { &reset_perm(); - if (!($perm{'vgr'}=&Apache::lonnet::allowed('vgr',$env{'request.course.id'}))) { - if ($perm{'vgr'}=&Apache::lonnet::allowed('vgr',$env{'request.course.id'}.'/'.$env{'request.course.sec'})) { - $perm{'vgr_section'}=$env{'request.course.sec'}; - } else { - delete($perm{'vgr'}); - } - } - if (!($perm{'mgr'}=&Apache::lonnet::allowed('mgr',$env{'request.course.id'}))) { - if ($perm{'mgr'}=&Apache::lonnet::allowed('mgr',$env{'request.course.id'}.'/'.$env{'request.course.sec'})) { - $perm{'mgr_section'}=$env{'request.course.sec'}; - } else { - delete($perm{'mgr'}); + foreach my $test_perm ('vgr','mgr','opa') { + + my $scope = $env{'request.course.id'}; + if (!($perm{$test_perm}=&Apache::lonnet::allowed($test_perm,$scope))) { + + $scope .= '/'.$env{'request.course.sec'}; + if ( $perm{$test_perm}= + &Apache::lonnet::allowed($test_perm,$scope)) { + $perm{$test_perm.'_section'}=$env{'request.course.sec'}; + } else { + delete($perm{$test_perm}); + } } } }