--- loncom/auth/lonroles.pm 2011/10/25 15:15:02 1.263 +++ loncom/auth/lonroles.pm 2011/12/14 21:02:30 1.264 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # User Roles Screen # -# $Id: lonroles.pm,v 1.263 2011/10/25 15:15:02 www Exp $ +# $Id: lonroles.pm,v 1.264 2011/12/14 21:02:30 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -221,7 +221,7 @@ sub handler { } else { $checkingtxt = &mt('Checking for new roles ...'); } - $updateresult = '
'.$checkingtxt.'
'; + $updateresult = ''.$checkingtxt.''; $updateresult .= &update_session_roles(); &Apache::lonnet::appenv({'user.update.time' => $now}); $update = $now; @@ -781,7 +781,7 @@ ENDHEADER if ($env{'form.showall'}) { $showall .= ' checked="checked" '; } - $showall .= ' />'.&mt('Show all roles').''. + $showall .= ' />'.&mt('Show all roles').' '. ''; if ($do_update) { $r->print('
'. @@ -1871,7 +1871,7 @@ sub update_session_roles { ['active','future','previous'], undef,undef,1); my ($msg,@newsec,$oldsec,$currrole_expired,@changed_roles, - %changed_groups,%dbroles, %deletedroles,%allroles,%allgroups, + %changed_groups,%dbroles,%deletedroles,%allroles,%allgroups, %userroles,%checkedgroup,%crprivs,$hasgroups,%rolechange, %groupchange,%newrole,%newgroup,%customprivchg,%groups_roles, @rolecodes); @@ -2108,7 +2108,9 @@ sub update_session_roles { foreach my $priv (@privs) { my ($blank,@prv) = split(/:/,$priv); @prv = map { $_ .= (/\&\w+$/ ? '':'&F') } @prv; - $priv = ':'.join(':',sort(@prv)); + if (@prv) { + $priv = ':'.join(':',sort(@prv)); + } $crprivs{$rest}{$scopes[$i]} = $priv; $i++; } @@ -2212,21 +2214,30 @@ sub update_session_roles { $msg .= '
'.&mt('However you can continue to use this role until you logout, click the "Re-Select" button, or your session has been idle for more than 24 hours.').'
'; } if (!@changed_roles || !(keys(%changed_groups))) { - $msg .= ''; if (!@changed_roles && !(keys(%changed_groups))) { + if (($msg ne '') || ($groupsmsg ne '')) { + $msg .= ''; + } else { + $msg = ' '.$rolesmsg.'
'; + } return $msg; } }