--- loncom/interface/lonparmset.pm 2005/11/04 20:08:09 1.263
+++ loncom/interface/lonparmset.pm 2006/06/19 09:38:16 1.268.2.5
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.263 2005/11/04 20:08:09 banghart Exp $
+# $Id: lonparmset.pm,v 1.268.2.5 2006/06/19 09:38:16 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -126,6 +126,7 @@ sub parmval_by_symb {
my @outpar=();
# ----------------------------------------------------- Cascading lookup scheme
my $map=(&Apache::lonnet::decode_symb($symb))[0];
+ $map = &Apache::lonnet::deversion($map);
my $symbparm=$symb.'.'.$what;
my $mapparm=$map.'___(all).'.$what;
@@ -316,6 +317,8 @@ sub storeparm_by_symb {
# store parameter
&storeparm_by_symb_inner
($symb,$spnam,$snum,$nval,$ntype,$uname,$udom,$csec);
+# don't do anything if parameter was reset
+ unless ($nval) { return; }
my ($prefix,$parm)=($spnam=~/^(.*[\_\.])([^\_\.]+)$/);
# remember that this was set
$recstack{$parm}=1;
@@ -361,6 +364,8 @@ sub storeparm_by_symb_inner {
# ---------------------------------------------------------- Construct prefixes
$spnam=~s/\_([^\_]+)$/\.$1/;
my $map=(&Apache::lonnet::decode_symb($symb))[0];
+ $map = &Apache::lonnet::deversion($map);
+
my $symbparm=$symb.'.'.$spnam;
my $mapparm=$map.'___(all).'.$spnam;
@@ -527,10 +532,10 @@ sub plink {
my ($parmname)=((split(/\&/,$marker))[1]=~/\_([^\_]+)$/);
my ($hour,$min,$sec,$val)=&preset_defaults($parmname);
unless (defined($winvalue)) { $winvalue=$val; }
- return
+ return '
';
}
sub startpage {
@@ -1456,14 +1461,15 @@ ENDTABLEHEADFOUR
my $totalparms=scalar keys %name;
if ($totalparms>0) {
my $firstrow=1;
- my $title=&Apache::lonnet::gettitle($uri);
+ my $title=&Apache::lonnet::gettitle($symbp{$rid});
$r->print(''.
join(' / ',split(/\//,$uri)).
' '.
"$title");
@@ -1571,10 +1577,7 @@ Set Defaults for All Resources in $folde
Specifically for
ENDMAPONE
if ($uname) {
- my %name=&Apache::lonnet::userenvironment($udom,$uname,
- ('firstname','middlename','lastname','generation', 'id'));
- my $person=$name{'firstname'}.' '.$name{'middlename'}.' '
- .$name{'lastname'}.' '.$name{'generation'};
+ my $person=&Apache::loncommon::plainname($uname,$udom);
$r->print(&mt("User")." $uname \($person\) ".
&mt('in')." \n");
} else {
@@ -1652,10 +1655,7 @@ ENDMAPONE
$coursename
ENDMAPONE
if ($uname) {
- my %name=&Apache::lonnet::userenvironment($udom,$uname,
- ('firstname','middlename','lastname','generation', 'id'));
- my $person=$name{'firstname'}.' '.$name{'middlename'}.' '
- .$name{'lastname'}.' '.$name{'generation'};
+ my $person=&Apache::loncommon::plainname($uname,$udom);
$r->print(" ".&mt("User")." $uname \($person\) \n");
} else {
$r->print(" ".&mt("ALL")." ".&mt("USERS")." \n");
@@ -1897,8 +1897,8 @@ sub crsenv {
=> ''.&mt('Receipt algorithm used').' '.
&mt('This controls how receipt numbers are generated.'),
'suppress_tries'
- => ''.&mt('Suppress number of tries in printing').' ('.
- &mt('yes if supress').')',
+ => ''.&mt('Suppress number of tries in printing').' '.
+ ' ('.&mt('"[_1]" to suppress, anything else to not suppress','yes ').')',
'problem_stream_switch'
=> ''.&mt('Allow problems to be split over pages').' '.
' ('.&mt('"[_1]" if allowed, anything else if not','yes ').')',
@@ -1918,6 +1918,8 @@ sub crsenv {
'disable_receipt_display'
=> ''.&mt('Disable display of problem receipts').' '.
' ('.&mt('"[_1]" to disable, anything else if not','yes ').')',
+ 'task_messages'
+ => ''.&mt('Send message to student when clicking Done on Tasks. [_1] to send a message only to student, [_2] to send message to student and add record to user information page for instructors. Leave blank to disable.','only_student ','student_and_user_notes_screen ').' ',
'disablesigfigs'
=> ''.&mt('Disable checking of Significant Figures').' '.
' ('.&mt('"[_1]" to disable, anything else if not','yes ').')',
@@ -1951,7 +1953,8 @@ sub crsenv {
'default_enrollment_end_date',
'tthoptions',
'disablesigfigs',
- 'disableexampointprint'
+ 'disableexampointprint',
+ 'task_messages'
);
foreach my $parameter (sort(keys(%values))) {
unless (($parameter =~ m/^internal\./)||($parameter =~ m/^metadata\./)) {
@@ -2696,6 +2699,8 @@ ENDMAINFORMHEAD
#
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};
+ my $vgr = &Apache::lonnet::allowed('vgr',$env{'request.course.id'});
+
my @menu =
(
{ text => 'Set Course Environment Parameters',
@@ -2706,6 +2711,12 @@ ENDMAINFORMHEAD
action => 'setrestrictmeta',
permission => $parm_permission,
},
+ { text => 'Manage Course Slots',
+ url => '/adm/slotrequest?command=showslots',
+ permission => $vgr,
+ },
+ { divider => 1,
+ },
{ text => 'Set/Modify Resource Parameters - Helper Mode',
url => '/adm/helper/parameter.helper',
permission => $parm_permission,
@@ -2730,6 +2741,10 @@ ENDMAINFORMHEAD
);
my $menu_html = '';
foreach my $menu_item (@menu) {
+ if ($menu_item->{'divider'}) {
+ $menu_html .= ' ';
+ next;
+ }
next if (! $menu_item->{'permission'});
$menu_html.='';
$menu_html.='';
@@ -2755,34 +2770,22 @@ sub output_row {
my $output;
my $options=$env{'course.'.$env{'request.course.id'}.'.metadata.'.$field_name.'.options'};
my $values=$env{'course.'.$env{'request.course.id'}.'.metadata.'.$field_name.'.values'};
- my $checked;
unless (defined($options)) {
$options = 'active,stuadd';
$values = '';
}
$output.=''.$field_text.': ';
- $output.=' ';
- if ($options =~ m/active/) {
- $checked = ' checked="checked" ';
- } else {
- $checked = ' ';
- }
- $output.=' ';
- $output.='Show to student ';
- if ($options =~ m/onlyone/) {
- $checked = ' checked="checked" ';
- } else {
- $checked = ' ';
- }
- $output.=' ';
- $output.='Student may select only one choice ';
- if ($options =~ m/stuadd/) {
- $checked = ' checked="checked" ';
- } else {
- $checked = ' ';
+ $output.=' ';
+
+ my @options= ( ['active', 'Show to student'],
+ ['onlyone','Student may select only one choice'],
+ ['stuadd', 'Student may type choices']);
+ foreach my $opt (@options) {
+ my $checked = ($options =~ m/$opt->[0]/) ? ' checked="checked" ' : '' ;
+ $output.=(' 'x5).' '.
+ &mt($opt->[1]).' ';
}
- $output.=' ';
- $output.='Student may type choices ';
return ($output);
}
@@ -2832,7 +2835,10 @@ sub setrestrictmeta {
&Apache::lonnet::coursedescription($env{'request.course.id'});
my %metadata_fields = &Apache::lonmeta::fieldnames('portfolio');
foreach my $field (sort(keys(%metadata_fields))) {
- $output.= &output_row($r, $field, $metadata_fields{$field});
+ &Apache::lonnet::logthis ($field);
+ if ($field ne 'courserestricted') {
+ $output.= &output_row($r, $field, $metadata_fields{$field});
+ }
}
$r->print(<