--- rat/lonratparms.pm 2004/04/24 00:41:51 1.21 +++ rat/lonratparms.pm 2005/04/07 06:56:27 1.23 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Set parameters inside of the RAT # -# $Id: lonratparms.pm,v 1.21 2004/04/24 00:41:51 www Exp $ +# $Id: lonratparms.pm,v 1.23 2005/04/07 06:56:27 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -32,6 +32,7 @@ use strict; use Apache::Constants qw(:common); use Apache::lonhtmlcommon(); use Apache::lonlocal; +use Apache::lonnet; sub handler { my $r = shift; @@ -46,7 +47,7 @@ sub handler { # ------------------------------------------------------------------- Read file - my $uri=$ENV{'form.url'}.'.meta'; + my $uri=$env{'form.url'}.'.meta'; my %content; my %type; @@ -55,7 +56,15 @@ sub handler { # ---------------------------------------------------------- Current Parameters - foreach (split(/\:/,$ENV{'form.parms'})) { + foreach (split(/\,/,&Apache::lonnet::metadata($uri,'keys'))) { + if ($_=~/^parameter\_/) { + $content{$_}=&Apache::lonnet::metadata($uri,$_); + $type{$_}=&Apache::lonnet::metadata($uri,$_.'.type'); + $display{$_}=&Apache::lonnet::metadata($uri,$_.'.display'); + } + } + + foreach (split(/\:/,$env{'form.parms'})) { my ($ptype,$pname,$pvalue)=split(/\_\_\_/,$_); unless ($pname) { next; } unless ($type{$pname}) { $type{$pname}=$ptype; } @@ -64,14 +73,6 @@ sub handler { $type{$pname}=$ptype; $display{$pname}=&mt('Custom Parameter'); } - - foreach (split(/\,/,&Apache::lonnet::metadata($uri,'keys'))) { - if ($_=~/^parameter\_/) { - $content{$_}=&Apache::lonnet::metadata($uri,$_); - $type{$_}=&Apache::lonnet::metadata($uri,$_.'.type'); - $display{$_}=&Apache::lonnet::metadata($uri,$_.'.display'); - } - } # --------------------------------------------------- Print input screen header my $pjump_def = &Apache::lonhtmlcommon::pjump_javascript_definition(); @@ -104,10 +105,10 @@ sub handler { function setparms() { ENDHEADER - $r->print('var colon=""; opener.objparms['.$ENV{'form.resid'}.']="";'); + $r->print('var colon=""; opener.objparms['.$env{'form.resid'}.']="";'); map { $r->print("\nif (document.parameters.def_".$_. - '.checked) { opener.objparms['.$ENV{'form.resid'}. + '.checked) { opener.objparms['.$env{'form.resid'}. ']+=colon+"'.$type{$_}. '___'.$_.'___"+document.parameters.'.$_.'.value; colon=":"; }'); } keys %content;