--- loncom/interface/lonparmset.pm 2005/06/28 15:21:22 1.233
+++ loncom/interface/lonparmset.pm 2006/06/19 09:38:16 1.268.2.5
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.233 2005/06/28 15:21:22 albertel Exp $
+# $Id: lonparmset.pm,v 1.268.2.5 2006/06/19 09:38:16 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -126,6 +126,7 @@ sub parmval_by_symb {
my @outpar=();
# ----------------------------------------------------- Cascading lookup scheme
my $map=(&Apache::lonnet::decode_symb($symb))[0];
+ $map = &Apache::lonnet::deversion($map);
my $symbparm=$symb.'.'.$what;
my $mapparm=$map.'___(all).'.$what;
@@ -316,6 +317,8 @@ sub storeparm_by_symb {
# store parameter
&storeparm_by_symb_inner
($symb,$spnam,$snum,$nval,$ntype,$uname,$udom,$csec);
+# don't do anything if parameter was reset
+ unless ($nval) { return; }
my ($prefix,$parm)=($spnam=~/^(.*[\_\.])([^\_\.]+)$/);
# remember that this was set
$recstack{$parm}=1;
@@ -361,6 +364,8 @@ sub storeparm_by_symb_inner {
# ---------------------------------------------------------- Construct prefixes
$spnam=~s/\_([^\_]+)$/\.$1/;
my $map=(&Apache::lonnet::decode_symb($symb))[0];
+ $map = &Apache::lonnet::deversion($map);
+
my $symbparm=$symb.'.'.$spnam;
my $mapparm=$map.'___(all).'.$spnam;
@@ -527,10 +532,10 @@ sub plink {
my ($parmname)=((split(/\&/,$marker))[1]=~/\_([^\_]+)$/);
my ($hour,$min,$sec,$val)=&preset_defaults($parmname);
unless (defined($winvalue)) { $winvalue=$val; }
- return
+ return '
';
}
sub startpage {
@@ -904,12 +909,12 @@ ENDSCRIPT
$r->print("\n");
my $cnt=0;
foreach $tempkey (&keysindisplayorder($allparms,$keyorder)) {
- $r->print("\nprint("\n | | ');
+ $r->print('>'.$$allparms{$tempkey}.'');
$cnt++;
if ($cnt==3) {
$r->print("
\n");
@@ -941,7 +946,9 @@ sub partmenu {
$r->print('>'.&mt('All Parts').'');
my %temphash=();
foreach (@{$psprt}) { $temphash{$_}=1; }
- foreach my $tempkey (sort keys %{$allparts}) {
+ foreach my $tempkey (sort {
+ if ($a==$b) { return ($a cmp $b) } else { return ($a <=> $b); }
+ } keys(%{$allparts})) {
unless ($tempkey =~ /\./) {
$r->print('