version 1.53, 2003/05/10 23:06:52
|
version 1.57, 2003/07/17 18:10:53
|
Line 54 package Apache::loncreateuser;
|
Line 54 package Apache::loncreateuser;
|
use strict; |
use strict; |
use Apache::Constants qw(:common :http); |
use Apache::Constants qw(:common :http); |
use Apache::lonnet; |
use Apache::lonnet; |
|
use Apache::loncommon; |
|
|
my $loginscript; # piece of javascript used in two separate instances |
my $loginscript; # piece of javascript used in two separate instances |
my $generalrule; |
my $generalrule; |
Line 285 END
|
Line 286 END
|
my $allowed=0; |
my $allowed=0; |
my $delallowed=0; |
my $delallowed=0; |
if ($area =~ /^\/(\w+)\/(\d\w+)/ ) { |
if ($area =~ /^\/(\w+)\/(\d\w+)/ ) { |
|
my ($coursedom,$coursedir) = ($1,$2); |
|
# $1.'_'.$2 is the course id (eg. 103_12345abcef103l3). |
my %coursedata= |
my %coursedata= |
&Apache::lonnet::coursedescription($1.'_'.$2); |
&Apache::lonnet::coursedescription($1.'_'.$2); |
my $carea; |
my $carea; |
if (defined($coursedata{'description'})) { |
if (defined($coursedata{'description'})) { |
$carea='Course: '.$coursedata{'description'}. |
$carea='Course: '.$coursedata{'description'}. |
'<br />Domain: '.$1; |
'<br />Domain: '.$coursedom.(' 'x8). |
|
&Apache::loncommon::syllabuswrapper('Syllabus',$coursedir,$coursedom); |
} else { |
} else { |
$carea='Unavailable course: '.$area; |
$carea='Unavailable course: '.$area; |
} |
} |
Line 344 END
|
Line 348 END
|
if (($active) && ($allowed)) { |
if (($active) && ($allowed)) { |
$row.= '<input type="checkbox" name="rev:'.$thisrole.'">'; |
$row.= '<input type="checkbox" name="rev:'.$thisrole.'">'; |
} else { |
} else { |
$row.=' '; |
if ($active) { |
|
$row.=' '; |
|
} else { |
|
$row.='expired or revoked'; |
|
} |
} |
} |
$row.='</td><td>'; |
$row.='</td><td>'; |
if ($delallowed) { |
if ($delallowed) { |
Line 723 END
|
Line 731 END
|
# Revoke roles |
# Revoke roles |
if ($_=~/^form\.rev/) { |
if ($_=~/^form\.rev/) { |
if ($_=~/^form\.rev\:([^\_]+)\_([^\_]+)$/) { |
if ($_=~/^form\.rev\:([^\_]+)\_([^\_]+)$/) { |
$r->print('Revoking '.$2.' in '.$1.': '. |
$r->print('Revoking '.$2.' in '.$1.': <b>'. |
&Apache::lonnet::assignrole($ENV{'form.ccdomain'}, |
&Apache::lonnet::assignrole($ENV{'form.ccdomain'}, |
$ENV{'form.ccuname'},$1,$2,$now).'<br>'); |
$ENV{'form.ccuname'},$1,$2,$now).'</b><br>'); |
if ($2 eq 'st') { |
if ($2 eq 'st') { |
$1=~/^\/(\w+)\/(\w+)/; |
$1=~/^\/(\w+)\/(\w+)/; |
my $cid=$1.'_'.$2; |
my $cid=$1.'_'.$2; |
$r->print('Drop from classlist: '. |
$r->print('Drop from classlist: <b>'. |
&Apache::lonnet::critical('put:'. |
&Apache::lonnet::critical('put:'. |
$ENV{'course.'.$cid.'.domain'}.':'. |
$ENV{'course.'.$cid.'.domain'}.':'. |
$ENV{'course.'.$cid.'.num'}.':classlist:'. |
$ENV{'course.'.$cid.'.num'}.':classlist:'. |
&Apache::lonnet::escape($ENV{'form.ccuname'}.':'. |
&Apache::lonnet::escape($ENV{'form.ccuname'}.':'. |
$ENV{'form.ccdomain'}).'='. |
$ENV{'form.ccdomain'}).'='. |
&Apache::lonnet::escape($now.':'), |
&Apache::lonnet::escape($now.':'), |
$ENV{'course.'.$cid.'.home'}).'<br>'); |
$ENV{'course.'.$cid.'.home'}).'</b><br>'); |
} |
} |
} |
} |
} elsif ($_=~/^form\.del/) { |
} elsif ($_=~/^form\.del/) { |
Line 747 END
|
Line 755 END
|
if ($2 eq 'st') { |
if ($2 eq 'st') { |
$1=~/^\/(\w+)\/(\w+)/; |
$1=~/^\/(\w+)\/(\w+)/; |
my $cid=$1.'_'.$2; |
my $cid=$1.'_'.$2; |
$r->print('Drop from classlist: '. |
$r->print('Drop from classlist: <b>'. |
&Apache::lonnet::critical('put:'. |
&Apache::lonnet::critical('put:'. |
$ENV{'course.'.$cid.'.domain'}.':'. |
$ENV{'course.'.$cid.'.domain'}.':'. |
$ENV{'course.'.$cid.'.num'}.':classlist:'. |
$ENV{'course.'.$cid.'.num'}.':classlist:'. |
&Apache::lonnet::escape($ENV{'form.ccuname'}.':'. |
&Apache::lonnet::escape($ENV{'form.ccuname'}.':'. |
$ENV{'form.ccdomain'}).'='. |
$ENV{'form.ccdomain'}).'='. |
&Apache::lonnet::escape($now.':'), |
&Apache::lonnet::escape($now.':'), |
$ENV{'course.'.$cid.'.home'}).'<br>'); |
$ENV{'course.'.$cid.'.home'}).'</b><br>'); |
} |
} |
} |
} |
} elsif ($_=~/^form\.act/) { |
} elsif ($_=~/^form\.act/) { |
if ($_=~/^form\.act\_([^\_]+)\_([^\_]+)\_([^\_]+)$/) { |
if ($_=~/^form\.act\_([^\_]+)\_([^\_]+)\_([^\_]+)$/) { |
# Activate roles for sections with 3 id numbers |
# Activate roles for sections with 3 id numbers |
# set start, end times, and the url for the class |
# set start, end times, and the url for the class |
my $start = ( $ENV{'form.start_'.$1.'_'.$2} ? |
|
$ENV{'form.start_'.$1.'_'.$2} : |
my $start = ( $ENV{'form.start_'.$1.'_'.$2.'_'.$3} ? |
|
$ENV{'form.start_'.$1.'_'.$2.'_'.$3} : |
$now ); |
$now ); |
my $end = ( $ENV{'form.end_'.$1.'_'.$2} ? |
my $end = ( $ENV{'form.end_'.$1.'_'.$2.'_'.$3} ? |
$ENV{'form.end_'.$1.'_'.$2} : |
$ENV{'form.end_'.$1.'_'.$2.'_'.$3} : |
0 ); |
0 ); |
my $url='/'.$1.'/'.$2; |
my $url='/'.$1.'/'.$2; |
if ($ENV{'form.sec_'.$1.'_'.$2.'_'.$3}) { |
if ($ENV{'form.sec_'.$1.'_'.$2.'_'.$3}) { |
$url.='/'.$ENV{'form.sec_'.$1.'_'.$2.'_'.$3}; |
$url.='/'.$ENV{'form.sec_'.$1.'_'.$2.'_'.$3}; |
} |
} |
# Assign the role and report it |
# Assign the role and report it |
$r->print('Assigning: '.$3.' in '.$url.': '. |
$r->print('Assigning: '.$3.' in '.$url. |
|
($start?', starting '.localtime($start):''). |
|
($end?', ending '.localtime($end):'').': <b>'. |
&Apache::lonnet::assignrole( |
&Apache::lonnet::assignrole( |
$ENV{'form.ccdomain'},$ENV{'form.ccuname'}, |
$ENV{'form.ccdomain'},$ENV{'form.ccuname'}, |
$url,$3,$end,$start). |
$url,$3,$end,$start). |
'<br>'); |
'</b><br>'); |
# Handle students differently |
# Handle students differently |
if ($3 eq 'st') { |
if ($3 eq 'st') { |
$url=~/^\/(\w+)\/(\w+)/; |
$url=~/^\/(\w+)\/(\w+)/; |
my $cid=$1.'_'.$2; |
my $cid=$1.'_'.$2; |
$r->print('Add to classlist: '. |
$r->print('Add to classlist: <b>'. |
&Apache::lonnet::critical( |
&Apache::lonnet::critical( |
'put:'.$ENV{'course.'.$cid.'.domain'}.':'. |
'put:'.$ENV{'course.'.$cid.'.domain'}.':'. |
$ENV{'course.'.$cid.'.num'}.':classlist:'. |
$ENV{'course.'.$cid.'.num'}.':classlist:'. |
Line 790 END
|
Line 801 END
|
$ENV{'form.ccdomain'} ).'='. |
$ENV{'form.ccdomain'} ).'='. |
&Apache::lonnet::escape($end.':'.$start), |
&Apache::lonnet::escape($end.':'.$start), |
$ENV{'course.'.$cid.'.home'}) |
$ENV{'course.'.$cid.'.home'}) |
.'<br>'); |
.'</b><br>'); |
} |
} |
} elsif ($_=~/^form\.act\_([^\_]+)\_([^\_]+)$/) { |
} elsif ($_=~/^form\.act\_([^\_]+)\_([^\_]+)$/) { |
# Activate roles for sections with two id numbers |
# Activate roles for sections with two id numbers |
Line 804 END
|
Line 815 END
|
my $url='/'.$1.'/'; |
my $url='/'.$1.'/'; |
# Assign the role and report it. |
# Assign the role and report it. |
$r->print('Assigning: '.$2.' in '.$url.': '. |
$r->print('Assigning: '.$2.' in '.$url.': '. |
|
($start?', starting '.localtime($start):''). |
|
($end?', ending '.localtime($end):'').': <b>'. |
&Apache::lonnet::assignrole( |
&Apache::lonnet::assignrole( |
$ENV{'form.ccdomain'},$ENV{'form.ccuname'}, |
$ENV{'form.ccdomain'},$ENV{'form.ccuname'}, |
$url,$2,$end,$start) |
$url,$2,$end,$start) |
.'<br>'); |
.'</b><br>'); |
} |
} |
} |
} |
} # End of foreach (keys(%ENV)) |
} # End of foreach (keys(%ENV)) |