version 1.1, 2001/03/03 16:51:38
|
version 1.6, 2001/07/03 22:37:37
|
Line 13
|
Line 13
|
# |
# |
# 3/1 Gerd Kortemeyer) |
# 3/1 Gerd Kortemeyer) |
# |
# |
# 03/03/01 Gerd Kortemeyer |
# 03/03/01,06/15,06/25,06/26,06/30,07/02,07/03 Gerd Kortemeyer |
# |
# |
package Apache::lonratparms; |
package Apache::lonratparms; |
|
|
Line 26 sub handler {
|
Line 26 sub handler {
|
$r->send_http_header; |
$r->send_http_header; |
return OK if $r->header_only; |
return OK if $r->header_only; |
|
|
# --------------------------------------------------- Print login screen header |
# Get query string for limited number of parameters |
$r->print(<<ENDDOCUMENT); |
|
|
map { |
|
my ($name, $value) = split(/=/,$_); |
|
$value =~ tr/+/ /; |
|
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; |
|
if (($name eq 'url') || ($name eq 'parms') || |
|
($name eq 'resid')) { |
|
unless ($ENV{'form.'.$name}) { |
|
$ENV{'form.'.$name}=$value; |
|
} |
|
} |
|
} (split(/&/,$ENV{'QUERY_STRING'})); |
|
|
|
|
|
# ------------------------------------------------------------------- Read file |
|
|
|
my $uri=$ENV{'form.url'}.'.meta'; |
|
|
|
my %content; |
|
my %type; |
|
my %display; |
|
my %value; |
|
|
|
map { |
|
if ($_=~/^parameter\_/) { |
|
$content{$_}=&Apache::lonnet::metadata($uri,$_); |
|
$type{$_}=&Apache::lonnet::metadata($uri,$_.'.type'); |
|
$display{$_}=&Apache::lonnet::metadata($uri,$_.'.display'); |
|
} |
|
} split(/\,/,&Apache::lonnet::metadata($uri,'keys')); |
|
|
|
# ---------------------------------------------------------- Current Parameters |
|
|
|
map { |
|
my ($ptype,$pname,$pvalue)=split(/\_\_\_/,$_); |
|
unless ($type{$pname}) { $type{$pname}=$ptype; } |
|
$value{$pname}=$pvalue; |
|
} split(/\:/,$ENV{'form.parms'}); |
|
|
|
# --------------------------------------------------- Print input screen header |
|
$r->print(<<ENDHEADER); |
<html> |
<html> |
<head> |
<head> |
<title>The LearningOnline Network with CAPA</title> |
<title>The LearningOnline Network with CAPA</title> |
|
<script language="JavaScript"> |
|
function setparms() { |
|
ENDHEADER |
|
$r->print('var colon=""; opener.objparms['.$ENV{'form.resid'}.']="";'); |
|
map { |
|
$r->print("\nif (document.parameters.def_".$_. |
|
'.checked) { opener.objparms['.$ENV{'form.resid'}. |
|
']+=colon+"'.$type{$_}. |
|
'___'.$_.'___"+document.parameters.'.$_.'.value; colon=":"; }'); |
|
} keys %content; |
|
$r->print(<<ENDDOCUMENT); |
|
opener.save(); |
|
window.close(); |
|
} |
|
</script> |
</head> |
</head> |
<body bgcolor="#FFFFFF"> |
<body bgcolor="#FFFFFF"> |
<h1>Search Catalog</h1> |
<h1>Set Resource Parameters in Map</h1> |
<img src="/adm/lonKaputt/lonconstruct.gif"> |
<form action="javascript:setparms();" method="post" name="parameters"> |
</body> |
<table border=2> |
</html> |
<tr><th>Parameter</th><th>Default</th><th>Value</th><th>Set?</th></tr> |
ENDDOCUMENT |
ENDDOCUMENT |
|
map { |
|
my $cur=$content{$_}; |
|
if (defined($value{$_})) { $cur=$value{$_}; }; |
|
$r->print('<tr><td><b>'.$display{$_}.'</b><br><tt>'.$_. |
|
'</tt></td><td> '.$content{$_}. |
|
'</td><td><input type="text" name="'.$_.'" value="'.$cur. |
|
'"></td><td><input type="checkbox" name="def_'.$_. |
|
'""'); |
|
if ($value{$_}) { $r->print(' checked'); } |
|
$r->print('></td></tr>'); |
|
} keys %content; |
|
$r->print( |
|
'</table><br><input type="submit" value="Set"></form></body></html>'); |
return OK; |
return OK; |
} |
} |
|
|