version 1.21, 2001/11/16 07:00:53
|
version 1.24, 2002/02/08 19:40:42
|
Line 1
|
Line 1
|
# The LearningOnline Network with CAPA |
# The LearningOnline Network with CAPA |
# Create a user |
# Create a user |
# |
# |
|
# $Id$ |
|
# |
|
# Copyright Michigan State University Board of Trustees |
|
# |
|
# This file is part of the LearningOnline Network with CAPA (LON-CAPA). |
|
# |
|
# LON-CAPA is free software; you can redistribute it and/or modify |
|
# it under the terms of the GNU General Public License as published by |
|
# the Free Software Foundation; either version 2 of the License, or |
|
# (at your option) any later version. |
|
# |
|
# LON-CAPA is distributed in the hope that it will be useful, |
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
# GNU General Public License for more details. |
|
# |
|
# You should have received a copy of the GNU General Public License |
|
# along with LON-CAPA; if not, write to the Free Software |
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
# |
|
# /home/httpd/html/adm/gpl.txt |
|
# |
|
# http://www.lon-capa.org/ |
|
# |
# (Create a course |
# (Create a course |
# (My Desk |
# (My Desk |
# |
# |
Line 39 my $authformint;
|
Line 63 my $authformint;
|
my $authformfsys; |
my $authformfsys; |
my $authformloc; |
my $authformloc; |
|
|
sub BEGIN { |
BEGIN { |
$ENV{'SERVER_NAME'}=~/(\w+\.\w+)$/; |
$ENV{'SERVER_NAME'}=~/(\w+\.\w+)$/; |
my $krbdefdom=$1; |
my $krbdefdom=$1; |
$krbdefdom=~tr/a-z/A-Z/; |
$krbdefdom=~tr/a-z/A-Z/; |
Line 242 ENDENHEAD
|
Line 266 ENDENHEAD
|
my $uhome=&Apache::lonnet::homeserver($ccuname,$ccdomain); |
my $uhome=&Apache::lonnet::homeserver($ccuname,$ccdomain); |
my %incdomains; |
my %incdomains; |
my %inccourses; |
my %inccourses; |
map { |
foreach (%Apache::lonnet::hostdom) { |
$incdomains{$_}=1; |
$incdomains{$_}=1; |
} values %Apache::lonnet::hostdom; |
} |
map { |
foreach (keys(%ENV)) { |
if ($_=~/^user\.priv\.cm\.\/(\w+)\/(\w+)/) { |
if ($_=~/^user\.priv\.cm\.\/(\w+)\/(\w+)/) { |
$inccourses{$1.'_'.$2}=1; |
$inccourses{$1.'_'.$2}=1; |
} |
} |
} %ENV; |
} |
if ($uhome eq 'no_host') { |
if ($uhome eq 'no_host') { |
$r->print(<<ENDNUSER); |
$r->print(<<ENDNUSER); |
<h2>New user $ccuname at $ccdomain</h2> |
<h2>New user $ccuname at $ccdomain</h2> |
Line 282 ENDNUSER
|
Line 306 ENDNUSER
|
$r->print('<h4>Revoke Existing Roles</h4>'. |
$r->print('<h4>Revoke Existing Roles</h4>'. |
'<table border=2><tr><th>Revoke</th><th>Role</th><th>Extent</th>'. |
'<table border=2><tr><th>Revoke</th><th>Role</th><th>Extent</th>'. |
'<th>Start</th><th>End</th>'); |
'<th>Start</th><th>End</th>'); |
map { |
foreach (split(/&/,$rolesdump)) { |
if ($_!~/^rolesdef\&/) { |
if ($_!~/^rolesdef\&/) { |
|
|
my ($area,$role)=split(/=/,$_); |
my ($area,$role)=split(/=/,$_); |
Line 336 ENDNUSER
|
Line 360 ENDNUSER
|
($tstart?localtime($tstart):' ').'</td><td>'. |
($tstart?localtime($tstart):' ').'</td><td>'. |
($tend?localtime($tend):' ')."</td></tr>\n"); |
($tend?localtime($tend):' ')."</td></tr>\n"); |
} |
} |
} split(/&/,$rolesdump); |
} |
$r->print('</table>'); |
$r->print('</table>'); |
} |
} |
my $currentauth=&Apache::lonnet::queryauthenticate($ccuname,$ccdomain); |
my $currentauth=&Apache::lonnet::queryauthenticate($ccuname,$ccdomain); |
Line 464 ENDCOAUTH
|
Line 488 ENDCOAUTH
|
$r->print('<h4>Domain Level</h4>'. |
$r->print('<h4>Domain Level</h4>'. |
'<table border=2><tr><th>Activate</th><th>Role</th><th>Extent</th>'. |
'<table border=2><tr><th>Activate</th><th>Role</th><th>Extent</th>'. |
'<th>Start</th><th>End</th></tr>'); |
'<th>Start</th><th>End</th></tr>'); |
map { |
foreach ( sort( keys(%incdomains))) { |
my $thisdomain=$_; |
my $thisdomain=$_; |
map { |
foreach ('dc','li','dg','au') { |
if (&Apache::lonnet::allowed('c'.$_,$thisdomain)) { |
if (&Apache::lonnet::allowed('c'.$_,$thisdomain)) { |
my $plrole=&Apache::lonnet::plaintext($_); |
my $plrole=&Apache::lonnet::plaintext($_); |
$r->print(<<ENDDROW); |
$r->print(<<ENDDROW); |
Line 483 ENDCOAUTH
|
Line 507 ENDCOAUTH
|
</tr> |
</tr> |
ENDDROW |
ENDDROW |
} |
} |
} ('dc','li','dg','au'); |
} |
} sort keys %incdomains; |
} |
$r->print('</table>'); |
$r->print('</table>'); |
# |
# |
# Course level |
# Course level |
Line 492 ENDDROW
|
Line 516 ENDDROW
|
$r->print('<h4>Course Level</h4>'. |
$r->print('<h4>Course Level</h4>'. |
'<table border=2><tr><th>Activate</th><th>Role</th><th>Extent</th>'. |
'<table border=2><tr><th>Activate</th><th>Role</th><th>Extent</th>'. |
'<th>Group/Section</th><th>Start</th><th>End</th></tr>'); |
'<th>Group/Section</th><th>Start</th><th>End</th></tr>'); |
map { |
foreach (sort( keys(%inccourses))) { |
my $thiscourse=$_; |
my $thiscourse=$_; |
my $protectedcourse=$_; |
my $protectedcourse=$_; |
$thiscourse=~s:_:/:g; |
$thiscourse=~s:_:/:g; |
Line 501 ENDDROW
|
Line 525 ENDDROW
|
my $bgcol=$thiscourse; |
my $bgcol=$thiscourse; |
$bgcol=~s/[^8-9b-e]//g; |
$bgcol=~s/[^8-9b-e]//g; |
$bgcol=substr($bgcol.$bgcol.$bgcol.'ffffff',0,6); |
$bgcol=substr($bgcol.$bgcol.$bgcol.'ffffff',0,6); |
map { |
foreach ('st','ta','ep','ad','in','cc') { |
if (&Apache::lonnet::allowed('c'.$_,$thiscourse)) { |
if (&Apache::lonnet::allowed('c'.$_,$thiscourse)) { |
my $plrole=&Apache::lonnet::plaintext($_); |
my $plrole=&Apache::lonnet::plaintext($_); |
$r->print(" |
$r->print(" |
Line 523 ENDDROW
|
Line 547 ENDDROW
|
</tr> |
</tr> |
ENDROW |
ENDROW |
} |
} |
} ('st','ta','ep','ad','in','cc'); |
} |
} sort keys %inccourses; |
} |
$r->print('</table>'); |
$r->print('</table>'); |
$r->print('<input type=submit value="Modify User">'); |
$r->print('<input type=submit value="Modify User">'); |
$r->print('</form></body></html>'); |
$r->print('</form></body></html>'); |
Line 617 ENDTHREEHEAD
|
Line 641 ENDTHREEHEAD
|
} |
} |
my $now=time; |
my $now=time; |
$r->print('<h3>Modifying Roles</h3>'); |
$r->print('<h3>Modifying Roles</h3>'); |
map { |
foreach (keys (%ENV)) { |
if (($_=~/^form\.rev\:([^\_]+)\_([^\_]+)$/) && ($ENV{$_})) { |
if (($_=~/^form\.rev\:([^\_]+)\_([^\_]+)$/) && ($ENV{$_})) { |
$r->print('Revoking '.$2.' in '.$1.': '. |
$r->print('Revoking '.$2.' in '.$1.': '. |
&Apache::lonnet::assignrole($ENV{'form.cdomain'},$ENV{'form.cuname'}, |
&Apache::lonnet::assignrole($ENV{'form.cdomain'},$ENV{'form.cuname'}, |
Line 634 ENDTHREEHEAD
|
Line 658 ENDTHREEHEAD
|
$ENV{'course.'.$cid.'.home'}).'<br>'); |
$ENV{'course.'.$cid.'.home'}).'<br>'); |
} |
} |
} |
} |
} keys %ENV; |
} |
map { |
foreach (keys(%ENV)) { |
if (($_=~/^form\.act\_([^\_]+)\_([^\_]+)\_([^\_]+)$/) && ($ENV{$_})) { |
if (($_=~/^form\.act\_([^\_]+)\_([^\_]+)\_([^\_]+)$/) && ($ENV{$_})) { |
my $url='/'.$1.'/'.$2; |
my $url='/'.$1.'/'.$2; |
if ($ENV{'form.sec_'.$1.'_'.$2.'_'.$3}) { |
if ($ENV{'form.sec_'.$1.'_'.$2.'_'.$3}) { |
Line 677 ENDTHREEHEAD
|
Line 701 ENDTHREEHEAD
|
&Apache::lonnet::assignrole($ENV{'form.cdomain'},$ENV{'form.cuname'}, |
&Apache::lonnet::assignrole($ENV{'form.cdomain'},$ENV{'form.cuname'}, |
$url,$2,$end,$start).'<br>'); |
$url,$2,$end,$start).'<br>'); |
} |
} |
} keys %ENV; |
} |
$r->print('</body></html>'); |
$r->print('</body></html>'); |
} |
} |
|
|