--- loncom/interface/lonparmset.pm 2006/06/12 18:43:56 1.312 +++ loncom/interface/lonparmset.pm 2007/06/20 21:08:15 1.366.2.1 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set parameters for assessments # -# $Id: lonparmset.pm,v 1.312 2006/06/12 18:43:56 albertel Exp $ +# $Id: lonparmset.pm,v 1.366.2.1 2007/06/20 21:08:15 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -65,8 +65,7 @@ use Apache::lonlocal; use Apache::lonnavmaps; use Apache::longroup; use Apache::lonrss; -use lib '/home/httpd/lib/perl/'; -use LONCAPA; +use LONCAPA qw(:DEFAULT :match); # --- Caches local to lonparmset @@ -123,7 +122,10 @@ sub parmval_by_symb { # load caches &cacheparmhash(); - my $useropt=&Apache::lonnet::get_userresdata($uname,$udom); + my $useropt; + if ($uname ne '' && $udom ne '') { + $useropt = &Apache::lonnet::get_userresdata($uname,$udom); + } my $result=''; my @outpar=(); @@ -174,7 +176,7 @@ sub parmval_by_symb { } # ------------------------------------------------------ fourth, back to course - if (defined($csec)) { + if ($csec ne '') { if (defined($$courseopt{$seclevel})) { $outpar[9]=$$courseopt{$seclevel}; $result=9; @@ -190,7 +192,7 @@ sub parmval_by_symb { } } # ------------------------------------------------------ fifth, check course group - if (defined($cgroup)) { + if ($cgroup ne '') { if (defined($$courseopt{$grplevel})) { $outpar[6]=$$courseopt{$grplevel}; $result=6; @@ -207,7 +209,7 @@ sub parmval_by_symb { # ---------------------------------------------------------- fifth, check user - if (defined($uname)) { + if ($uname ne '') { if (defined($$useropt{$courselevel})) { $outpar[3]=$$useropt{$courselevel}; $result=3; @@ -270,10 +272,8 @@ sub resetrulescache { sub rulescache { my $id=shift; - if ($rulesid ne $env{'request.course.id'}) { - %rules=(); - } - unless (defined($rules{$id})) { + if ($rulesid ne $env{'request.course.id'} + && !defined($rules{$id})) { my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'}; my $crs = $env{'course.'.$env{'request.course.id'}.'.num'}; %rules=&Apache::lonnet::dump('parmdefactions',$dom,$crs); @@ -495,7 +495,7 @@ sub storeparm_by_symb_inner { } if ($reply=~/^error\:(.*)/) { - return "Write Error: $1"; + return "Write Error: $1"; } return ''; } @@ -509,21 +509,26 @@ sub storeparm_by_symb_inner { Format a value for output. -Inputs: $value, $type +Inputs: $value, $type, $editable Returns: $value, formatted for output. If $type indicates it is a date, localtime($value) is returned. +$editable will return an icon to click on =cut ################################################## ################################################## sub valout { - my ($value,$type)=@_; + my ($value,$type,$editable)=@_; my $result = ''; # Values of zero are valid. if (! $value && $value ne '0') { - $result = ' '; + if ($editable) { + $result = '*'; + } else { + $result=' '; + } } else { if ($type eq 'date_interval') { my ($sec,$min,$hour,$mday,$mon,$year)=gmtime($value); @@ -549,7 +554,8 @@ sub valout { } $result=~s/\s+$//; } elsif (&isdateparm($type)) { - $result = localtime($value).&date_sanity_info($value); + $result = &Apache::lonlocal::locallocaltime($value). + &date_sanity_info($value); } else { $result = $value; } @@ -591,7 +597,7 @@ sub plink { return '
'. ''. - &valout($value,$type).' |
'); $cnt++; if ($cnt==3) { $r->print(" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Select All Select Common Only |
@@ -1478,8 +1493,8 @@ sub assessparms {
$id='';
} else {
$message=
- "".&mt("Unknown ID")." '$id' ".
- &mt('at domain')." '$udom'";
+ ''.&mt("Unknown ID")." '$id' ".
+ &mt('at domain')." '$udom'";
}
} else {
$uname=$env{'form.uname'};
@@ -1490,17 +1505,17 @@ sub assessparms {
$uhome=&Apache::lonnet::homeserver($uname,$udom);
if ($uhome eq 'no_host') {
$message=
- "".&mt("Unknown user")." '$uname' ".
- &mt("at domain")." '$udom'";
+ ''.&mt("Unknown user")." '$uname' ".
+ &mt("at domain")." '$udom'";
$uname='';
} else {
$csec=&Apache::lonnet::getsection($udom,$uname,
$env{'request.course.id'});
if ($csec eq '-1') {
- $message="".
+ $message=''.
&mt("User")." '$uname' ".&mt("at domain")." '$udom' ".
- &mt("not in this course")."";
+ &mt("not in this course")."";
$uname='';
$csec=$env{'form.csec'};
$cgroup=$env{'form.cgroup'};
@@ -1510,7 +1525,7 @@ sub assessparms {
$message="\n \n".&mt("Full Name").": ".
$name{'firstname'}.' '.$name{'middlename'}.' '
.$name{'lastname'}.' '.$name{'generation'}.
- " ';
+ " ';
}
@usersgroups = &Apache::lonnet::get_users_groups(
$udom,$uname,$env{'request.course.id'});
@@ -1558,7 +1573,7 @@ sub assessparms {
foreach ('tolerance','date_default','date_start','date_end',
'date_interval','int','float','string') {
$r->print('');
+ $env{'form.recent_'.$_}.'" name="recent_'.$_.'" />');
}
if (!$pssymb) {
@@ -1635,7 +1650,7 @@ sub assessparms {
);
$r->print(< | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
$lt{'ic'} | $lt{'rl'} | $lt{'ic'} | @@ -1736,8 +1751,8 @@ ENDTABLEHEADFOUR "$title"); + "', 'metadatafile', '450', '500', 'no', 'yes');\"". + " target=\"_self\">$title"); if ($thistitle) { $r->print(' ('.$thistitle.')'); @@ -2001,7 +2016,7 @@ sub crsenv { ('environment', {'top level map backup '.$bkuptime => $tmp[1] }, $dom,$crs). - '||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
'.$description.' | '; + $output .= &Apache::loncommon::start_data_table_row(). + ''.$description.' | '; if ($parameter =~ /^default_enrollment_(start|end)_date$/) { $output .= ''. &Apache::lonhtmlcommon::date_setter('envform', @@ -2264,17 +2320,19 @@ sub crsenv { $output .= ' | '. &Apache::lonhtmlcommon::checkbox($parameter.'_setparmval'). ' | '; - $output .= "|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
'.&mt('Create New Environment Variable').' '. + $output.=&Apache::loncommon::start_data_table_row(). + ' | '.&mt('Create New Environment Variable').' '. ' | '. ' | '. - ' |
$lt{'par'} | $lt{'val'} | $lt{'set'}? | $lt{'par'} | $lt{'val'} | $lt{'set'}? | +$end_header_row $output -
---|
');
+ $r->print('
|