[LON-CAPA-cvs] cvs: loncom /enrollment Autoenroll.pl Enrollment.pm

raeburn lon-capa-cvs@mail.lon-capa.org
Fri, 02 Mar 2007 21:38:19 -0000


This is a MIME encoded message

--raeburn1172871499
Content-Type: text/plain

raeburn		Fri Mar  2 16:38:19 2007 EDT

  Modified files:              
    /loncom/enrollment	Autoenroll.pl Enrollment.pm 
  Log:
  Localization for text 
   - sent to screen (if enrollment changes resulted from running "Update Roster Now"), or 
   - logged to autoenroll.log log file (if changes resulted from running Autoenroll.pl). 
  
  
--raeburn1172871499
Content-Type: text/plain
Content-Disposition: attachment; filename="raeburn-20070302163819.txt"

Index: loncom/enrollment/Autoenroll.pl
diff -u loncom/enrollment/Autoenroll.pl:1.24 loncom/enrollment/Autoenroll.pl:1.25
--- loncom/enrollment/Autoenroll.pl:1.24	Thu Mar  1 13:58:42 2007
+++ loncom/enrollment/Autoenroll.pl	Fri Mar  2 16:38:18 2007
@@ -1,7 +1,7 @@
 #!/usr/bin/perl
 #
 #Automated Enrollment script
-# $Id: Autoenroll.pl,v 1.24 2007/03/01 18:58:42 raeburn Exp $
+# $Id: Autoenroll.pl,v 1.25 2007/03/02 21:38:18 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -126,8 +126,8 @@
 
 # Now go through classes and perform required enrollment changes.
         open (my $fh,">>$logfile");
-        print $fh "********************\n".localtime(time)." Enrollment messages start --\n";
-        print $fh "Response from fetch_enrollment_query was $outcome\n";
+        print $fh "********************\n".localtime(time).' '.&mt('Enrollment messages start').' --'."\n";
+        print $fh &mt("Response from [_1] was [_2]",'fetch_enrollment_query',$outcome)."\n";
         foreach my $crs (sort keys %enrollvar) {
             my $logmsg = '';
             my $newusermsg = '';
@@ -135,9 +135,9 @@
                 if ( ($enrollvar{$crs}{autostart} < $timenow) && ( ($enrollvar{$crs}{autoend} > $timenow) || ($enrollvar{$crs}{autoend} == 0) ) ) {
                     if (($enrollvar{$crs}{autoadds} == 1) || ($enrollvar{$crs}{autodrops} == 1)) {
                         my ($changecount,$response) = &LONCAPA::Enrollment::update_LC($dom,$crs,$enrollvar{$crs}{autoadds},$enrollvar{$crs}{autodrops},$enrollvar{$crs}{startdate},$enrollvar{$crs}{enddate},$enrollvar{$crs}{authtype},$enrollvar{$crs}{autharg},\@{$affiliates{$crs}},\%{$LC_code{$crs}},\$logmsg,\$newusermsg,'automated');
-                        print $fh "Messages start for $crs\n";
+                        print $fh &mt('Messages start for [_1]',$crs)."\n";
                         print $fh "$logmsg\n";
-                        print $fh "Messages end for $crs\n";
+                        print $fh &mt('Messages end for [_1]',$crs)."\n";
                         if ($changecount > 0) {
                             unless ($enrollvar{$crs}{notifylist}  eq '') {
 # Send message about enrollment changes to notifylist.
@@ -152,8 +152,8 @@
                                     }
                                     $env{'user.home'} = &Apache::lonnet::homeserver($env{'user.name'},$env{'user.domain'});
 
-                                    my $subject = "Student enrollment changes in $enrollvar{$crs}{coursecode}";
-                                    my $message = "The following $changecount change(s) occurred in $enrollvar{$crs}{description} - $enrollvar{$crs}{coursecode} as a result of the automated classlist update:\n\n".$response;
+                                    my $subject = &mt('Student enrollment changes in [_1]',$enrollvar{$crs}{coursecode});
+                                    my $message = &mt('The following [quant,_1,change] occurred in [_2] - [_3] as a result of the automated classlist update:',$changecount,$enrollvar{$crs}{description},$enrollvar{$crs}{coursecode})."\n\n".$response;
                                     unless ($newusermsg eq '') { 
                                         $message .= "\n".$newusermsg;
                                     }
@@ -173,7 +173,7 @@
                                         my $status =  &Apache::lonmsg::user_normal_msg($ccname,$ccdom,$subject,$message);
                                     }
                                     if ( ($enrollvar{$crs}{notifylist} eq '') && ($newusermsg ne '') ) {
-                                        my $subject = "New user accounts in  $enrollvar{$crs}{'coursecode'}";
+                                        my $subject = &mt('New user accounts in [_1]',$enrollvar{$crs}{'coursecode'});
                                         my $status =  &Apache::lonmsg::user_normal_msg($env{'user.name'},$env{'user.domain'},$subject,$newusermsg);
                                     }
                                     delete($env{'user.name'});
@@ -187,19 +187,18 @@
             } else {
                 if ( ($enrollvar{$crs}{autoadds} == 1) || ($enrollvar{$crs}{autodrops} == 1) ) {
                     if ( ($enrollvar{$crs}{autostart} < $timenow) && ( ($enrollvar{$crs}{autoend} > $timenow) || ($enrollvar{$crs}{autoend} == 0) ) ) {
-                        print $fh "No institutional classlist data could be retrieved for $crs\n";
+                        print $fh &mt('No institutional classlist data could be retrieved for [_1]',$crs)."\n";
                     } else {
-                        print $fh "Not within time window for auto-enrollment in $crs\n";
+                        print $fh ('Not within time window for auto-enrollment in [_1]',$crs)."\n";
                     }
                 } else {
-                    print $fh "Auto-enrollment not currently enabled for $crs\n";
+                    print $fh &mt('Auto-enrollment not currently enabled for [_1]',$crs)."\n";
                 }
             }
         }
-        print $fh "-- ".localtime(time)." Enrollment messages end\n*******************\n\n";
+        print $fh "-- ".localtime(time).' '.&mt('Enrollment messages end')."\n*******************\n\n";
         close($fh);
         delete($env{'user.domain'});
-# Check for photos
     }
 
 1;
Index: loncom/enrollment/Enrollment.pm
diff -u loncom/enrollment/Enrollment.pm:1.32 loncom/enrollment/Enrollment.pm:1.33
--- loncom/enrollment/Enrollment.pm:1.32	Fri Aug 11 17:55:15 2006
+++ loncom/enrollment/Enrollment.pm	Fri Mar  2 16:38:18 2007
@@ -1,5 +1,5 @@
 # Automated Enrollment manager
-# $Id: Enrollment.pm,v 1.32 2006/08/11 21:55:15 albertel Exp $
+# $Id: Enrollment.pm,v 1.33 2007/03/02 21:38:18 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -147,7 +147,7 @@
     my @okusers = ();
     foreach my $uname (@reg_students)  {
         if (grep/^$uname$/,@excludedstudents) {
-            $$logmsg .= "No re-enrollment for $uname - user was previously manually unenrolled and locked.".$linefeed;
+            $$logmsg .= &mt('No re-enrollment for [_1] - user was previously manually unenrolled and locked.',$uname).$linefeed;
         } elsif (@{$allenrolled{$uname}} > 1) {
             my @sections = ();
             my $saved;
@@ -170,12 +170,12 @@
                 push @okusers, $uname;
             }
             elsif (@sections > 1) {
-                $$logmsg .=  "$uname appears in classlists for more than one section of this course, i.e. in sections: ";
+                $$logmsg .=  &mt('[_1] appears in classlists for more than one section of this course, i.e. in sections: ',$uname);
                 foreach (@sections) {
                     $$logmsg .= " $_,";
                 }
                 chop($$logmsg);
-                $$logmsg .= ". Because of this ambiguity, no enrollment action was taken for this student.".$linefeed;
+                $$logmsg .= '. '.&mt('Because of this ambiguity, no enrollment action was taken for this student.').$linefeed;
             }
         } else {
             @{$enrollinfo{$uname}} = @{$allenrolled{$uname}[0]};
@@ -211,7 +211,7 @@
 # Check for studentID changes
                 if ( ($uidhash{$uname}) && ($uidhash{$uname} !~ /error\:/) )  {
                     unless ( ($uidhash{$uname}) eq ($stuinfo[ $place{studentID} ]) ) {
-                        $$logmsg .= "Change in ID for $uname. StudentID in LON-CAPA system is $uidhash{$uname}; StudentID in institutional data is $stuinfo[ $place{studentID} ]".$linefeed; 
+                        $$logmsg .= &mt('Change in ID for [_1]. StudentID in LON-CAPA system is [_2]; StudentID in institutional data is [_3].',$uname,$uidhash{$uname},$stuinfo[ $place{studentID} ]).$linefeed; 
                     }
                 }
 # Check for switch from manual to auto
@@ -220,15 +220,23 @@
                     my $drop_reply = &Apache::lonnet::modifystudent($dom,$uname,'','','',undef,undef,undef,undef,$$currlist{$uname}[$sec],time,undef,undef,undef,undef,'auto','',$cid);
 # re-enroll as auto student
                     if ($drop_reply !~ /^ok/) {
-                            $$logmsg .= "An error occured during the attempt to convert $uname from a manual type to an auto type student - $drop_reply.".$linefeed;
+                            $$logmsg .= &mt('An error occured during the attempt to convert [_1] from a manual type to an auto type student - [_2].',$uname,$drop_reply).$linefeed;
                     } else {
 # re-enroll as auto student
                         my ($auth,$authparam,$first,$middle,$last,$gene,$usec,$end,$start,$emailaddr,$pid,$emailenc);
                         &prepare_add($authtype,$autharg,$enddate,$startdate,\@stuinfo,\%place,\$dom,\$uname,\$auth,\$authparam,\$first,\$middle,\$last,\$gene,\$usec,\$end,\$start,\$emailaddr,\$pid,\$emailenc);
                         if ($$currlist{$uname}[$sec] ne $usec) {
-                            $switchresult .= "Section for $uname switched from $$currlist{$uname}[$sec] to ".$usec.$linefeed;
+                            my $showoldsec = $$currlist{$uname}[$sec];
+                            if ($$currlist{$uname}[$sec] eq '') {
+                                $showoldsec = &mt('none');
+                            }
+                            my $showsec = $usec;
+                            if ($usec eq '') {
+                                $showsec = &mt('none');
+                            }
+                            $switchresult .= &mt("Section for [_1] switched from '[_2]' to '[_3]'.",$uname,$showoldsec,$showsec).$linefeed;
                             if ($context eq 'automated') {
-                                $$logmsg .= "Section switch for $uname from $$currlist{$uname}[$sec] to ".$usec.$linefeed; ;
+                                $$logmsg .= &mt("Section switch for [_1] from '[_2]' to '[_3]'.",$uname,$showoldsec,$usec).$linefeed;
                             }
                             $switchcount ++;
                         }
@@ -244,9 +252,9 @@
                             my $modify_access_result = &Apache::lonnet::modify_student_enrollment($dom,$uname,undef,undef,undef,undef,undef,$stuinfo[ $place{groupID} ],$enddate,$startdate,'auto','',$cid);
                             $access = &showaccess($enddate,$startdate);
                             if ($modify_access_result =~ /^ok/) {
-                                $$logmsg .= "Change in access dates for $uname.".$access.$linefeed;
+                                $$logmsg .= &mt('Change in access dates for [_1].',$uname).$access.$linefeed;
                             } else {
-                                $$logmsg .= "Error when attempting to change start and/or end access dates for $uname in section: ".$stuinfo[ $place{groupID} ]." -error $modify_access_result".$linefeed;
+                                $$logmsg .= &mt('Error when attempting to change start and/or end access dates for [_1] in section: [_2] -error [_3].',$uname,$stuinfo[$place{groupID}],$modify_access_result).$linefeed;
                             }
                         }
                     }
@@ -269,16 +277,16 @@
                                 $access =  &showaccess($enddate,$startdate);
                             }
                             if ($modify_section_result =~ /^ok/) {
-                                $switchresult .= "Section for $uname switched from old section: ".$$currlist{$uname}[$sec] ." to new section: ".$stuinfo[ $place{groupID} ].".".$access.$linefeed;
+                                $switchresult .= &mt("Section for [_1] switched from old section: '[_2]' to new section: '[_3]'.",$uname,$$currlist{$uname}[$sec],$stuinfo[ $place{groupID} ]).$access.$linefeed;
                                 if ($context eq 'automated') {
-                                    $$logmsg .= "Section switch for $uname from $$currlist{$uname}[$sec] to $stuinfo[ $place{groupID} ]".$linefeed;
+                                    $$logmsg .= &mt('Section switch for [_1] from [_2] to [_3]',$uname,$$currlist{$uname}[$sec],$stuinfo[ $place{groupID} ]).$linefeed;
                                 }
                                 $switchcount ++;
                             } else {
-                                $$logmsg .= "Error when attempting section change for $uname from old section ".$$currlist{$uname}[$sec]." to new section: ".$stuinfo[ $place{groupID} ]." -error: $modify_section_result".$linefeed;
+                                $$logmsg .= &mt("Error when attempting section change for [_1], from old section: '[_2]' to new section: '[_3]' -error: [_4]",$uname,$$currlist{$uname}[$sec],$stuinfo[ $place{groupID} ],$modify_section_result).$linefeed;
                             }
                         } else {
-                            $$logmsg .= "Error when attempting to expire role for $uname in old section" .$$currlist{$uname}[$sec]." -error: $expire_role_result".$linefeed;
+                            $$logmsg .= &mt("Error when attempting to expire role for [_1] in old section: '[_2]' -error: '[_3]'.",$uname,$$currlist{$uname}[$sec],$expire_role_result).$linefeed;
                         }
                     }
                 }
@@ -286,15 +294,15 @@
 # Check for changed usernames by checking studentIDs
                 if ( ($stuinfo[ $place{studentID} ] ne '') && (grep/^$stuinfo[ $place{studentID} ]$/,@LCids) ) {
                     foreach my $match ( @{ $unameFromLCid{ $stuinfo[ $place{studentID} ] } }  ) {
-                        $$logmsg .= "A possible change in username has been detected for a student enrolled in this course. The existing LON-CAPA classlist contains user: $match and student ID: ".$stuinfo[ $place{studentID} ].". ";
+                        $$logmsg .= &mt('A possible change in username has been detected for a student enrolled in this course.').' '.&mt('The existing LON-CAPA classlist contains user: [_1] and student ID: [_2].',$match,$stuinfo[ $place{studentID} ]);
                         if (grep/^$match$/,@okusers) {
-                            $$logmsg .= "The username $match remains in the institutional classlist, but the same student ID is used for new user: $uname now found in the institutional classlist. You may need to contact your Domain Coordinator to determine how to reolve this issue and whether to move student data files for user: $match to $uname. ";
+                            $$logmsg .= &mt('The username [_1] remains in the institutional classlist, but the same student ID is used for new user: [_2] now found in the institutional classlist.',$match,$uname).' '.&mt('You may need to contact your Domain Coordinator to determine how to resolve this issue and whether to move student data files for user: [_1] to [_2].',$match,$uname).' ';
                         } else {
                             unless ($drops == 1) {
-                                $$logmsg .= "This username - $match - has been dropped from the institutional classlist, but the student ID of this user is also used by $uname who now appears in the institutional classlist. You may need to contact your Domain Coordinator to request a move of the student data files for user: $match to $uname. ";
+                                $$logmsg .= &mt('This username - [_1] - has been dropped from the institutional classlist, but the student ID of this user is also used by [_2] who now appears in the institutional classlist.',$match,$uname).' '.&mt('You may need to contact your Domain Coordinator to request a move of the student data files for user: [_1] to [_2].',$match,$uname).' ';
                             }
                         }
-                        $$logmsg .= "Because of this student ID conflict, the new username - $uname - has not been added to the LON-CAPA classlist.".$linefeed;      
+                        $$logmsg .= &mt('Because of this student ID conflict, the new username - [_1] - has not been added to the LON-CAPA classlist',$uname).$linefeed;
                     }
                 } elsif ($adds == 1) {
                     my ($auth,$authparam,$first,$middle,$last,$gene,$usec,$end,$start,$emailaddr,$pid,$emailenc);
@@ -349,7 +357,7 @@
 			    &mt('For [_1] students, photos ',$numphoto).
 			    $lt{$type}.'</b><ul><li>';
                     } else {
-                        $photoresult .=  "\nFor $numphoto students, photos ".
+                        $photoresult .=  "\n".&mt("For [quant,_1,student], photos ",$numphoto).
 			    $lt{$type}."\n";
                     }
                     foreach my $user (@{$$phototypes{$type}}) { 
@@ -376,19 +384,19 @@
 # Check for changed usernames by checking studentIDs
                     if (grep/^$$currlist{$uname}[ $stuid ]$/,@allINids) {
                         foreach my $match (@{$unameFromINid{$$currlist{$uname}[ $stuid ]}} ) {
-                            $$logmsg .= "A possible change in username has been detected for a student enrolled in this course. The existing LON-CAPA classlist contains user: $uname and student ID: $$currlist{$uname}[ $place{studentID} ].  This username has been dropped from the institutional classlist, but the same student ID is used for user: $match who still appears in the institutional classlist. You may need to move the student data files for user: $uname to $match. Because of this, user $uname has not been dropped from the course.".$linefeed;
+                            $$logmsg .= &mt('A possible change in username has been detected for a student enrolled in this course.').' '.&mt('The existing LON-CAPA classlist contains user: [_1] and student ID: [_2].',$uname,$$currlist{$uname}[ $place{studentID} ]).' '.&mt('This username has been dropped from the institutional classlist, but the same student ID is used for user: [_1] who still appears in the institutional classlist.',$match).' '.&mt('You may need to move the student data files for user: [_1] to [_2]',$uname,$match).' '.&mt('Because of this, user [_1] has not been dropped from the course.',$uname).$linefeed;
                             push @saved,$uname;
                         }
                     } elsif (@saved == 0) {
                         my $drop_reply = &Apache::lonnet::modifystudent($dom,$uname,'','','',undef,undef,undef,undef,$$currlist{$uname}[$sec],time,undef,undef,undef,undef,'auto','',$cid);
                         if ($drop_reply !~ /^ok/) {
-                            $$logmsg .= "An error occured during the attempt to expire the $uname from the old section $$currlist{$uname}[$sec] - $drop_reply.".$linefeed;
+                            $$logmsg .= &mt('An error occured during the attempt to expire the [_1] from the old section [_2] - [_3].',$uname,$$currlist{$uname}[$sec],$drop_reply).$linefeed;
                         } else {
                             $dropcount ++;
                             my %userenv = &Apache::lonnet::get('environment',['firstname','lastname','id'],$dom,$uname);
-                            $dropresult .= $userenv{'firstname'}." ".$userenv{'lastname'}." (".$userenv{'id'}.") - ".$uname." dropped from section/group ".$$currlist{$uname}[$sec].$linefeed; 
+                            $dropresult .= $userenv{'firstname'}." ".$userenv{'lastname'}." (".$userenv{'id'}.") - ".$uname.' '.&mt("dropped from section/group: '[_1]'.",$$currlist{$uname}[$sec]).$linefeed; 
                             if ($context eq 'automated') {
-                                $$logmsg .= "User $uname student role expired from course.".$linefeed;
+                                $$logmsg .= &mt('User [_1] student role expired from course.',$uname).$linefeed;
                             }
                         }
                     }
@@ -404,29 +412,30 @@
     if ($enrollcount > 0) {
         if ($context eq "updatenow") {
             $addresult = substr($addresult,0,rindex($addresult,"<li>"));
-            $addresult = "The following $enrollcount student(s) was/were added to this LON-CAPA course:<br/><ul><li>".$addresult."</ul><br/><br/>";
+            $addresult = &mt("The following [quant,_1,student was,students were] added to this LON-CAPA course:",$enrollcount).'<br/><ul><li>'.$addresult.'</ul><br/><br/>';
         } else {
-            $addresult = "The following $enrollcount student(s) was/were added to this LON-CAPA course:\n\n".$addresult."\n\n";
+            $addresult = &mt("The following [quant,_1,student was,students were] added to this LON-CAPA course:",$enrollcount)."\n\n".$addresult."\n\n";
         }
     }
     if ($dropcount > 0) {
         if ($context eq "updatenow") {
             $dropresult = substr($dropresult,0,rindex($dropresult,"<li>"));
-            $dropresult = "The following $dropcount student(s) was/were expired from this LON-CAPA course:<br/><ul><li>".$dropresult."</ul><br/><br/>";
+            $dropresult = &mt("The following [quant,_1,student was,students were] expired from this LON-CAPA course:",$dropcount).'<br/><ul><li>'.$dropresult.'</ul><br/><br/>';
         } else {
-            $dropresult = "The following $dropcount student(s) was/were expired from this LON-CAPA course:\n\n".$dropresult."\n\n";
+            $dropresult = &mt("The following [quant,_1,student was,students were] expired from this LON-CAPA course:",$dropcount)."\n\n".$dropresult."\n\n";
         }
     }
     if ($switchcount > 0) {
         if ($context eq "updatenow") {
             $switchresult = substr($switchresult,0,rindex($switchresult,"<li>"));
-            $switchresult = "The following $switchcount student(s) switched sections in this LON-CAPA course:<br/><ul><li>".$switchresult."</ul><br/><br/>";
+            print STDERR &mt("[quant,_1,student]",$switchcount)."\n"; 
+            $switchresult = &mt("The following [quant,_1,student] switched sections in this LON-CAPA course:",$switchcount).'<br/><ul><li>'.$switchresult.'</ul><br/><br/>';
         } else {
-            $switchresult = "The following $switchcount student(s) switched sections in this LON-CAPA course:\n\n".$switchresult."\n\n";
+            $switchresult = &mt("The following [quant,_1,student] switched sections in this LON-CAPA course:",$switchcount)."\n\n".$switchresult."\n\n";
         }
     }
     if ( ($adds) && ($enrollcount == 0) ) {
-        $addresult = "There were no new students to add to the course.";
+        $addresult = &mt('There were no new students to add to the course.');
         if ($context eq "updatenow") {
             $addresult .="<br/><br/>";
         } else {
@@ -434,7 +443,7 @@
         }
     }
     if ( ($drops) && ($dropcount == 0) ) {
-        $dropresult = "There were no students with roles to expire because all active students previously added to the course from institutional classlist(s) are still officially registered.";
+        $dropresult = &mt('There were no students with roles to expire because all active students previously added to the course from institutional classlist(s) are still officially registered.');
         if ($context eq "updatenow") {
             $dropresult .="<br/>";
         } else {
@@ -486,12 +495,12 @@
         ($authparam,$create_passwd,$authchk) = &Apache::lonnet::auto_create_password($crs,$cdom,$authparam);
     } elsif ($auth =~ m/^krb/) {
         if ($authparam eq '') {
-            $$logmsg .= "No Kerberos domain was provided for the new user - $uname, so the new user was not enrolled in the course.".$linefeed;
+            $$logmsg .= &mt('No Kerberos domain was provided for the new user - [_1], so the new user was not enrolled in the course',$uname).$linefeed;
             $authchk = 'invalid';
         }
     } else {
         $authchk = 'invalid';
-        $$logmsg .= "An invalid authentication type was provided for the new user - $uname, so the user was not enrolled in the course.".$linefeed;
+        $$logmsg .= &mt('An invalid authentication type was provided for the new user - [_1], so the user was not enrolled in the course.',$uname).$linefeed;
     }   
     if ($authchk eq 'ok') {
 # Now create user.
@@ -515,12 +524,16 @@
         }
         if ($outcome eq 'ok') {
             my $access = &showaccess($end,$start);
-            $$addresult .= "$first $last ($pid) - $uname enrolled in section/group $usec.".$access.$linefeed;
+            my $showsec = $usec;
+            if ($usec eq '') {
+                $showsec = &mt('none');
+            }
+            $$addresult .= "$first $last ($pid) - $uname ".&mt("enrolled in section/group: '[_1]'.",$showsec).$access.$linefeed;
             unless ($context eq 'createowner' || $context eq 'createcourse') {
                 $$enrollcount ++;
             }
             if ($context eq 'automated') {
-                $$logmsg .= "New $udom user $uname added successfully.";
+                $$logmsg .= &mt('New [_1] user [_2] added successfully.',$udom,$uname);
             }
             unless ($emailenc eq '' || $context eq 'createowner' || $context eq 'createcourse') {
                 my %emailHash;
@@ -534,25 +547,25 @@
 # If e-mail address is invalid, send password via message to courseowner i
 # (if automated call) or to user if roster update.
                 if ($emailaddr eq '') {
-                    $$newusermsg .= " username: $uname, password: ".$authparam.$linefeed."\n";
+                    $$newusermsg .= &mt(' username: [_1], password: [_2]',$uname,$authparam).$linefeed."\n";
                 } else {
-                    my $subject = "New LON-CAPA account";
+                    my $subject = &mt('New LON-CAPA account');
                     my $body;
                     if ($context eq 'createowner') {
-                        $body = "A user account has been created for you while creating your new course in the LON-CAPA course management and online homework system.\n\nYou should log-in to the system using the following credentials:\nusername: $uname\npassword: $authparam\n\nThe URL you should use to access the LON-CAPA system at your school is: http://".$ENV{'SERVER_NAME'}."\n\n";
+                        $body = &mt('A user account has been created for you while creating your new course in the LON-CAPA course management and online homework system.')."\n\n".&mt('You should log-in to the system using the following credentials:')."\n".&mt('username: ').$uname."\n".&mt('password: ').$authparam."\n\n".&mt('The URL you should use to access the LON-CAPA system at your school is: ').'http://'.$ENV{'SERVER_NAME'}."\n\n";
                     } elsif ($context eq 'createcourse') {
-                        $body = "You have been assigned the role of $$longroles{$role} in a new course: $$courseinfo{'description'} - $$courseinfo{'inst_code'} in the LON-CAPA course management and online homework system.  As you did not have an existing user account in the system, one has been created for you.\n\nYou should log-in to the system using the following credentials:\nusername: $uname\npassword: $authparam\n\nThe URL you should use to access the LON-CAPA system at your school is: http://".$ENV{'SERVER_NAME'}."\n\n"; 
+                        $body = &mt('You have been assigned the role of [_1] in a new course: [_2] - [_3] in the LON-CAPA course management and online homework system.',$$longroles{$role},$$courseinfo{'description'},$$courseinfo{'inst_code'}).' '.&mt('As you did not have an existing user account in the system, one has been created for you.')."\n\n".&mt("You should log-in to the system using the following credentials:\nusername: [_1]\npassword: [_2]",$uname,$authparam)."\n\n".&mt('The URL you should use to access the LON-CAPA system at your school is: '),'http://'.$ENV{'SERVER_NAME'}."\n\n"; 
                     } else {
                         my $access_start = 'immediately';
                         if ($start > 0) {
                             $access_start = localtime($start)
                         }
-                        $body = "You have been enrolled in the LON-CAPA system at your school, because you are a registered student in a class that is using the LON-CAPA couse management and online homework system.\n\nYou should log-in to the system using the following credentials:\nusername: $uname\npassword: $authparam\n\nThe URL you should use to access the LON-CAPA system at your school is: http://".$ENV{'SERVER_NAME'}."\n\n.When you log-in you will be able to access the LON-CAPA course for $$courseinfo{'description'} - $$courseinfo{'inst_code'} starting $access_start.\n";
+                        $body = &mt('You have been enrolled in the LON-CAPA system at your school, because you are a registered student in a class that is using the LON-CAPA couse management and online homework system.')."\n\n".&mt("You should log-in to the system using the following credentials:\nusername: [_1]\npassword: [_2]",$uname,$authparam)."\n\n".&mt('The URL you should use to access the LON-CAPA system at your school is: ').'http://'.$ENV{'SERVER_NAME'}."\n\n".&mt('When you log-in you will be able to access the LON-CAPA course for [_1] - [_2] starting [_3].',$$courseinfo{'description'},$$courseinfo{'inst_code'},$access_start)."\n";
                     }
                     &Apache::lonmsg::sendemail($emailaddr,$subject,$body);
                 }
                 if ($context eq 'automated') {
-                    $$logmsg .= " Initial password -  - sent to ".$emailaddr.$linefeed;
+                    $$logmsg .= &mt(' Initial password - sent to ').$emailaddr.$linefeed;
                 }
             } else {
                 if ($context eq 'automated') {
@@ -560,7 +573,7 @@
                 }
             }
         } else {
-            $$logmsg .= "An error occurred adding new user $uname - ".$outcome.$linefeed;
+            $$logmsg .= &mt('An error occurred adding new user [_1] - [_2].',$uname,$outcome).$linefeed;
         }
     }
     return $outcome;
@@ -617,20 +630,20 @@
 # Get the user's e-mail address
     if ($userenv{critnotification} =~ m/%40/) {
         unless ($emailenc eq $userenv{critnotification}) {
-            $$logmsg .= "Current critical notification e-mail
-- ".$userenv{critnotification}." for $uname is different to e-mail address in institutional classlist - ".$emailenc.$linefeed;
+            $$logmsg .= &mt('Current critical notification e-mail
+- [_1] for [_2] is different to e-mail address in institutional classlist - [_3].',$userenv{critnotification},$uname,$emailenc).$linefeed;
         }
     }
     if ($userenv{notification} =~ m/%40/) {
         unless ($emailenc eq $userenv{notification}) {
-            $$logmsg .= "Current standard notification e-mail
-- ".$userenv{notification}." for $uname is different to e-mail address in institutional classlist - ".$emailenc.$linefeed;
+            $$logmsg .= &mt('Current standard notification e-mail
+- [_1] for [_2] is different to e-mail address in institutional classlist - [_3]',$userenv{notification},$uname,$emailenc).$linefeed;
         }
     }
     if ($userenv{permanentemail} =~ m/%40/) {
         unless ($emailenc eq $userenv{permanentemail}) {
-            $$logmsg .= "Current permanent e-mail
-- ".$userenv{permanentemail}." for $uname is different to e-mail address in institutional classlist - ".$emailenc.$linefeed;
+            $$logmsg .= &mt('Current permanent e-mail
+- [_1] for [_2] is different to e-mail address in institutional classlist - [_3]',$userenv{permanentemail},$uname,$emailenc).$linefeed;
         }
     }
     my $krbdefdom = '';
@@ -641,14 +654,14 @@
     } elsif ($currentauth=~ /^(unix|internal|localauth):/) {
         $currentauth = $1;
     } else {
-        $$logmsg .= "Invalid authentication method $currentauth for $uname.".$linefeed;
+        $$logmsg .= &mt('Invalid authentication method [_1] for [_2].',$currentauth,$uname).$linefeed;
     }
 # Report if authentication methods are different.
     if ($currentauth ne $auth) {
-        $$logmsg .= "Authentication type mismatch for $uname - '$currentauth' in system, '$auth' based on information in classlist or default for this course.".$linefeed;
+        $$logmsg .= &mt("Authentication type mismatch for [_1] - '[_2]' in system, '[_3]' based on information in classlist or default for this course.",$uname,$currentauth,$auth).$linefeed;
     } elsif ($auth =~ m/^krb/) {
         if ($krbdefdom ne $authparam) {
-            $$logmsg .= "Kerberos domain mismatch for $uname - '$krbdefdom' in system, '$authparam' based on information in classlist or default for this course.".$linefeed;
+            $$logmsg .= &mt("Kerberos domain mismatch for [_1] - '[_2]' in system, '[_3]' based on information in classlist or default for this course.",$uname,$krbdefdom,$authparam).$linefeed;
         }
     }
                                                                                   
@@ -669,9 +682,9 @@
         $changeHash{'permanentemail'} = $emailenc;
         my $putresult = &Apache::lonnet::put('environment',\%changeHash,$dom,$uname);
         if ($putresult eq 'ok') {
-            $$logmsg .= "User information updated for user: $uname prior to enrollment.".$linefeed;
+            $$logmsg .= &mt('User information updated for user: [_1]$uname prior to enrollment.',$uname).$linefeed;
         } else {
-            $$logmsg .= "There was a problem modifying user data for existing user - $uname -error: $putresult, enrollment will still be attempted.".$linefeed;
+            $$logmsg .= &mt('There was a problem modifying user data for existing user - [_1] -error: [_2], enrollment will still be attempted.',$uname,$putresult).$linefeed;
         }
     }
                                                                                   
@@ -679,17 +692,21 @@
     my $classlist_reply = &Apache::lonnet::modify_student_enrollment($dom,$uname,$pid,$first,$middle,$last,$gene,$usec,$end,$start,'auto','',$cid);
     if ($classlist_reply eq 'ok') {
         my $access = &showaccess($end,$start);
+        my $showsec = $usec;
+        if ($usec eq '') {
+            $showsec = &mt('none');
+        }
         if ($caller eq 'switchtype') {
-            $$logmsg .= "Existing user $uname detected in institutional classlist - switched from 'manual' to 'auto' enrollment in section/group $usec.".$access.$linefeed;
+            $$logmsg .= &mt("Existing user [_1] detected in institutional classlist - switched from 'manual' to 'auto' enrollment in section/group [_2].",$uname,$showsec).$access.$linefeed;
         } elsif ($caller eq 'newstudent') {
             $$enrollcount ++;
-            $$addresult .= "$first $last ($pid) - $uname enrolled in section/group $usec.".$access.$linefeed;
+            $$addresult .= "$first $last ($pid) - $uname ".&mt("enrolled in section/group '[_1]'.",$showsec).$access.$linefeed;
         }
         if ($context eq 'automated') {
-            $$logmsg .= "Existing $dom user $uname enrolled successfully.".$linefeed;
+            $$logmsg .= &mt('Existing [_1] user [_2] enrolled successfully.',$dom,$uname).$linefeed;
         }
     } else {
-           $$logmsg .= "There was a problem updating the classlist db file for user $uname to show the new enrollment -error: $classlist_reply, so no enrollment occurred for this user.".$linefeed;
+           $$logmsg .= &mt('There was a problem updating the classlist db file for user [_1] to show the new enrollment -error: [_2], so no enrollment occurred for this user.',$uname,$classlist_reply).$linefeed;
     }
     return;
 }
@@ -726,7 +743,7 @@
     } else {
         $showend = &Apache::lonlocal::locallocaltime($end);
     }
-    my $access_msg = " Access starts: ".$showstart.", ends: ".$showend.".";
+    my $access_msg = ' '.&mt('Access starts: [_1], ends: [_2].',$showstart,$showend);
     return $access_msg;
 }
 

--raeburn1172871499--