--- loncom/interface/lonparmset.pm 2006/06/02 06:48:54 1.309
+++ loncom/interface/lonparmset.pm 2006/06/23 05:25:27 1.316
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set parameters for assessments
#
-# $Id: lonparmset.pm,v 1.309 2006/06/02 06:48:54 www Exp $
+# $Id: lonparmset.pm,v 1.316 2006/06/23 05:25:27 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -65,7 +65,6 @@ use Apache::lonlocal;
use Apache::lonnavmaps;
use Apache::longroup;
use Apache::lonrss;
-use lib '/home/httpd/lib/perl/';
use LONCAPA;
# --- Caches local to lonparmset
@@ -495,7 +494,7 @@ sub storeparm_by_symb_inner {
}
if ($reply=~/^error\:(.*)/) {
- return "Write Error: $1 ";
+ return "Write Error: $1 ";
}
return '';
}
@@ -703,7 +702,7 @@ sub print_row {
}
my $automatic=&rulescache(($which=~/\_([^\_]+)$/)[0].'_triggers');
if ($automatic) {
- $parm.=' '.&mt('Automatically sets').' '.join(', ',split(/\:/,$automatic)).' ';
+ $parm.=' '.&mt('Automatically sets').' '.join(', ',split(/\:/,$automatic)).' ';
}
$r->print('
'.$parm.' ');
@@ -1478,8 +1477,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 +1489,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'};
@@ -1573,8 +1572,9 @@ sub assessparms {
&displaymenu($r,\%allparms,\%allparts,\@pscat,\@psprt,\%keyorder);
} else {
my ($map,$id,$resource)=&Apache::lonnet::decode_symb($pssymb);
- $r->print(&mt('Specific Resource').": ".$resource.
- ' '.
+ my $title = &Apache::lonnet::gettitle($pssymb);
+ $r->print(&mt('Specific Resource: [_1] ([_2])',$title,$resource).
+ ' '.
''.&mt('Show all parts').': ');
}
@@ -2078,6 +2078,10 @@ sub crsenv {
}
}
}
+
+ my $start_table =&Apache::loncommon::start_data_table();
+ my $start_header_row=&Apache::loncommon::start_data_table_header_row();
+ my $end_header_row =&Apache::loncommon::end_data_table_header_row();
# ------------------------- Re-init course environment entries for this session
&Apache::lonnet::coursedescription($env{'request.course.id'},
@@ -2094,9 +2098,9 @@ sub crsenv {
('url' => ''.&mt('Top Level Map').' '.
'".
- &mt('Select Map').' '.
+ &mt('Select Map').' '.
&mt('Modification may make assessment data inaccessible').
- ' ',
+ '',
'description' => ''.&mt('Course Description').' ',
'courseid' => ''.&mt('Course ID or number').
' '.
@@ -2167,8 +2171,8 @@ sub crsenv {
'('.&mt('or set value to "[_1]" to allow all roles',"yes ").')',
'rndseed'
=> ''.&mt('Randomization algorithm used').' '.
- ''.&mt('Modifying this will make problems').' '.
- &mt('have different numbers and answers').' ',
+ ''.&mt('Modifying this will make problems').' '.
+ &mt('have different numbers and answers').' ',
'receiptalg'
=> ''.&mt('Receipt algorithm used').' '.
&mt('This controls how receipt numbers are generated.'),
@@ -2194,6 +2198,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 ').')',
@@ -2230,7 +2236,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\./)) {
@@ -2240,13 +2247,15 @@ sub crsenv {
}
}
}
+
foreach my $parameter (@Display_Order) {
my $description = $descriptions{$parameter};
# onchange is javascript to automatically check the 'Set' button.
my $onchange = 'onFocus="javascript:window.document.forms'.
"['envform'].elements['".$parameter."_setparmval']".
'.checked=true;"';
- $output .= ''.$description.' ';
+ $output .= &Apache::loncommon::start_data_table_row().
+ ''.$description.' ';
if ($parameter =~ /^default_enrollment_(start|end)_date$/) {
$output .= ''.
&Apache::lonhtmlcommon::date_setter('envform',
@@ -2263,17 +2272,19 @@ sub crsenv {
$output .= ' '.
&Apache::lonhtmlcommon::checkbox($parameter.'_setparmval').
' ';
- $output .= " \n";
+ $output .= &Apache::loncommon::end_data_table_row()."\n";
}
my $onchange = 'onFocus="javascript:window.document.forms'.
'[\'envform\'].elements[\'newp_setparmval\']'.
'.checked=true;"';
- $output.=''.&mt('Create New Environment Variable').' '.
+ $output.=&Apache::loncommon::start_data_table_row().
+ ''.&mt('Create New Environment Variable').' '.
''.
' '.
- ' ';
+ ' '.
+ &Apache::loncommon::end_data_table_row()."\n";
}
my %lt=&Apache::lonlocal::texthash(
'par' => 'Parameter',
@@ -2295,16 +2306,18 @@ sub crsenv {
$browse_js);
my $end_page =
&Apache::loncommon::end_page();
+ my $end_table=&Apache::loncommon::end_data_table();
$r->print(<
$setoutput
-
-
-$lt{'par'} $lt{'val'} $lt{'set'}?
+$start_table
+$start_header_row
+$lt{'par'} $lt{'val'} $lt{'set'}?
+$end_header_row
$output
-
+$end_table
$end_page
@@ -2391,8 +2404,8 @@ sub storedata {
$r->print(' '.&mt('Stored modified parameter for').' '.
&Apache::loncommon::plainname($tuname,$tudom));
} else {
- $r->print(''.
- &mt('Error storing parameters').' ');
+ $r->print(''.
+ &mt('Error storing parameters').'
');
}
&Apache::lonnet::devalidateuserresdata($tuname,$tudom);
} else {
@@ -2406,8 +2419,8 @@ sub storedata {
&log_parmset({$tkey=>''},1,$tuname,$tudom);
$r->print(' '.&mt('Deleted parameter for').' '.&Apache::loncommon::plainname($tuname,$tudom));
} else {
- $r->print(''.
- &mt('Error deleting parameters').' ');
+ $r->print(''.
+ &mt('Error deleting parameters').'
');
}
&Apache::lonnet::devalidateuserresdata($tuname,$tudom);
} else {
@@ -2424,8 +2437,8 @@ sub storedata {
&log_parmset({$tkey=>$data,$tkey.'.type' => $typeof},0,$tuname,$tudom);
$r->print(' '.&mt('Stored modified date for').' '.&Apache::loncommon::plainname($tuname,$tudom));
} else {
- $r->print(''.
- &mt('Error storing parameters').' ');
+ $r->print(''.
+ &mt('Error storing parameters').'
');
}
&Apache::lonnet::devalidateuserresdata($tuname,$tudom);
} else {
@@ -2446,8 +2459,8 @@ sub storedata {
&log_parmset(\%loghash,1);
$r->print(''.&mt('Deleted [_1] parameter(s) ',$delentries));
} else {
- $r->print(''.
- &mt('Error deleting parameters').' ');
+ $r->print(''.
+ &mt('Error deleting parameters').'
');
}
&Apache::lonnet::devalidatecourseresdata($crs,$dom);
}
@@ -2456,8 +2469,8 @@ sub storedata {
&log_parmset(\%newdata,0);
$r->print(''.&mt('Stored [_1] parameter(s)',$putentries/2).' ');
} else {
- $r->print(''.
- &mt('Error storing parameters').' ');
+ $r->print(''.
+ &mt('Error storing parameters').'
');
}
&Apache::lonnet::devalidatecourseresdata($crs,$dom);
}
@@ -2532,12 +2545,12 @@ sub listdata {
}
$middle=~s/\.+$//;
$middle=~s/^\.+//;
- my $realm=''.&mt('All Resources').' ';
+ my $realm=''.&mt('All Resources').' ';
if ($middle=~/^(.+)\_\_\_\(all\)$/) {
- $realm=''.&mt('Folder/Map').': '.&Apache::lonnet::gettitle($1).' ('.$1.') ';
+ $realm=''.&mt('Folder/Map').': '.&Apache::lonnet::gettitle($1).' ('.$1.') ';
} elsif ($middle) {
my ($map,$id,$url)=&Apache::lonnet::decode_symb($middle);
- $realm=''.&mt('Resource').': '.&Apache::lonnet::gettitle($middle).' ('.$url.' in '.$map.' id: '.$id.') ';
+ $realm=''.&mt('Resource').': '.&Apache::lonnet::gettitle($middle).' ('.$url.' in '.$map.' id: '.$id.') ';
}
if ($sortorder eq 'realmstudent') {
if ($realm ne $oldrealm) {
@@ -2564,7 +2577,7 @@ sub listdata {
}
if ($part ne $oldpart) {
$r->print(&tableend().
- "\n".&mt('Part').": $part ");
+ "\n".&mt('Part').": $part ");
$oldpart=$part;
}
#
@@ -3033,14 +3046,14 @@ ENDMAINFORMHEAD
}
next if (! $menu_item->{'permission'});
$menu_html.='';
- $menu_html.='';
+ $menu_html.=' ';
+ $menu_html.= &mt($menu_item->{'text'}).'';
if (exists($menu_item->{'help'})) {
$menu_html.=
&Apache::loncommon::help_open_topic($menu_item->{'help'});
@@ -3311,14 +3324,14 @@ sub components {
$section=&mt('User').": ".&Apache::loncommon::plainname($uname,$udom);
$issection='';
}
- my $realm=''.&mt('All Resources').' ';
+ my $realm=''.&mt('All Resources').' ';
my $realmdescription=&mt('all resources');
if ($middle=~/^(.+)\_\_\_\(all\)$/) {
- $realm=''.&mt('Folder/Map').': '.&Apache::lonnet::gettitle($1).' ('.$1.') ';
+ $realm=''.&mt('Folder/Map').': '.&Apache::lonnet::gettitle($1).' ('.$1.') ';
$realmdescription=&mt('folder').' '.&Apache::lonnet::gettitle($1);
} elsif ($middle) {
my ($map,$id,$url)=&Apache::lonnet::decode_symb($middle);
- $realm=''.&mt('Resource').': '.&Apache::lonnet::gettitle($middle).' ('.$url.' in '.$map.' id: '.$id.') ';
+ $realm=''.&mt('Resource').': '.&Apache::lonnet::gettitle($middle).' ('.$url.' in '.$map.' id: '.$id.') ';
$realmdescription=&mt('resource').' '.&Apache::lonnet::gettitle($middle);
}
my $what=$part.'.'.$name;
@@ -3345,7 +3358,8 @@ sub standard_parameter_names {
'problemstatus' => 'Problem Status Visible',
'int_pos' => 'Positive Integer',
'int_zero_pos' => 'Positive Integer or Zero',
- 'hinttries' => 'Number of Tries till Hints appear');
+ 'hinttries' => 'Number of Tries till Hints appear',
+ 'numbubbles' => 'Number of Bubbles in Exam Mode');
if ($standard_parms{$name}) {
return $standard_parms{$name};
} else {
@@ -3364,13 +3378,25 @@ sub parm_change_log {
my %parmlog=&Apache::lonnet::dump('nohist_parameterlog',
$env{'course.'.$env{'request.course.id'}.'.domain'},
$env{'course.'.$env{'request.course.id'}.'.num'});
+
if ((keys(%parmlog))[0]=~/^error\:/) { undef(%parmlog); }
- $r->print('
');