[LON-CAPA-cvs] cvs: loncom /interface lonviewclasslist.pm

raeburn raeburn at source.lon-capa.org
Sun Oct 26 11:20:25 EDT 2014


raeburn		Sun Oct 26 15:20:25 2014 EDT

  Modified files:              
    /loncom/interface	lonviewclasslist.pm 
  Log:
  - Text used determined by context (either Community or Course).  
  
  
-------------- next part --------------
Index: loncom/interface/lonviewclasslist.pm
diff -u loncom/interface/lonviewclasslist.pm:1.15 loncom/interface/lonviewclasslist.pm:1.16
--- loncom/interface/lonviewclasslist.pm:1.15	Mon Jul 15 17:00:19 2013
+++ loncom/interface/lonviewclasslist.pm	Sun Oct 26 15:20:25 2014
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Handler to display the classlist 
 #
-# $Id: lonviewclasslist.pm,v 1.15 2013/07/15 17:00:19 bisitz Exp $
+# $Id: lonviewclasslist.pm,v 1.16 2014/10/26 15:20:25 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -87,10 +87,10 @@
 
     # Get classlist view settings
     my %viewsettings = &retrieve_view_settings();
+    my $crstype = &Apache::loncommon::course_type();
 
     if (($env{'form.forceedit'}) || ($env{'form.action'} eq 'setconfig'))  {
         if (&Apache::lonnet::allowed('opa',$env{'request.course.id'})) {
-            my $crstype = &Apache::loncommon::course_type();
             my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};
             my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
             my $rosterprefs = &roster_prefs($crstype);
@@ -157,25 +157,37 @@
                              '<input type="submit" value="'.&mt('Save').'" />'.
                              '</form>');
                } else {
-                   $r->print('<div class="LC_info">'.
-                             &mt('No student-viewable course roster settings available.').
-                             '</div>');
+                   $r->print('<div class="LC_info">');
+                   if ($crstype eq 'Community') {
+                       $r->print(&mt('No member-viewable community roster settings available.'));
+                   } else {
+                       $r->print(&mt('No student-viewable course roster settings available.'));
+                   }
+                   $r->print('</div>');
                }
            }
         } else {
-            $r->print('<div class="LC_info">'.
-                      &mt('You do not have rights to modify student-viewable course roster settings.').
-                      '</div>');
+            $r->print('<div class="LC_info">');
+            if ($crstype eq 'Community') {
+                $r->print(&mt('You do not have rights to modify member-viewable community roster settings.'));
+            } else {
+                $r->print(&mt('You do not have rights to modify student-viewable course roster settings.'));
+            }
+            $r->print('</div>');
         }
     } else {
 
         # Print classlist
         if (keys(%viewsettings) > 0) {
-            $r->print(&html_classlist($r,\%viewsettings));
+            $r->print(&html_classlist($r,$crstype,\%viewsettings));
         } else {
-            $r->print('<div class="LC_info">'.
-                      &mt("Display of a student-viewable course roster is not currently enabled.").
-                      '</div>');
+            $r->print('<div class="LC_info">');
+            if ($crstype eq 'Community') {
+                $r->print(&mt("Display of a member-viewable community roster is not currently enabled."));
+            } else {
+                $r->print(&mt("Display of a student-viewable course roster is not currently enabled."));
+            }
+            $r->print('</div>');
         }
     }
     #
@@ -211,11 +223,13 @@
     my %lt;
     if ($crstype eq 'Community') {
         %lt = &Apache::lonlocal::texthash (
+                  svrs => 'Member-viewable roster settings',
                   stuv => 'Member-viewable membership list options',
                   stul => 'Member agreement needed to be listed',
         );
     } else {
         %lt = &Apache::lonlocal::texthash(
+                  svrs => 'Student-viewable roster settings',
                   stuv => 'Student-viewable classlist options',
                   stul => 'Student agreement needed to be listed',
         );
@@ -223,7 +237,7 @@
     $lt{'incl'} = &mt('Include link to accessible portfolio files');
 
     return 
-        { text => 'Student-viewable roster settings',
+        { text => $lt{'svrs'},
           header => [ {col1 => 'Setting',
                        col2 => $lt{'stuv'}}],
           ordered => ['student_classlist_view',
@@ -238,32 +252,46 @@
 }
 
 sub html_classlist {
-    my ($r,$viewsettings) = @_;
+    my ($r,$crstype,$viewsettings) = @_;
     my ($Str,$title,$secdisplay,$cid,$cdom,$cnum,$listtype,%publicroster);
     my $fullroster = &Apache::loncoursedata::get_classlist();
     my $classlist;
 
+    my $singular = 'student';
+    my $plural = 'students';
+    my $titleplural = 'Students';
+    my $heading = &mt('Student-viewable course roster');
+
+    if ($crstype eq 'Community') {
+        $singular = 'member';
+        $plural = 'members';
+        $titleplural = 'Members';
+        $heading = &mt('Member-viewable community roster');
+    }
+
     if ($env{'form.action'} eq 'setenv') {
         $Str .= &process_student_prefs();
     }
-    $Str .= '<h2>'.&mt('Student-viewable course roster').'</h2>';
+
+    $Str .= '<h2>'.$heading.'</h2>';
 
     $cid = $env{'request.course.id'};
     $cdom = $env{'course.'.$cid.'.domain'};
     $cnum = $env{'course.'.$cid.'.num'};
 
+    my $title;
     if ($viewsettings->{'limit_to_section'}) {
         if ($env{'request.course.sec'} eq '') {
-            $title = '<h3>'.&mt('Students with no section').'</h3>';
+            $title = &mt($titleplural.' with no section');
             $listtype = 'without a section';
         } else {
-            $title ='<h3>'.&mt('Students in section "[_1]"',
-                               $env{'request.course.sec'}).'</h3>';
+            $title = &mt($titleplural.' in section "[_1]"',
+                         $env{'request.course.sec'});
             $listtype = 'in the section';
             $secdisplay = " ($env{'request.course.sec'}) ";
         }
     } else {
-        $title .= '<h3>'.&mt('Students in any section').'</h3>';
+        $title = &mt($titleplural.' in any section');
         $listtype = 'in the course';
     }
 
@@ -274,7 +302,7 @@
         %publicroster = &Apache::lonnet::dump('publicroster',$cdom,$cnum);
     }
 
-    $Str .= $title;
+    $Str .= '<h3>'.$title.'</h3>';
 
     my $fullcount = 0;
     my $publiccount = 0;
@@ -303,34 +331,34 @@
         $displaycount = $publiccount;
         if ($fullcount > $publiccount) {
             if ($publiccount) {
-                $Str .= &mt('Only students who have opted to be listed in the roster ([_1] out of [_2] students) are shown.',$publiccount,$fullcount).'<br />';
+                $Str .= &mt('Only '.$plural.' who have opted to be listed in the roster ([_1] out of [_2] '.$plural.') are shown.',$publiccount,$fullcount).'<br />';
             } else {
                 if ($fullcount == 1) {
-                    $Str .= &mt('The single student '.$listtype.'[_1] has opted not to be listed in the roster.',$secdisplay);
+                    $Str .= &mt('The single '.$singular.' '.$listtype.'[_1] has opted not to be listed in the roster.',$secdisplay);
                 } else {
-                    $Str .= &mt('None of the [_1] students '.$listtype.'[_2] have opted to be listed in the roster.',$fullcount,$secdisplay);
+                    $Str .= &mt('None of the [_1] '.$plural.' '.$listtype.'[_2] have opted to be listed in the roster.',$fullcount,$secdisplay);
                 }
                 return $Str;
             }
         } else {
             if ($fullcount > 1) {
-                $Str .= &mt('All [_1] students '.$listtype.'[_2] have opted to be listed in the roster.',$fullcount,$secdisplay);
+                $Str .= &mt('All [_1] '.$plural.' '.$listtype.'[_2] have opted to be listed in the roster.',$fullcount,$secdisplay); 
             } elsif ($fullcount == 1) {
-                $Str .= &mt('The single student '.$listtype.'[_1] has opted to be listed in the roster.',$secdisplay);
+                $Str .= &mt('The single '.$singular.' '.$listtype.'[_1] has opted to be listed in the roster.',$secdisplay);
             }
         }
     } else {
         $displaycount = $fullcount;
         if ($fullcount > 1) {
-            $Str .= &mt('All [_1] students '.$listtype.'[_2] are listed in the roster.',$fullcount,$secdisplay);
+            $Str .= &mt('All [_1] '.$plural.' '.$listtype.'[_2] are listed in the roster.',$fullcount,$secdisplay);
         } elsif ($fullcount == 1) {
-            $Str .= &mt('There is only a single student '.$listtype.'[_1]',$secdisplay);
+            $Str .= &mt('There is only a single '.$singular.' '.$listtype.'[_1]',$secdisplay);
         }
     }
     undef($fullroster);
 
     if (!$displaycount) {
-        $Str .= &mt('There are currently no students to display.');
+        $Str .= &mt('There are currently no '.$plural.' to display.');
         return $Str;
     }
 
@@ -347,7 +375,7 @@
     $Str .= '<br />'.&Apache::loncommon::start_data_table()."\n".
             &Apache::loncommon::start_data_table_header_row()."\n".
         '<th></th>'. # for the count
-        '<th>'.&mt('Student').'</th>'.
+        '<th>'.&mt('Name').'</th>'.
         '<th>'.&mt('Username').'</th>';
     if (! $viewsettings->{'limit_to_section'}) {
         $Str .= '<th>'.&mt('Section').'</th>';


More information about the LON-CAPA-cvs mailing list