[LON-CAPA-cvs] cvs: loncom /interface lonparmset.pm
matthew
lon-capa-cvs@mail.lon-capa.org
Wed, 13 Mar 2002 21:24:24 -0000
This is a MIME encoded message
--matthew1016054664
Content-Type: text/plain
matthew Wed Mar 13 16:24:24 2002 EDT
Modified files:
/loncom/interface lonparmset.pm
Log:
Replaced lonnet::reply and lonnet::critical with more appropriate wrapper
functions: lonnet::put, lonnet::dump, lonnet::get, lonnet::cput. Minor
formatting changes.
--matthew1016054664
Content-Type: text/plain
Content-Disposition: attachment; filename="matthew-20020313162424.txt"
Index: loncom/interface/lonparmset.pm
diff -u loncom/interface/lonparmset.pm:1.44 loncom/interface/lonparmset.pm:1.45
--- loncom/interface/lonparmset.pm:1.44 Tue Feb 12 01:28:23 2002
+++ loncom/interface/lonparmset.pm Wed Mar 13 16:24:24 2002
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.44 2002/02/12 06:28:23 albertel Exp $
+# $Id: lonparmset.pm,v 1.45 2002/03/13 21:24:24 matthew Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -366,7 +366,8 @@
$ENV{'request.course.id'});
if ($csec eq '-1') {
$message="<font color=red>".
- "User '$uname' at domain '$udom' not in this course</font>";
+ "User '$uname' at domain '$udom' not ".
+ "in this course</font>";
$uname='';
$csec=$ENV{'form.csec'};
} else {
@@ -464,14 +465,9 @@
if ($snum==6) { $storeunder=$seclevel; }
if ($snum==5) { $storeunder=$seclevelm; }
if ($snum==4) { $storeunder=$seclevelr; }
- $storeunder=&Apache::lonnet::escape($storeunder);
- my $storecontent=
- $storeunder.'='.
- &Apache::lonnet::escape($ENV{'form.pres_value'}).'&'.
- $storeunder.'.type='.
- &Apache::lonnet::escape($ENV{'form.pres_type'});
-
+ my %storecontent = ($storeunder => $ENV{'form.pres_value'},
+ $storeunder.'type' => $ENV{'form.pres_type'});
my $reply='';
if ($snum>3) {
# ---------------------------------------------------------------- Store Course
@@ -485,13 +481,11 @@
} 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:'.
- $storecontent,
- $ENV{'course.'.$ENV{'request.course.id'}.'.home'});
+ $reply=&Apache::lonnet::cput
+ ('resourcedata',\%storecontent,
+ $ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
+ $ENV{'course.'.$ENV{'request.course.id'}.'.num'});
} else {
# ------------------------------------------------------------------ Store User
#
@@ -506,11 +500,9 @@
} else {
&Apache::lonnet::expirespread($uname,$udom,'assesscalc');
}
-
# Store parameter
- $reply=
- &Apache::lonnet::critical('put:'.$udom.':'.$uname.':resourcedata:'.
- $storecontent,$uhome);
+ $reply=&Apache::lonnet::cput
+ ('resourcedata',\%storecontent,$udom,$uname);
}
if ($reply=~/^error\:(.*)/) {
@@ -519,28 +511,13 @@
# ---------------------------------------------------------------- Done storing
}
# -------------------------------------------------------------- Get coursedata
- my $reply=&Apache::lonnet::reply('dump:'.
- $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.':'.
- $ENV{'course.'.$ENV{'request.course.id'}.'.num'}.':resourcedata',
- $ENV{'course.'.$ENV{'request.course.id'}.'.home'});
- if ($reply!~/^error\:/) {
- foreach (split(/\&/,$reply)) {
- my ($name,$value)=split(/\=/,$_);
- $courseopt{&Apache::lonnet::unescape($name)}=
- &Apache::lonnet::unescape($value);
- }
- }
+ %courseopt = &Apache::lonnet::dump
+ ('resourcedata',
+ $ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
+ $ENV{'course.'.$ENV{'request.course.id'}.'.num'});
# --------------------------------------------------- Get userdata (if present)
if ($uname) {
- my $reply=
- &Apache::lonnet::reply('dump:'.$udom.':'.$uname.':resourcedata',$uhome);
- if ($reply!~/^error\:/) {
- foreach (split(/\&/,$reply)) {
- my ($name,$value)=split(/\=/,$_);
- $useropt{&Apache::lonnet::unescape($name)}=
- &Apache::lonnet::unescape($value);
- }
- }
+ %useropt=&Apache::lonnet::dump('resourcedata',$udom,$uname);
}
# ------------------------------------------------------------------- Sort this
@@ -713,9 +690,12 @@
untie(%parmhash);
}
+# Set course environment parameters
sub crsenv {
my $r=shift;
my $setoutput='';
+ 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) {
if ($_=~/^form\.(.+)\_setparmval$/) {
@@ -726,75 +706,66 @@
}
if ($name eq 'url') {
$value=~s/^\/res\///;
+ my @tmp = &Apache::lonnet::get
+ ('environment',['url'],$dom,$crs);
$setoutput.='Backing up previous URL: '.
- &Apache::lonnet::reply('put:'.
- $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.
- ':'.$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.
- ':environment:'.
- &Apache::lonnet::escape('top level map backup '.
- time).'='.
- &Apache::lonnet::reply('get:'.
- $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.
- ':'.$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.
- ':environment:url',
- $ENV{'course.'.$ENV{'request.course.id'}.'.home'}),
- $ENV{'course.'.$ENV{'request.course.id'}.'.home'}).
- '<br>';
-
+ &Apache::lonnet::put
+ ('environment',
+ {'top level map backup ' => $tmp[1] },
+ $dom,$crs).
+ '<br>';
}
if ($name) {
- $setoutput.='Setting <tt>'.$name.'</tt> to <tt>'.
- $value.'</tt>: '.
- &Apache::lonnet::reply('put:'.
- $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.
- ':'.$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.
- ':environment:'.
- &Apache::lonnet::escape($name).'='.
- &Apache::lonnet::escape($value),
- $ENV{'course.'.$ENV{'request.course.id'}.'.home'}).
- '<br>';
+ $setoutput.='Setting <tt>'.$name.'</tt> to <tt>'.
+ $value.'</tt>: '.
+ &Apache::lonnet::put
+ ('environment',{$name=>$value},$dom,$crs).
+ '<br>';
}
}
}
# -------------------------------------------------------- Get parameters again
- my $rep=&Apache::lonnet::reply
- ('dump:'.$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.
- ':'.$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.
- ':environment',
- $ENV{'course.'.$ENV{'request.course.id'}.'.home'});
+
+ my %values=&Apache::lonnet::dump('environment',$dom,$crs);
my $output='';
- if ($rep ne 'con_lost') {
- my %values;
+ if (! exists($values{'con_lost'})) {
my %descriptions=
- ('url' => '<b>Top Level Map</b><br><font color=red> Modification may make assessment data inaccessible</font>',
- 'description' => '<b>Course Description</b>',
- 'courseid' => '<b>Course ID or number</b><br>(internal, optional)',
- 'question.email' => '<b>Feedback Addresses for Content Questions</b><br>(<tt>user:domain,user:domain,...</tt>)',
- 'comment.email' => '<b>Feedback Addresses for Comments</b><br>(<tt>user:domain,user:domain,...</tt>)',
- 'policy.email' => '<b>Feedback Addresses for Course Policy</b><br>(<tt>user:domain,user:domain,...</tt>)',
- 'hideemptyrows' => '<b>Hide Empty Rows in Spreadsheets</b><br>("<tt>yes</tt>" for default hiding)',
- 'pch.roles.denied'=> '<b>Disallow Resource Discussion for Students</b><br>"<tt>st</tt>": student, "<tt>ta</tt>": TA, "<tt>in</tt>": instructor;<br><tt>role,role,...</tt>)'
- );
-
- foreach (split(/\&/,$rep)) {
- my ($name,$value)=split(/\=/,$_);
- $name=&Apache::lonnet::unescape($name);
- $values{$name}=&Apache::lonnet::unescape($value);
- unless ($descriptions{$name}) {
- $descriptions{$name}=$name;
+ ('url' => '<b>Top Level Map</b><br><font color=red> '.
+ 'Modification may make assessment data '.
+ 'inaccessible</font>',
+ 'description' => '<b>Course Description</b>',
+ 'courseid' => '<b>Course ID or number</b><br>'.
+ '(internal, optional)',
+ 'question.email' => '<b>Feedback Addresses for Content '.
+ 'Questions</b><br>(<tt>user:domain,'.
+ 'user:domain,...</tt>)',
+ 'comment.email' => '<b>Feedback Addresses for Comments</b><br>'.
+ '(<tt>user:domain,user:domain,...</tt>)',
+ 'policy.email' => '<b>Feedback Addresses for Course Policy</b>'.
+ '<br>(<tt>user:domain,user:domain,...</tt>)',
+ 'hideemptyrows' => '<b>Hide Empty Rows in Spreadsheets</b><br>'.
+ '("<tt>yes</tt>" for default hiding)',
+ 'pch.roles.denied'=> '<b>Disallow Resource Discussion for '.
+ 'Students</b><br>"<tt>st</tt>": '.
+ 'student, "<tt>ta</tt>": '.
+ 'TA, "<tt>in</tt>": '.
+ 'instructor;<br><tt>role,role,...</tt>)'
+ );
+ foreach (keys(%values)) {
+ unless ($descriptions{$_}) {
+ $descriptions{$_}=$_;
}
}
foreach (sort keys %descriptions) {
$output.='<tr><td>'.$descriptions{$_}.'</td><td><input name="'.
$_.'_value" size=40 value="'.
- $values{$_}.
- '"></td><td><input type=checkbox name="'.$_.
- '_setparmval"></td></tr>';
+ $values{$_}.'"></td><td><input type=checkbox name="'.
+ $_.'_setparmval"></td></tr>';
}
$output.='<tr><td><i>Create New Environment Variable</i><br>'.
- '<input type="text" size=40 name="newp_name"></td><td>'.
- '<input type="text" size=40 name="newp_value"></td><td>'.
- '<input type="checkbox" name="newp_setparmval"></td></tr>';
+ '<input type="text" size=40 name="newp_name" ></td><td>'.
+ '<input type="text" size=40 name="newp_value" ></td><td>'.
+ '<input type="checkbox" name="newp_setparmval"></td></tr>';
}
$r->print(<<ENDENV);
<html>
--matthew1016054664--