--- loncom/auth/lonroles.pm 2008/12/04 08:53:04 1.211
+++ loncom/auth/lonroles.pm 2008/12/15 16:37:53 1.214
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# User Roles Screen
#
-# $Id: lonroles.pm,v 1.211 2008/12/04 08:53:04 tempelho Exp $
+# $Id: lonroles.pm,v 1.214 2008/12/15 16:37:53 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -535,8 +535,9 @@ ENDENTERKEY
$r->send_http_header;
return OK if $r->header_only;
+ my $brcrum =[{href=>"/admm/roles",text=>"User Roles"}];
my $swinfo=&Apache::lonmenu::rawconfig();
- my $start_page=&Apache::loncommon::start_page('User Roles');
+ my $start_page=&Apache::loncommon::start_page('User Roles',undef,{bread_crumbs=>$brcrum});
my $standby=&mt('Role selected. Please stand by.');
$standby=~s/\n/\\n/g;
my $noscript=''.&mt('Use of LON-CAPA requires Javascript to be enabled in your web browser.').'
'.&mt('As this is not the case, most functionality in the system will be unavailable.').'
';
@@ -651,13 +652,12 @@ ENDHEADER
my $roletext;
my $sortkey;
if ($envkey=~/^user\.role\./) {
- my ($role,$where,$trolecode,$tstart,$tend,$tremark,$tstatus,$tpstart,$tpend,$tfont);
+ my ($role,$where,$trolecode,$tstart,$tend,$tremark,$tstatus,$tpstart,$tpend);
&role_status($envkey,$then,$now,\$role,\$where,\$trolecode,\$tstatus,\$tstart,\$tend);
next if (!defined($role) || $role eq '' || $role =~ /^gr/);
$tremark='';
$tpstart=' ';
$tpend=' ';
- $tfont='#000000';
if ($tstart) {
$tpstart=&Apache::lonlocal::locallocaltime($tstart);
}
@@ -674,30 +674,27 @@ ENDHEADER
|| ($tstatus eq 'future')
|| ($env{'form.showall'})) {
if ($tstatus eq 'is') {
- $tbg='#77FF77';
- $tfont='#003300';
+ $tbg='LC_roles_is';
$possiblerole=$trolecode;
$countactive++;
} elsif ($tstatus eq 'future') {
- $tbg='#FFFF77';
+ $tbg='LC_roles_future';
$button=0;
$futureroles{$trolecode} = $tstart.':'.$tend;
$countfuture ++;
} elsif ($tstatus eq 'will') {
- $tbg='#FFAA77';
+ $tbg='LC_roles_will';
$tremark.=&mt('Active at next login.').' ';
$roles_nextlogin{$trolecode} = $tstart.':'.$tend;
$countwill ++;
} elsif ($tstatus eq 'expired') {
- $tbg='#FF7777';
- $tfont='#330000';
+ $tbg='LC_roles_expired';
$button=0;
} elsif ($tstatus eq 'will_not') {
- $tbg='#AAFF77';
+ $tbg='LC_roles_will_not';
$tremark.=&mt('Expired after logout.').' ';
} elsif ($tstatus eq 'selected') {
- $tbg='#11CC55';
- $tfont='#002200';
+ $tbg='LC_roles_selected';
$inrole=1;
$countactive++;
$tremark.=&mt('Currently selected.').' ';
@@ -760,7 +757,7 @@ ENDHEADER
$sortkey=$role."\0".$tdom."\0".$twhere."\0".$envkey;
unless ($twhere eq &mt('Currently not available')) {
$twhere.=' '.
- &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$trest,$tdom,$tfont).
+ &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$trest,$tdom).
'';
}
} else {
@@ -770,7 +767,7 @@ ENDHEADER
"\0".$envkey;
$twhere=$newhash{'description'}.
' '.
- &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$trest,$tdom,$tfont).
+ &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$trest,$tdom).
'';
$ttype = $newhash{'type'};
$trole = &Apache::lonnet::plaintext($role,$ttype);
@@ -794,7 +791,7 @@ ENDHEADER
$twhere=&mt('system wide');
$sortkey=$role.$twhere;
}
- $roletext.=&build_roletext($trolecode,$tdom,$trest,$tstatus,$tryagain,$advanced,$tremark,$tbg,$tfont,$trole,$twhere,$tpstart,$tpend,$nochoose,$button,$switchserver,$reinit);
+ $roletext.=&build_roletext($trolecode,$tdom,$trest,$tstatus,$tryagain,$advanced,$tremark,$tbg,$trole,$twhere,$tpstart,$tpend,$nochoose,$button,$switchserver,$reinit);
$roletext{$envkey}=$roletext;
if (!$sortkey) {$sortkey=$twhere."\0".$envkey;}
$sortrole{$sortkey}=$envkey;
@@ -804,9 +801,9 @@ ENDHEADER
}
if ($env{'user.adv'}) {
$r->print(
- '
');
+ $r->print(' />
');
} else {
if ($countactive > 0) {
my $domdesc = &Apache::lonnet::domain($env{'user.domain'},'description');
@@ -831,19 +828,23 @@ ENDHEADER
&print_rolerows($r,$doheaders,\%roleclass,\%sortrole,\%dcroles,
\%roletext);
my $tremark='';
- my $tfont='#003300';
+ my $tbg;
if ($env{'request.role'} eq 'cm') {
- $r->print('');
+ $tbg="LC_roles_selected";
$tremark=&mt('Currently selected.').' ';
- $tfont='#002200';
} else {
- $r->print('
');
+ $tbg="LC_roles_is";
}
- $r->print(' | '.&mt('No role specified').
- ' | '.$tremark.
- ' |
'."\n");
+ $r->print(&Apache::loncommon::start_data_table_row()
+ .' | '
+ .''
+ .&mt('No role specified')
+ .' | '
+ .''.$tremark.' | '
+ .&Apache::loncommon::end_data_table_row()
+ );
- $r->print('');
+ $r->print(&Apache::loncommon::end_data_table());
}
$r->print(&Apache::loncommon::end_page());
return OK;
@@ -871,8 +872,12 @@ ENDHEADER
}
}
if ($output) {
- $r->print("".
- &mt('Recent Roles')." |
");
+ $r->print(&Apache::loncommon::start_data_table_empty_row()
+ .''
+ .&mt('Recent Roles')
+ .' | '
+ .&Apache::loncommon::end_data_table_empty_row()
+ );
$r->print($output);
$doheaders ++;
}
@@ -886,33 +891,36 @@ ENDHEADER
&print_rolerows($r,$doheaders,\%roleclass,\%sortrole,\%dcroles,\%roletext);
if ($countactive > 1) {
my $tremark='';
- my $tfont='#003300';
+ my $tbg;
if ($env{'request.role'} eq 'cm') {
- $r->print('');
+ $tbg="LC_roles_selected";
$tremark=&mt('Currently selected.').' ';
- $tfont='#002200';
} else {
- $r->print('
');
+ $tbg="LC_roles_is";
}
+ $r->print(&Apache::loncommon::start_data_table_row());
unless ($nochoose) {
if ($env{'request.role'} ne 'cm') {
- $r->print(' | ');
} else {
- $r->print(' | ');
+ $r->print(' | ');
}
}
- $r->print(''.&mt('No role specified').
- ' | '.$tremark.
- ' |
'."\n");
+ $r->print(''
+ .&mt('No role specified')
+ .' | '
+ .''.$tremark.' | '
+ .&Apache::loncommon::end_data_table_row()
+ );
}
- $r->print('');
+ $r->print(&Apache::loncommon::end_data_table());
unless ($nochoose) {
$r->print("\n");
}
# ------------------------------------------------------------ Privileges Info
if (($advanced) && (($env{'user.error.msg'}) || ($error))) {
- $r->print('
Current Privileges
');
+ $r->print('
'.&mt('Current Privileges').'
');
$r->print(&privileges_info());
}
$r->print(&Apache::lonnet::getannounce());
@@ -934,11 +942,17 @@ sub roletable_headers {
my ($r,$roleclass,$sortrole,$nochoose) = @_;
my $doheaders;
if ((ref($sortrole) eq 'HASH') && (ref($roleclass) eq 'HASH')) {
- $r->print('