--- loncom/interface/lonparmset.pm 2003/11/17 20:56:30 1.135 +++ loncom/interface/lonparmset.pm 2003/12/12 19:41:11 1.139.2.2 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set parameters for assessments # -# $Id: lonparmset.pm,v 1.135 2003/11/17 20:56:30 albertel Exp $ +# $Id: lonparmset.pm,v 1.139.2.2 2003/12/12 19:41:11 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -131,12 +131,12 @@ sub parmval { # -------------------------------------------------------- first, check default - if ($def) { $outpar[11]=$def; $result=11; } + if (defined($def)) { $outpar[11]=$def; $result=11; } # ----------------------------------------------------- second, check map parms my $thisparm=$parmhash{$symbparm}; - if ($thisparm) { $outpar[10]=$thisparm; $result=10; } + if (defined($thisparm)) { $outpar[10]=$thisparm; $result=10; } # --------------------------------------------------------- third, check course @@ -285,7 +285,7 @@ sub plink { sub startpage { - my ($r,$id,$udom,$csec,$uname,$have_assesments)=@_; + my ($r,$id,$udom,$csec,$uname,$have_assesments,$trimheader)=@_; my $bodytag=&Apache::loncommon::bodytag('Set/Modify Course Parameters','', 'onUnload="pclose()"'); @@ -354,7 +354,9 @@ sub startpage { $selscript $bodytag +ENDHEAD + unless ($trimheader) {$r->print(<

$lt{'cep'}

@@ -370,9 +372,12 @@ $bodytag
+ENDHEAD2 +} + $r->print(<

$lt{'captm'}

-ENDHEAD +ENDHEAD3 if (!$have_assesments) { $r->print(''.&mt('There are no assesment parameters in this course to set.').'
'); @@ -485,21 +490,23 @@ sub print_row { } # end of $brief if/else } # end of $parmlev if/else - if ($parmlev eq 'full' || $parmlev eq 'brief') { - $r->print(''. + $r->print(''. &valout($outpar[$result],$typeoutpar[$result]).''); - } - my $sessionval=&Apache::lonnet::EXT('resource.'.$$part{$which}. + + if ($parmlev eq 'full' || $parmlev eq 'brief') { + my $sessionval=&Apache::lonnet::EXT('resource.'.$$part{$which}. '.'.$$name{$which},$symbp{$rid}); + # this doesn't seem to work, and I don't think is correct # my $sessionvaltype=&Apache::lonnet::EXT('resource.'.$$part{$which}. # '.'.$$name{$which}.'.type',$symbp{$rid}); # this seems to work - my $sessionvaltype=$typeoutpar[$result]; - if (!defined($sessionvaltype)) { $sessionvaltype=$$defaulttype{$which}; } - $r->print(''. + my $sessionvaltype=$typeoutpar[$result]; + if (!defined($sessionvaltype)) { $sessionvaltype=$$defaulttype{$which}; } + $r->print(''. &valout($sessionval,$sessionvaltype).' '. ''); + } $r->print(''); $r->print("\n"); } @@ -687,6 +694,7 @@ sub assessparms { my $pssymb=''; my $parmlev=''; + my $trimheader=''; my $prevvisit=$ENV{'form.prevvisit'}; # unless ($parmlev==$ENV{'form.parmlev'}) { @@ -709,11 +717,13 @@ sub assessparms { if (!@pscat) { @pscat=('all'); } $pschp=''; $parmlev = 'full'; + $trimheader='yes'; } elsif ($ENV{'form.symb'}) { $pssymb=$ENV{'form.symb'}; if (!@pscat) { @pscat=('all'); } $pschp=''; $parmlev = 'full'; + $trimheader='yes'; } else { $ENV{'form.url'}=''; } @@ -903,7 +913,7 @@ sub assessparms { my $have_assesments=1; if (scalar(keys(%allkeys)) eq 0) { $have_assesments=0; } - &startpage($r,$id,$udom,$csec,$uname,$have_assesments); + &startpage($r,$id,$udom,$csec,$uname,$have_assesments,$trimheader); if (!$have_assesments) { untie(%bighash); @@ -1510,8 +1520,8 @@ sub crsenv { 'courseid' => 'Course ID or number
'. '(internal, optional)', 'grading' => 'Grading'. - '"standard" or any other value. '. - 'Default for new courses is "standard".', + '"standard", "external", or any other value.'. + ' Default for new courses is "standard".', 'default_xml_style' => 'Default XML Style File '. ''. + &mt('Error deleting parameters').'
'); + } + } + if ($putentries) { + if (&Apache::lonnet::put('resourcedata',\%newdata,$dom,$crs) eq 'ok') { + $r->print('

'.&mt('Stored [_1] parameter(s)

',$putentries)); + } else { + $r->print('

'. + &mt('Error storing parameters').'

'); + } + } # Read and display my %resourcedata=&Apache::lonnet::dump('resourcedata',$dom,$crs); my $oldsection=''; @@ -1756,6 +1785,7 @@ ENDOVER my $oldpart=''; my $pointer=0; $tableopen=0; + my $foundkeys=0; foreach my $thiskey (sort keys %resourcedata) { if ($resourcedata{$thiskey.'.type'}) { my ($course,$middle,$part,$name)= @@ -1793,6 +1823,7 @@ ENDOVER $r->print(&tablestart().''.$name. ':'); + $foundkeys++; if ($resourcedata{$thiskey.'.type'}=~/^date/) { my $jskey='key_'.$pointer; $pointer++; @@ -1811,8 +1842,8 @@ ENDOVER } } - $r->print(&tableend(). - '

'); + $r->print(&tableend().'

'. + ($foundkeys?'':&mt('There are no course or section parameters.')).'

'); } ##################################################