--- loncom/interface/lonparmset.pm 2005/06/03 15:47:29 1.204
+++ loncom/interface/lonparmset.pm 2005/06/04 17:35:19 1.208
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.204 2005/06/03 15:47:29 www Exp $
+# $Id: lonparmset.pm,v 1.208 2005/06/04 17:35:19 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -635,11 +635,6 @@ sub print_row {
if ($parmlev eq 'full') {
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('
'.
@@ -771,6 +766,87 @@ sub extractResourceInformation {
}
}
+
+##################################################
+##################################################
+
+sub parmmenu {
+ my ($r,$allparms,$pscat)=@_;
+ my $tempkey;
+ $r->print(<
+ function checkall(value, checkName) {
+ for (i=0; i
+ENDSCRIPT
+ $r->print(&mt('Select Parameters to View'));
+ $r->print("\n');
+}
+
+sub menu {
+ my ($r,$allparms,$allparts,$allkeys,$pscat,$psprt,$fcat)=@_;
+ my $tempkey;
+
+ &parmmenu($r,$allkeys,$pscat);
+
+ $r->print('');
+ $r->print('');
+ $r->print('print(' selected') unless (@{$psprt});
+ $r->print('>'.&mt('All Parts').' ');
+ my %temphash=();
+ foreach (@{$psprt}) { $temphash{$_}=1; }
+ foreach $tempkey (sort keys %{$allparts}) {
+ unless ($tempkey =~ /\./) {
+ $r->print('print(' selected');
+ }
+ $r->print('>'.$$allparts{$tempkey}.' ');
+ }
+ }
+ $r->print(' ');
+
+ $r->print(''.&mt('Sort list by').' ');
+ $r->print('');
+ $r->print(''.&mt('Enclosing Map or Folder').' ');
+ foreach (sort keys %{$allkeys}) {
+ $r->print('print(' selected'); }
+ $r->print('>'.$$allkeys{$_}.' ');
+ }
+ $r->print(' ');
+
+ $r->print('
');
+
+}
+
##################################################
##################################################
@@ -853,7 +929,6 @@ sub assessparms {
my $pschp=$env{'form.pschp'};
my @psprt=&Apache::loncommon::get_env_multiple('form.psprt');
if (!@psprt) { $psprt[0]='0'; }
- my $showoptions=$env{'form.showoptions'};
my $pssymb='';
my $parmlev='';
@@ -939,10 +1014,15 @@ sub assessparms {
# ---------------------------------------------------------- Anything to store?
if ($env{'form.pres_marker'}) {
- $message.=&storeparm(split(/\&/,$env{'form.pres_marker'}),
- $env{'form.pres_value'},
- $env{'form.pres_type'},
- $uname,$udom,$csec);
+ my @markers=split(/\&\&\&/,$env{'form.pres_marker'});
+ my @values=split(/\&\&\&/,$env{'form.pres_value'});
+ my @types=split(/\&\&\&/,$env{'form.pres_type'});
+ for (my $i=0;$i<=$#markers;$i++) {
+ $message.=&storeparm(split(/\&/,$markers[$i]),
+ $values[$i],
+ $types[$i],
+ $uname,$udom,$csec);
+ }
# ---------------------------------------------------------------- Done storing
$message.=''.&mt('Changes can take up to 10 minutes before being active for all students.').&Apache::loncommon::help_open_topic('Caching').' ';
}
@@ -1006,112 +1086,16 @@ sub assessparms {
} else {
my ($map,$id,$resource)=&Apache::lonnet::decode_symb($pssymb);
$r->print("".&mt('Specific Resource')." $resource ");
- $r->print(' ');
+ $r->print(' ');
$r->print(' ');
- $r->print(' ');
}
+ $r->print(' ');
- $r->print(' print(" checked ");}
- $r->print(' name="showoptions" value="show" />'.&mt('Show More Options').' ');
-# $r->print("Show: $showoptions ");
-# $r->print("pscat: @pscat ");
-# $r->print("psprt: @psprt ");
-# $r->print("fcat: $fcat ");
-
- if ($showoptions eq 'show') {
- my $tempkey;
-
- $r->print(''.&mt('Select Parameters to View').' ');
-
- $r->print('');
-
-# $r->print(' Select Parts ');
- $r->print(' ');
- $r->print('print(' selected') unless (@psprt);
- $r->print('>'.&mt('All Parts').' ');
- my %temphash=();
- foreach (@psprt) { $temphash{$_}=1; }
- foreach $tempkey (sort keys %allparts) {
- unless ($tempkey =~ /\./) {
- $r->print('print(' selected');
- }
- $r->print('>'.$allparts{$tempkey}.' ');
- }
- }
- $r->print(' ');
-
- $r->print(''.&mt('Sort list by').' ');
- $r->print('');
- $r->print(''.&mt('Enclosing Map or Folder').' ');
- foreach (sort keys %allkeys) {
- $r->print('print(' selected'); }
- $r->print('>'.$allkeys{$_}.' ');
- }
- $r->print(' ');
-
- $r->print(' ');
-
- } else { # hide options - include any necessary extras here
- $r->print(' '."\n");
+ &menu($r,\%allparms,\%allparts,\%allkeys,\@pscat,\@psprt,$fcat);
- unless (@pscat) {
- foreach (keys %allparms ) {
- $r->print(' '."\n");
- }
- } else {
- foreach (@pscat) {
- $r->print(' '."\n");
- }
- }
-
- unless (@psprt) {
- foreach (keys %allparts ) {
- $r->print(' '."\n");
- }
- } else {
- foreach (@psprt) {
- $r->print(' '."\n");
- }
- }
-
- }
- $r->print(' ');
if (($prevvisit) || ($pschp) || ($pssymb)) {
$submitmessage = &mt("Update Course Assessment Parameter Display");
} else {
@@ -1119,13 +1103,6 @@ sub assessparms {
}
$r->print(' ');
-# my @temp_psprt;
-# foreach my $t (@psprt) {
-# push(@temp_psprt, grep {eval (/^$t\./ || ($_ == $t))} (keys %allparts));
-# }
-
-# @psprt = @temp_psprt;
-
my @temp_pscat;
map {
my $cat = $_;
@@ -1805,7 +1782,8 @@ $output
ENDenv
}
##################################################
-
+# Overview mode
+##################################################
my $tableopen;
sub tablestart {
@@ -1827,26 +1805,38 @@ sub tableend {
}
}
-sub overview {
- my $r=shift;
- my $bodytag=&Apache::loncommon::bodytag(
- 'Set/Modify Course Assessment Parameters');
- my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};
- my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};
- my $breadcrumbs = &Apache::lonhtmlcommon::breadcrumbs(undef,'Overview');
- my $html=&Apache::lonxml::xmlbegin();
- $r->print(<
-LON-CAPA Course Environment
-
-$bodytag
-$breadcrumbs
- ');
$foundkeys++;
- if ($resourcedata{$thiskey.'.type'}=~/^date/) {
+ if ($$resourcedata{$thiskey.'.type'}=~/^date/) {
my $jskey='key_'.$pointer;
$pointer++;
$r->print(
&Apache::lonhtmlcommon::date_setter('overviewform',
$jskey,
- $resourcedata{$thiskey}).
+ $$resourcedata{$thiskey}).
' '
);
} else {
$r->print(
' ');
+ $$resourcedata{$thiskey}.'">');
}
$r->print(' ');
}
}
-
+ return $foundkeys;
+}
+
+sub newoverview {
+ my $r=shift;
+ my $bodytag=&Apache::loncommon::bodytag(
+ 'Set Course Assessment Parameters');
+ my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};
+ my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};
+ my $breadcrumbs = &Apache::lonhtmlcommon::breadcrumbs(undef,'Overview');
+ my $html=&Apache::lonxml::xmlbegin();
+ $r->print(<
+LON-CAPA Parameters
+
+$bodytag
+$breadcrumbs
+