--- loncom/interface/lonparmset.pm 2005/03/17 21:08:43 1.186
+++ loncom/interface/lonparmset.pm 2005/05/05 20:50:38 1.191
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.186 2005/03/17 21:08:43 www Exp $
+# $Id: lonparmset.pm,v 1.191 2005/05/05 20:50:38 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -75,12 +75,6 @@ my %keyp;
my %maptitles;
-my $uname;
-my $udom;
-my $uhome;
-my $csec;
-my $coursename;
-
##################################################
##################################################
@@ -113,7 +107,7 @@ Returns: A list, the first item is the
##################################################
##################################################
sub parmval {
- my ($what,$id,$def)=@_;
+ my ($what,$id,$def,$uname,$udom,$csec)=@_;
my $result='';
my @outpar=();
# ----------------------------------------------------- Cascading lookup scheme
@@ -121,13 +115,13 @@ sub parmval {
my $symbparm=$symbp{$id}.'.'.$what;
my $mapparm=$mapp{$id}.'___(all).'.$what;
- my $seclevel=$ENV{'request.course.id'}.'.['.$csec.'].'.$what;
- my $seclevelr=$ENV{'request.course.id'}.'.['.$csec.'].'.$symbparm;
- my $seclevelm=$ENV{'request.course.id'}.'.['.$csec.'].'.$mapparm;
-
- my $courselevel=$ENV{'request.course.id'}.'.'.$what;
- my $courselevelr=$ENV{'request.course.id'}.'.'.$symbparm;
- my $courselevelm=$ENV{'request.course.id'}.'.'.$mapparm;
+ my $seclevel=$env{'request.course.id'}.'.['.$csec.'].'.$what;
+ my $seclevelr=$env{'request.course.id'}.'.['.$csec.'].'.$symbparm;
+ my $seclevelm=$env{'request.course.id'}.'.['.$csec.'].'.$mapparm;
+
+ my $courselevel=$env{'request.course.id'}.'.'.$what;
+ my $courselevelr=$env{'request.course.id'}.'.'.$symbparm;
+ my $courselevelm=$env{'request.course.id'}.'.'.$mapparm;
@@ -207,21 +201,24 @@ sub parmval {
# - level
# - new value
# - new type
+# - username
+# - userdomain
+
sub storeparm {
- my ($sresid,$spnam,$snum,$nval,$ntype)=@_;
+ my ($sresid,$spnam,$snum,$nval,$ntype,$uname,$udom,$csec)=@_;
$spnam=~s/\_([^\_]+)$/\.$1/;
# ---------------------------------------------------------- Construct prefixes
my $symbparm=$symbp{$sresid}.'.'.$spnam;
my $mapparm=$mapp{$sresid}.'___(all).'.$spnam;
- my $seclevel=$ENV{'request.course.id'}.'.['.$csec.'].'.$spnam;
- my $seclevelr=$ENV{'request.course.id'}.'.['.$csec.'].'.$symbparm;
- my $seclevelm=$ENV{'request.course.id'}.'.['.$csec.'].'.$mapparm;
+ my $seclevel=$env{'request.course.id'}.'.['.$csec.'].'.$spnam;
+ my $seclevelr=$env{'request.course.id'}.'.['.$csec.'].'.$symbparm;
+ my $seclevelm=$env{'request.course.id'}.'.['.$csec.'].'.$mapparm;
- my $courselevel=$ENV{'request.course.id'}.'.'.$spnam;
- my $courselevelr=$ENV{'request.course.id'}.'.'.$symbparm;
- my $courselevelm=$ENV{'request.course.id'}.'.'.$mapparm;
+ my $courselevel=$env{'request.course.id'}.'.'.$spnam;
+ my $courselevelr=$env{'request.course.id'}.'.'.$symbparm;
+ my $courselevelm=$env{'request.course.id'}.'.'.$mapparm;
my $storeunder='';
if (($snum==11) || ($snum==3)) { $storeunder=$courselevel; }
@@ -252,13 +249,13 @@ sub storeparm {
if ($delete) {
$reply=&Apache::lonnet::del
('resourcedata',[keys(%storecontent)],
- $ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
- $ENV{'course.'.$ENV{'request.course.id'}.'.num'});
+ $env{'course.'.$env{'request.course.id'}.'.domain'},
+ $env{'course.'.$env{'request.course.id'}.'.num'});
} else {
$reply=&Apache::lonnet::cput
('resourcedata',\%storecontent,
- $ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
- $ENV{'course.'.$ENV{'request.course.id'}.'.num'});
+ $env{'course.'.$env{'request.course.id'}.'.domain'},
+ $env{'course.'.$env{'request.course.id'}.'.num'});
}
} else {
# ------------------------------------------------------------------ Store User
@@ -282,6 +279,7 @@ sub storeparm {
$reply=&Apache::lonnet::cput
('resourcedata',\%storecontent,$udom,$uname);
}
+ &Apache::lonnet::devalidateuserresdata($uname,$udom);
}
if ($reply=~/^error\:(.*)/) {
@@ -370,9 +368,9 @@ sub plink {
my $winvalue=$value;
unless ($winvalue) {
if ($type=~/^date/) {
- $winvalue=$ENV{'form.recent_'.$type};
+ $winvalue=$env{'form.recent_'.$type};
} else {
- $winvalue=$ENV{'form.recent_'.(split(/\_/,$type))[0]};
+ $winvalue=$env{'form.recent_'.(split(/\_/,$type))[0]};
}
}
return
@@ -477,8 +475,21 @@ $assessparmhelp
\n");
}
$r->print("");
@@ -1496,17 +1510,17 @@ sub crsenv {
my $setoutput='';
my $bodytag=&Apache::loncommon::bodytag(
'Set Course Environment Parameters');
- my $dom = $ENV{'course.'.$ENV{'request.course.id'}.'.domain'};
- my $crs = $ENV{'course.'.$ENV{'request.course.id'}.'.num'};
+ my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};
+ my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};
#
# Go through list of changes
- foreach (keys %ENV) {
+ foreach (keys %env) {
next if ($_!~/^form\.(.+)\_setparmval$/);
my $name = $1;
- my $value = $ENV{'form.'.$name.'_value'};
+ my $value = $env{'form.'.$name.'_value'};
if ($name eq 'newp') {
- $name = $ENV{'form.newp_name'};
+ $name = $env{'form.newp_name'};
}
if ($name eq 'url') {
$value=~s/^\/res\///;
@@ -1582,7 +1596,7 @@ sub crsenv {
}
# ------------------------- Re-init course environment entries for this session
- &Apache::lonnet::coursedescription($ENV{'request.course.id'});
+ &Apache::lonnet::coursedescription($env{'request.course.id'});
# -------------------------------------------------------- Get parameters again
@@ -1778,7 +1792,7 @@ sub crsenv {
my $Set=&mt('Set');
my $browse_js=&Apache::loncommon::browser_and_searcher_javascript('parmset');
my $html=&Apache::lonxml::xmlbegin();
- $r->print(<print(<