--- loncom/auth/lonroles.pm 2006/07/14 17:05:02 1.163 +++ loncom/auth/lonroles.pm 2006/12/14 20:49:23 1.174 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # User Roles Screen # -# $Id: lonroles.pm,v 1.163 2006/07/14 17:05:02 www Exp $ +# $Id: lonroles.pm,v 1.174 2006/12/14 20:49:23 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -40,8 +40,9 @@ use Apache::lonhtmlcommon; use Apache::lonannounce; use Apache::lonlocal; use Apache::lonpageflip(); +use Apache::lonnavdisplay(); use GDBM_File; -use LONCAPA; +use LONCAPA qw(:DEFAULT :match); sub redirect_user { @@ -53,8 +54,8 @@ sub redirect_user { my $swinfo=&Apache::lonmenu::rawconfig(); my $navwindow; if ($launch_nav eq 'on') { - $navwindow.=&Apache::lonnavmaps::launch_win('now',undef,undef, - ($url =~ m-^/adm/whatsnew-)); + $navwindow.=&Apache::lonnavdisplay::launch_win('now',undef,undef, + ($url =~ m-^/adm/whatsnew-)); } else { $navwindow.=&Apache::lonnavmaps::close(); } @@ -125,7 +126,7 @@ sub handler { if ($numdc > 0) { foreach my $envkey (keys %env) { if (my ($domain,$coursenum) = - ($envkey =~ m-^form\.cc\./(\w+)/(\w+)$-)) { + ($envkey =~ m-^form\.cc\./($match_domain)/($match_courseid)$-)) { if ($dcroles{$domain}) { &check_privs($domain,$coursenum,$then,$now); } @@ -164,7 +165,7 @@ sub handler { my $authnum=$cnum; if ($env{'course.'.$cdom.'_'.$cnum.'.keyauth'}) { ($authnum,$authdom)= - split(/\W/,$env{'course.'.$cdom.'_'.$cnum.'.keyauth'}); + split(/:/,$env{'course.'.$cdom.'_'.$cnum.'.keyauth'}); } # check with key authority unless (&Apache::lonnet::validate_access_key( @@ -312,7 +313,7 @@ ENDENTERKEY } } # Are we allowed to look at the first resource? - if (!&Apache::lonnet::allowed('bre',$furl)) { + if ($furl !~ m|^/adm/|) { # Guess not ... $furl=&Apache::lonpageflip::first_accessible_resource(); } @@ -406,10 +407,17 @@ ENDHEADER # --------------------------------------------------------------- Error Header? if ($error) { $r->print("
Access : ". - Apache::lonnet::plaintext($priv)."\n"); - $r->print("Resource: ".&Apache::lonenc::check_encrypt($fn)."\n"); - $r->print("Action : $msg\n
"); + if ($priv ne '') { + $r->print("Access : ".&Apache::lonnet::plaintext($priv)."\n"); + } + if ($fn ne '') { + $r->print("Resource: ".&Apache::lonenc::check_encrypt($fn)."\n"); + } + if ($msg ne '') { + $r->print("Action : $msg\n"); + } + $r->print("
'); } $r->print(' | '.&mt('User Role').' | '.&mt('Extent'). ' | '.&mt('Start').' | '.&mt('End').' | '.&mt('Switch Server').' | '; } else { - $roletext.=(''); + $roletext.=(' | '); } } elsif ($tstatus eq 'is') { $roletext.=' | '.$trole. ' | '.$twhere. ' | '.$tpstart.
@@ -885,7 +898,7 @@ sub check_fordc {
my $numdc = 0;
if ($env{'user.adv'}) {
foreach my $envkey (sort keys %env) {
- if ($envkey=~/^user\.role\.dc\.\/(\w+)\/$/) {
+ if ($envkey=~/^user\.role\.dc\.\/($match_domain)\/$/) {
my $dcdom = $1;
my $livedc = 1;
my ($tstart,$tend)=split(/\./,$env{$envkey});
@@ -906,7 +919,7 @@ sub courselink {
my $courseform=&Apache::loncommon::selectcourse_link
('rolechoice','dccourse'.$rowtype.'_'.$dcdom,
'dcdomain'.$rowtype.'_'.$dcdom,'coursedesc'.$rowtype.'_'.
- $dcdom,$dcdom,undef,$selecttype);
+ $dcdom,$dcdom,undef);
my $hiddenitems = ''.
''.
''.
@@ -982,7 +995,7 @@ sub display_cc_role {
my $advanced = $env{'user.adv'};
my $tryagain = $env{'form.tryagain'};
unless ($rolekey =~/^error\:/) {
- if ($rolekey =~ m-^user\.role.cc\./(\w+)/(\w+)$-) {
+ if ($rolekey =~ m-^user\.role.cc\./($match_domain)/($match_courseid)$-) {
my $tcourseid = $1.'_'.$2;
my $trolecode = 'cc./'.$1.'/'.$2;
my $twhere;
@@ -1012,13 +1025,11 @@ sub allcourses_row {
my ($dcdom,$rowtype) = @_;
my $output = '';
- foreach my $type ('Course','Group') {
- my $selectlink = &courselink($dcdom,$rowtype,$type);
- my $ccrole = &Apache::lonnet::plaintext('cc',$type);
- $output.= ''.$ccrole.''.
+ my $selectlink = &courselink($dcdom,$rowtype);
+ my $ccrole = &Apache::lonnet::plaintext('cc');
+ $output.= ''.$ccrole.''.
' '.$selectlink.''.
' from '.&mt('Domain').' '.$dcdom.' | '; - } $output .= ' |
---|