--- loncom/auth/lonroles.pm 2004/11/12 15:33:32 1.108
+++ loncom/auth/lonroles.pm 2004/12/03 05:34:04 1.114
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# User Roles Screen
#
-# $Id: lonroles.pm,v 1.108 2004/11/12 15:33:32 raeburn Exp $
+# $Id: lonroles.pm,v 1.114 2004/12/03 05:34:04 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -100,14 +100,13 @@ sub handler {
"request.role.adv" => $ENV{'user.adv'},
"request.role.domain" => $ENV{'user.domain'});
-# Check to see if the user is a DC trying to enter a course and needs privs to be created
+# Check if user is a DC trying to enter a course and needs privs to be created
if ($numdc > 0) {
foreach my $envkey (keys %ENV) {
if ($envkey =~ m-^form\.cc\./(\w+)/(\w+)$-) {
if ($dcroles{$1}) {
- unless ($ENV{'user.role.cc./'.$1.'/'.$2}) {
- &set_privileges($1,$2);
- }
+ my $cckey = 'user.role.cc./'.$1.'/'.$2;
+ &check_privs($cckey,$then,$now);
}
last;
}
@@ -122,6 +121,13 @@ sub handler {
if ($tstatus eq 'is') {
$where=~s/^\///;
my ($cdom,$cnum,$csec)=split(/\//,$where);
+# store role if recent_role list being kept
+ if ($ENV{'environment.recentroles'}) {
+ &Apache::lonhtmlcommon::store_recent('roles',
+ $trolecode,' ');
+ }
+
+
# check for keyed access
if (($role eq 'st') &&
($ENV{'course.'.$cdom.'_'.$cnum.'.keyaccess'} eq 'yes')) {
@@ -256,16 +262,6 @@ ENDENTERKEY
'.course.helper.not.run'}) {
$furl = "/adm/helper/course.initialization.helper";
}
- # Check to see if the user is a DC selecting a course
- if (($numdc > 0) && ($role eq 'cc')) {
- my $formaction = '/adm/roles/';
- my ($dcdom,$pickedcourse) = split/_/,$courseid;
- if ($ENV{'user.role.dc./'.$dcdom.'/'}) {
- &Apache::lonhtmlcommon::store_recent('recent_roles',
- $courseid,$formaction);
- }
- }
- #
# Send the user to the course they selected
&redirect_user($r,&mt('Entering Course'),
$furl,$msg,
@@ -543,41 +539,7 @@ ENDHEADER
$sortkey=$role.$twhere;
}
- $roletext.='
';
- unless ($nochoose) {
- if (!$button) {
- if ($switchserver) {
- $roletext.='