version 1.169, 2007/08/10 23:00:13
|
version 1.170, 2007/08/10 23:01:51
|
Line 1537 END
|
Line 1537 END
|
if ($key=~/^form\.rev/) { |
if ($key=~/^form\.rev/) { |
if ($key=~/^form\.rev\:([^\_]+)\_([^\_\.]+)$/) { |
if ($key=~/^form\.rev\:([^\_]+)\_([^\_\.]+)$/) { |
# Revoke standard role |
# Revoke standard role |
$r->print(&mt('Revoking').' '.$2.' in '.$1.': <b>'. |
my ($scope,$role) = ($1,$2); |
&Apache::lonnet::revokerole($env{'form.ccdomain'}, |
my $result = |
$env{'form.ccuname'},$1,$2).'</b><br />'); |
&Apache::lonnet::revokerole($env{'form.ccdomain'}, |
if ($2 eq 'st') { |
$env{'form.ccuname'}, |
$1=~m{^/($match_domain)/($match_courseid)}; |
$scope,$role); |
my $cid=$1.'_'.$2; |
$r->print(&mt('Revoking [_1] in [_2]: [_3]', |
my $user = $env{'form.ccuname'}.':'.$env{'form.ccdomain'}; |
$role,$scope,'<b>'.$result.'</b>').'<br />'); |
my $result = |
if ($role eq 'st') { |
&Apache::lonnet::cput('classlist', |
my $result = &classlist_drop($scope,$env{'form.ccuname'}, |
{ $user => $now }, |
$env{'form.ccdomain'},$now); |
$env{'course.'.$cid.'.domain'}, |
$r->print($result); |
$env{'course.'.$cid.'.num'}); |
|
$r->print(&mt('Drop from classlist: [_1]', |
|
'<b>'.$result.'</b>').'<br />'); |
|
} |
} |
} |
} |
if ($key=~m{^form\.rev\:([^_]+)_cr\.cr/($match_domain)/($match_username)/(\w+)$}) { |
if ($key=~m{^form\.rev\:([^_]+)_cr\.cr/($match_domain)/($match_username)/(\w+)$ }s) { |
# Revoke custom role |
# Revoke custom role |
$r->print(&mt('Revoking custom role:'). |
$r->print(&mt('Revoking custom role:'). |
' '.$4.' by '.$3.':'.$2.' in '.$1.': <b>'. |
' '.$4.' by '.$3.':'.$2.' in '.$1.': <b>'. |
Line 1564 END
|
Line 1561 END
|
} elsif ($key=~/^form\.del/) { |
} elsif ($key=~/^form\.del/) { |
if ($key=~/^form\.del\:([^\_]+)\_([^\_\.]+)$/) { |
if ($key=~/^form\.del\:([^\_]+)\_([^\_\.]+)$/) { |
# Delete standard role |
# Delete standard role |
$r->print(&mt('Deleting').' '.$2.' in '.$1.': '. |
my ($scope,$role) = ($1,$2); |
&Apache::lonnet::assignrole($env{'form.ccdomain'}, |
my $result = |
$env{'form.ccuname'},$1,$2,$now,0,1).'<br />'); |
&Apache::lonnet::assignrole($env{'form.ccdomain'}, |
if ($2 eq 'st') { |
$env{'form.ccuname'}, |
$1=~m{^/($match_domain)/($match_courseid)}; |
$scope,$role,$now,0,1); |
my $cid=$1.'_'.$2; |
$r->print(&mt('Deleting [_1] in [_2]: [_3]',$role,$scope, |
my $user = $env{'form.ccuname'}.':'.$env{'form.ccdomain'}; |
'<b>'.$result.'</b>').'<br />'); |
my $result = |
if ($role eq 'st') { |
&Apache::lonnet::cput('classlist', |
my $result = &classlist_drop($scope,$env{'form.ccuname'}, |
{ $user => $now }, |
$env{'form.ccdomain'},$now); |
$env{'course.'.$cid.'.domain'}, |
$r->print($result); |
$env{'course.'.$cid.'.num'}); |
|
$r->print(&mt('Drop from classlist: [_1]', |
|
'<b>'.$result.'</b>').'<br />'); |
|
} |
} |
} |
} |
if ($key=~m{^form\.del\:([^_]+)_cr\.cr/($match_domain)/($match_username)/(\w+)$}) { |
if ($key=~m{^form\.del\:([^_]+)_cr\.cr/($match_domain)/($match_username)/(\w+)$}) { |
my ($url,$rdom,$rnam,$rolename) = ($1,$2,$3,$4); |
my ($url,$rdom,$rnam,$rolename) = ($1,$2,$3,$4); |
# Delete custom role |
# Delete custom role |
$r->print(&mt('Deleting custom role [_1] by [_2]@[_3] in [_4]', |
$r->print(&mt('Deleting custom role [_1] by [_2]:[_3] in [_4]', |
$rolename,$rnam,$rdom,$url).': <b>'. |
$rolename,$rnam,$rdom,$url).': <b>'. |
&Apache::lonnet::assigncustomrole($env{'form.ccdomain'}, |
&Apache::lonnet::assigncustomrole($env{'form.ccdomain'}, |
$env{'form.ccuname'},$url,$rdom,$rnam,$rolename,$now, |
$env{'form.ccuname'},$url,$rdom,$rnam,$rolename,$now, |
Line 1760 END
|
Line 1754 END
|
$r->print(&Apache::loncommon::end_page()); |
$r->print(&Apache::loncommon::end_page()); |
} |
} |
|
|
|
sub classlist_drop { |
|
my ($scope,$uname,$udom,$now) = @_; |
|
my ($cdom,$cnum) = ($scope=~m{^/($match_domain)/($match_courseid)}); |
|
my $cid=$cdom.'_'.$cnum; |
|
my $user = $uname.':'.$udom; |
|
if (!&active_student_roles($cnum,$cdom,$uname,$udom)) { |
|
my $result = |
|
&Apache::lonnet::cput('classlist', |
|
{ $user => $now }, |
|
$env{'course.'.$cid.'.domain'}, |
|
$env{'course.'.$cid.'.num'}); |
|
return &mt('Drop from classlist: [_1]', |
|
'<b>'.$result.'</b>').'<br />'; |
|
} |
|
} |
|
|
|
sub active_student_role { |
|
my ($cnum,$cdom,$uname,$udom) = @_; |
|
my %roles = |
|
&Apache::lonnet::get_my_roles($uname,$udom,'userroles', |
|
['future','active'],['st']); |
|
return exists($roles{"$cnum:$cdom:st"}); |
|
} |
|
|
sub quota_admin { |
sub quota_admin { |
my ($setquota,$changeHash) = @_; |
my ($setquota,$changeHash) = @_; |
my $quotachanged; |
my $quotachanged; |