--- loncom/interface/lonuserutils.pm 2009/08/03 15:57:25 1.95 +++ loncom/interface/lonuserutils.pm 2009/09/07 13:49:49 1.97.2.2 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Utility functions for managing LON-CAPA user accounts # -# $Id: lonuserutils.pm,v 1.95 2009/08/03 15:57:25 bisitz Exp $ +# $Id: lonuserutils.pm,v 1.97.2.2 2009/09/07 13:49:49 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -347,10 +347,13 @@ sub print_upload_manager_header { &mt('Ignore First Line').'
'); $r->print('
'); + 'onclick="javascript:this.form.associate.value=\'Reverse Association\';submit(this.form);" />'); $r->print("

\n". ''); + '// '."\n". + ''); } ############################################################### @@ -785,23 +788,21 @@ sub print_upload_manager_footer { &Apache::loncommon::help_open_topic('Auth_Options'). "

\n"; } - $Str .= &set_login($defdom,$krbform,$intform,$locform) - .&Apache::lonhtmlcommon::row_closure(); + $Str .= &set_login($defdom,$krbform,$intform,$locform); my ($home_server_pick,$numlib) = &Apache::loncommon::home_server_form_item($defdom,'lcserver', 'default','hide'); -#FIXME: Broken?!? $home_server_pick returns empty value on prod (2.8.1) and on dev server. SB 2009-08-03 if ($numlib > 1) { - $Str .= &Apache::lonhtmlcommon::row_title( + $Str .= &Apache::lonhtmlcommon::row_closure() + .&Apache::lonhtmlcommon::row_title( &mt('LON-CAPA Home Server for New Users')) .&mt('LON-CAPA domain: [_1] with home server:','"'.$defdom.'"') .$home_server_pick .&Apache::lonhtmlcommon::row_closure(); } else { - $Str .= &Apache::lonhtmlcommon::row_title(&mt('Home Server')) - .$home_server_pick - .&Apache::lonhtmlcommon::row_closure(); + $Str .= $home_server_pick. + &Apache::lonhtmlcommon::row_closure(); } $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default domain')) @@ -886,8 +887,8 @@ sub print_upload_manager_footer { .'

'; } $Str .= '

' + .' onclick="javascript:verify(this.form,this.form.csec)"' + .' value="'.&mt('Update Users').'" />' .'

'."\n" .''; $r->print($Str); @@ -1182,7 +1183,7 @@ sub default_role_selector { ''.$lt{'grs'}.''. &Apache::loncommon::end_data_table_header_row(). &Apache::loncommon::start_data_table_row()."\n". - ''."\n". + ''."\n". ''. @@ -1375,9 +1376,9 @@ sub print_userlist { 'html' => 'HTML'); my $output_selector = ' @@ -2151,6 +2167,7 @@ END 'aboutme' => "Display a user's personal information page", 'owin' => "Open in a new window", 'modify' => "Modify a user's information", + 'track' => "View a user's recent activity", 'clicker' => "Clicker-ID", ); if ($context eq 'domain' && $env{'form.roletype'} eq 'course') { @@ -2213,7 +2230,7 @@ END END if ($actionselect) { $output .= <<"END"; -
$lt{'ac'} +
$lt{'ac'} $actionselect

 
@@ -2258,12 +2275,17 @@ END } } } - $output .= '
'.$lt{'link'}.''. + $output .= '
'.$lt{'link'}.''. ''; my @linkdests = ('aboutme'); if ($permission->{'cusr'}) { unshift (@linkdests,'modify'); } + if (&Apache::lonnet::allowed('vsa', $env{'request.course.id'}) || + &Apache::lonnet::allowed('vsa', $env{'request.course.id'}.'/'. + $env{'request.course.sec'})) { + push(@linkdests,'track'); + } $output .= '
'; my $usernamelink = $env{'form.usernamelink'}; if ($usernamelink eq '') { @@ -2934,9 +2956,9 @@ sub date_section_javascript { delete => "Check the boxes for any users for whom roles are to be deleted, and click 'Proceed'", none => "Choose an action to take for selected users", ); - my $output = ' - ENDTWO return $output; @@ -2972,6 +2995,7 @@ sub date_section_selector { my $sec_js = &setsections_javascript($formname,$groupslist); my $output = <<"END"; ENDJS my %lt = &Apache::lonlocal::texthash ( @@ -3316,7 +3341,9 @@ sub show_drop_list {

@@ -4818,14 +4845,18 @@ sub roles_by_context { my ($context,$custom) = @_; my @allroles; if ($context eq 'course') { - @allroles = ('st','ad','ta','ep','in','cc'); + @allroles = ('st'); + if ($env{'request.role'} =~ m{^dc\./}) { + push(@allroles,'ad'); + } + push(@allroles,('ta','ep','in','cc')); if ($custom) { push(@allroles,'cr'); } } elsif ($context eq 'author') { @allroles = ('ca','aa'); } elsif ($context eq 'domain') { - @allroles = ('li','dg','sc','au','dc'); + @allroles = ('li','ad','dg','sc','au','dc'); } return @allroles; }