--- loncom/interface/lonparmset.pm 2000/11/28 15:39:52 1.18
+++ loncom/interface/lonparmset.pm 2001/03/24 15:36:47 1.27
@@ -9,7 +9,9 @@
#
# 10/11,10/12,10/16 Gerd Kortemeyer)
#
-# 11/20,11/21,11/22,11/23,11/24,11/25,11/27,11/28 Gerd Kortemeyer
+# 11/20,11/21,11/22,11/23,11/24,11/25,11/27,11/28,
+# 12/08,12/12,
+# 16/01/01,02/08,03/20,03/23 Gerd Kortemeyer
package Apache::lonparmset;
@@ -34,6 +36,7 @@ my %keyp;
my %defp;
my %allkeys;
+my %allmaps;
my $uname;
my $udom;
@@ -136,9 +139,18 @@ sub valout {
sub plink {
my ($type,$dis,$value,$marker,$return,$call)=@_;
- return ''.
- &valout($value,$type).'';
+ &valout($value,$type).'';
}
# ================================================================ Main Handler
@@ -172,6 +184,9 @@ sub handler {
$udom=$ENV{'form.udom'};
unless ($udom) { $udom=$r->dir_config('lonDefDomain'); }
+ my $pscat=$ENV{'form.pscat'};
+ my $pschp=$ENV{'form.pschp'};
+
my $id=$ENV{'form.id'};
if (($id) && ($udom)) {
$uname=(&Apache::lonnet::idget($udom,$id))[1];
@@ -224,8 +239,9 @@ sub handler {
$ENV{'request.course.fn'}.'_parms.db',&GDBM_READER,0640))) {
# --------------------------------------------------------- Get all assessments
- %allkeys=();
- %defp=();
+ undef %allkeys;
+ undef %allmaps;
+ undef %defp;
map {
if ($_=~/^src\_(\d+)\.(\d+)$/) {
my $mapid=$1;
@@ -250,7 +266,7 @@ sub handler {
$allkeys{$allkey}=$display;
if ($allkey eq $fcat) {
$defp{$id}=
- &Apache::lonnet::metadata($srcf,$key.'.default');
+ &Apache::lonnet::metadata($srcf,$key);
}
if ($keyp{$id}) {
$keyp{$id}.=','.$key;
@@ -262,6 +278,7 @@ sub handler {
&Apache::lonnet::metadata($srcf,'keys'));
$mapp{$id}=
&Apache::lonnet::declutter($bighash{'map_id_'.$mapid});
+ $allmaps{$mapid}=$mapp{$id};
$symbp{$id}=$mapp{$id}.
'___'.$resid.'___'.
&Apache::lonnet::declutter($srcf);
@@ -310,6 +327,18 @@ sub handler {
my $reply='';
if ($snum>3) {
# ---------------------------------------------------------------- Store Course
+#
+# Expire sheets
+ &Apache::lonnet::expirespread('','','studentcalc');
+ if (($snum==7) || ($snum==4)) {
+ &Apache::lonnet::expirespread('','','assesscalc',$symbp{$sresid});
+ } elsif (($snum==8) || ($snum==5)) {
+ &Apache::lonnet::expirespread('','','assesscalc',$mapp{$sresid});
+ } else {
+ &Apache::lonnet::expirespread('','','assesscalc');
+ }
+
+# Store parameter
$reply=&Apache::lonnet::critical('put:'.
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.':'.
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.':resourcedata:'.
@@ -317,6 +346,20 @@ sub handler {
$ENV{'course.'.$ENV{'request.course.id'}.'.home'});
} else {
# ------------------------------------------------------------------ Store User
+#
+# Expire sheets
+ &Apache::lonnet::expirespread($uname,$udom,'studentcalc');
+ if ($snum==1) {
+ &Apache::lonnet::expirespread
+ ($uname,$udom,'assesscalc',$symbp{$sresid});
+ } elsif ($snum==2) {
+ &Apache::lonnet::expirespread
+ ($uname,$udom,'assesscalc',$mapp{$sresid});
+ } else {
+ &Apache::lonnet::expirespread($uname,$udom,'assesscalc');
+ }
+
+# Store parameter
$reply=
&Apache::lonnet::critical('put:'.$udom.':'.$uname.':resourcedata:'.
$storecontent,$uhome);
@@ -390,6 +433,19 @@ sub handler {
function psub() {
pclose();
if (document.parmform.pres_marker.value!='') {
+ document.parmform.action+='#'+document.parmform.pres_marker.value;
+ var typedef=new Array();
+ typedef=document.parmform.pres_type.value.split('_');
+ if (document.parmform.pres_type.value!='') {
+ if (typedef[0]=='date') {
+ eval('document.parmform.recent_'+
+ document.parmform.pres_type.value+
+ '.value=document.parmform.pres_value.value;');
+ } else {
+ eval('document.parmform.recent_'+typedef[0]+
+ '.value=document.parmform.pres_value.value;');
+ }
+ }
document.parmform.submit();
} else {
document.parmform.pres_value.value='';
@@ -414,22 +470,46 @@ or ID
at Domain
-
ENDHEAD
+ map {
+ $r->print('');
+ } ('tolerance','date_default','date_start','date_end','date_interval',
+ 'int','float','string');
- $r->print('
'.$message.'
Sort list by ');
- $r->print('