--- loncom/interface/lonuserutils.pm 2013/05/03 16:29:34 1.152 +++ loncom/interface/lonuserutils.pm 2013/12/06 12:11:09 1.157 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Utility functions for managing LON-CAPA user accounts # -# $Id: lonuserutils.pm,v 1.152 2013/05/03 16:29:34 bisitz Exp $ +# $Id: lonuserutils.pm,v 1.157 2013/12/06 12:11:09 bisitz Exp $ # # Copyright Michigan State University Board of Trustees # @@ -642,7 +642,7 @@ sub upload_manager_javascript_forward_as $numbuttons ++; } if (!$can_assign->{'int'}) { - my $warning = &mt('You may not specify an initial password for each user, as this is only available when new users use LON-CAPA internal authentication.').'\n' + my $warning = &mt('You may not specify an initial password for each user, as this is only available when new users use LON-CAPA internal authentication.').'\n'. &mt('Your current role does not have rights to create users with that authentication type.'); $auth_update = <<"END"; // Currently the initial password field is only supported for internal auth @@ -1988,7 +1988,7 @@ sub get_cols_array { } if (($context eq 'course') && ($mode ne 'autoenroll') && ($env{'course.'.$env{'request.course.id'}.'.internal.showphoto'})) { - push(@cols,'photos'); + push(@cols,'photo'); } if ($context eq 'domain') { push (@cols,'extent'); @@ -2119,7 +2119,7 @@ sub get_column_names { if ($context eq 'domain' && $env{'form.roletype'} eq 'course') { $lt{'extent'} = &mt('course(s): description, section(s), status'); } elsif ($context eq 'domain' && $env{'form.roletype'} eq 'community') { - $lt{'extent'} = &mt('communities: description, section(s), status'); + $lt{'extent'} = &mt('community(s): description, section(s), status'); } elsif (($context eq 'author') || ($context eq 'domain' && $env{'form.roletype'} eq 'author')) { $lt{'extent'} = &mt('author'); @@ -2468,7 +2468,9 @@ sub show_users_list { if ($mode eq 'pickauthor') { @sortable = ('username','fullname','email','status'); } - if (!grep(/^\Q$sortby\E$/,@sortable)) { + my %is_sortable; + map { $is_sortable{$_} => 1; } @sortable; + unless ($is_sortable{$sortby}) { $sortby = 'username'; } my $setting = $env{'form.roletype'}; @@ -2712,7 +2714,13 @@ END } } foreach my $item (@cols) { - $output .= "$lt{$item}\n"; + $output .= ""; + if ($is_sortable{$item}) { + $output .= "$lt{$item}"; + } else { + $output .= $lt{$item}; + } + $output .= "\n"; } my %role_types = &role_type_names(); $output .= &Apache::loncommon::end_data_table_header_row(); @@ -4263,18 +4271,23 @@ sub upfile_drop_add { if ($entries{$fields{'username'}} =~ /\s/) { $nowhitespace = ' - '.&mt('usernames may not contain spaces.'); } - $r->print('
'. - &mt('[_1]: Unacceptable username for user [_2] [_3] [_4] [_5]', - ''.$entries{$fields{'username'}}.'',$fname,$mname,$lname,$gen). - $nowhitespace); + $r->print( + '
'. + &mt('Unacceptable username [_1] for user [_2] [_3] [_4] [_5]', + '"'.$entries{$fields{'username'}}.'"', + $fname,$mname,$lname,$gen). + $nowhitespace); next; } else { $entries{$fields{'domain'}} =~ s/^\s+|\s+$//g; if ($entries{$fields{'domain'}} ne &LONCAPA::clean_domain($entries{$fields{'domain'}})) { - $r->print('
'. ''.$entries{$fields{'domain'}}. - ': '.&mt('Unacceptable domain for user [_1] [_2] [_3] [_4]',$fname,$mname,$lname,$gen)); - next; + $r->print( + '
'. + &mt('Unacceptable domain [_1] for user [_2] [_3] [_4] [_5]', + '"'.$entries{$fields{'domain'}}.'"', + $fname,$mname,$lname,$gen)); + next; } my $username = $entries{$fields{'username'}}; my $userdomain = $entries{$fields{'domain'}}; @@ -4618,7 +4631,7 @@ sub upfile_drop_add { # Get current classlist my $classlist = &Apache::loncoursedata::get_classlist(); if (! defined($classlist)) { - $r->print('
'. + $r->print(''. ''. '

'.&mt('There are no students with current/future access to the course.').'

'. '
'."\n"); @@ -4741,7 +4754,7 @@ sub print_drop_menu { $heading = &mt("Drop Students"); } $r->print('

'.$heading.'

'."\n". - '
'."\n"); + ''."\n"); my $classlist = &Apache::loncoursedata::get_classlist(); if (! defined($classlist)) { my $msg = '';