version 1.101, 2005/04/07 06:56:23
|
version 1.106, 2005/06/23 21:56:12
|
Line 108 sub my_custom_roles {
|
Line 108 sub my_custom_roles {
|
|
|
sub authorpriv { |
sub authorpriv { |
my ($auname,$audom)=@_; |
my ($auname,$audom)=@_; |
if (($auname ne $env{'user.name'}) || |
unless ((&Apache::lonnet::allowed('cca',$audom.'/'.$auname)) |
(($audom ne $env{'user.domain'}) && |
|| (&Apache::lonnet::allowed('caa',$audom.'/'.$auname))) { return ''; } |
($audom ne $env{'request.role.domain'}))) { return ''; } |
|
unless (&Apache::lonnet::allowed('cca',$audom)) { return ''; } |
|
return 1; |
return 1; |
} |
} |
|
|
Line 158 $lt{'dom'}:</td><td>$domform</td></tr>
|
Line 156 $lt{'dom'}:</td><td>$domform</td></tr>
|
</table> |
</table> |
<input name="userrole" type="submit" value="$lt{usrr}" /> |
<input name="userrole" type="submit" value="$lt{usrr}" /> |
</form> |
</form> |
|
ENDDOCUMENT |
|
if (&Apache::lonnet::allowed('mcr','/')) { |
|
$r->print(<<ENDCUSTOM); |
<form action="/adm/createuser" method="post" name="docustom"> |
<form action="/adm/createuser" method="post" name="docustom"> |
<input type="hidden" name="phase" value="selected_custom_edit"> |
<input type="hidden" name="phase" value="selected_custom_edit"> |
<h2>$lt{'ecrp'}$helpecpr</h2> |
<h2>$lt{'ecrp'}$helpecpr</h2> |
Line 165 $lt{'nr'}: $choice <input type="text" si
|
Line 166 $lt{'nr'}: $choice <input type="text" si
|
<input name="customeditor" type="submit" value="$lt{'cre'}" /> |
<input name="customeditor" type="submit" value="$lt{'cre'}" /> |
</body> |
</body> |
</html> |
</html> |
ENDDOCUMENT |
ENDCUSTOM |
|
} |
} |
} |
|
|
# =================================================================== Phase two |
# =================================================================== Phase two |
Line 544 END
|
Line 546 END
|
$bgcol=~s/[^7-9a-e]//g; |
$bgcol=~s/[^7-9a-e]//g; |
$bgcol=substr($bgcol.$bgcol.$bgcol.'ffffff',2,6); |
$bgcol=substr($bgcol.$bgcol.$bgcol.'ffffff',2,6); |
if ($area=~/^\/(\w+)\/(\d\w+)\/(\w+)/) { |
if ($area=~/^\/(\w+)\/(\d\w+)\/(\w+)/) { |
$carea.='<br>Section/Group: '.$3; |
$carea.='<br />Section/Group: '.$3; |
$sortkey.="\0$3"; |
$sortkey.="\0$3"; |
} |
} |
$area=$carea; |
$area=$carea; |
Line 574 END
|
Line 576 END
|
$class='Domain'; |
$class='Domain'; |
} |
} |
} |
} |
if ($role_code eq 'ca') { |
if (($role_code eq 'ca') || ($role_code eq 'aa')) { |
$area=~/\/(\w+)\/(\w+)/; |
$area=~/\/(\w+)\/(\w+)/; |
if (&authorpriv($2,$1)) { |
if (&authorpriv($2,$1)) { |
$allowed=1; |
$allowed=1; |
Line 778 ENDOTHERAUTHS
|
Line 780 ENDOTHERAUTHS
|
'sta' => "Start", |
'sta' => "Start", |
'end' => "End", |
'end' => "End", |
'cau' => "Co-Author", |
'cau' => "Co-Author", |
|
'caa' => "Assistant Co-Author", |
'ssd' => "Set Start Date", |
'ssd' => "Set Start Date", |
'sed' => "Set End Date" |
'sed' => "Set End Date" |
); |
); |
Line 796 ENDOTHERAUTHS
|
Line 799 ENDOTHERAUTHS
|
<a href= |
<a href= |
"javascript:pjump('date_end','End Date Co-Author',document.cu.end_$cudom\_$cuname\_ca.value,'end_$cudom\_$cuname\_ca','cu.pres','dateset')">$lt{'sed'}</a></td> |
"javascript:pjump('date_end','End Date Co-Author',document.cu.end_$cudom\_$cuname\_ca.value,'end_$cudom\_$cuname\_ca','cu.pres','dateset')">$lt{'sed'}</a></td> |
</tr> |
</tr> |
|
<tr> |
|
<td><input type=checkbox name="act_$cudom\_$cuname\_aa" /></td> |
|
<td>$lt{'caa'}</td> |
|
<td>$cudom\_$cuname</td> |
|
<td><input type=hidden name="start_$cudom\_$cuname\_aa" value='' /> |
|
<a href= |
|
"javascript:pjump('date_start','Start Date Assistant Co-Author',document.cu.start_$cudom\_$cuname\_aa.value,'start_$cudom\_$cuname\_aa','cu.pres','dateset')">$lt{'ssd'}</a></td> |
|
<td><input type=hidden name="end_$cudom\_$cuname\_aa" value='' /> |
|
<a href= |
|
"javascript:pjump('date_end','End Date Assistant Co-Author',document.cu.end_$cudom\_$cuname\_aa.value,'end_$cudom\_$cuname\_aa','cu.pres','dateset')">$lt{'sed'}</a></td> |
|
</tr> |
</table> |
</table> |
ENDCOAUTH |
ENDCOAUTH |
} |
} |
Line 990 ENDMODIFYUSERHEAD
|
Line 1004 ENDMODIFYUSERHEAD
|
&Apache::lonnet::modifyuserauth( |
&Apache::lonnet::modifyuserauth( |
$env{'form.ccdomain'},$env{'form.ccuname'}, |
$env{'form.ccdomain'},$env{'form.ccuname'}, |
$amode,$genpwd)); |
$amode,$genpwd)); |
$r->print('<br>'.&mt('Home server').': '.&Apache::lonnet::homeserver |
$r->print('<br />'.&mt('Home server').': '.&Apache::lonnet::homeserver |
($env{'form.ccuname'},$env{'form.ccdomain'})); |
($env{'form.ccuname'},$env{'form.ccdomain'})); |
} else { |
} else { |
# Okay, this is a non-fatal error. |
# Okay, this is a non-fatal error. |
Line 1088 END
|
Line 1102 END
|
# Revoke standard role |
# Revoke standard role |
$r->print(&mt('Revoking').' '.$2.' in '.$1.': <b>'. |
$r->print(&mt('Revoking').' '.$2.' in '.$1.': <b>'. |
&Apache::lonnet::revokerole($env{'form.ccdomain'}, |
&Apache::lonnet::revokerole($env{'form.ccdomain'}, |
$env{'form.ccuname'},$1,$2).'</b><br>'); |
$env{'form.ccuname'},$1,$2).'</b><br />'); |
if ($2 eq 'st') { |
if ($2 eq 'st') { |
$1=~/^\/(\w+)\/(\w+)/; |
$1=~/^\/(\w+)\/(\w+)/; |
my $cid=$1.'_'.$2; |
my $cid=$1.'_'.$2; |
Line 1099 END
|
Line 1113 END
|
&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'}).'</b><br>'); |
$env{'course.'.$cid.'.home'}).'</b><br />'); |
} |
} |
} |
} |
if ($_=~/^form\.rev\:([^\_]+)\_cr\.cr\/(\w+)\/(\w+)\/(\w+)$/) { |
if ($_=~/^form\.rev\:([^\_]+)\_cr\.cr\/(\w+)\/(\w+)\/(\w+)$/) { |
Line 1108 END
|
Line 1122 END
|
' '.$4.' by '.$3.'@'.$2.' in '.$1.': <b>'. |
' '.$4.' by '.$3.'@'.$2.' in '.$1.': <b>'. |
&Apache::lonnet::revokecustomrole($env{'form.ccdomain'}, |
&Apache::lonnet::revokecustomrole($env{'form.ccdomain'}, |
$env{'form.ccuname'},$1,$2,$3,$4). |
$env{'form.ccuname'},$1,$2,$3,$4). |
'</b><br>'); |
'</b><br />'); |
} |
} |
} elsif ($_=~/^form\.del/) { |
} elsif ($_=~/^form\.del/) { |
if ($_=~/^form\.del\:([^\_]+)\_([^\_]+)$/) { |
if ($_=~/^form\.del\:([^\_]+)\_([^\_]+)$/) { |
$r->print(&mt('Deleting').' '.$2.' in '.$1.': '. |
$r->print(&mt('Deleting').' '.$2.' in '.$1.': '. |
&Apache::lonnet::assignrole($env{'form.ccdomain'}, |
&Apache::lonnet::assignrole($env{'form.ccdomain'}, |
$env{'form.ccuname'},$1,$2,$now,0,1).'<br>'); |
$env{'form.ccuname'},$1,$2,$now,0,1).'<br />'); |
if ($2 eq 'st') { |
if ($2 eq 'st') { |
$1=~/^\/(\w+)\/(\w+)/; |
$1=~/^\/(\w+)\/(\w+)/; |
my $cid=$1.'_'.$2; |
my $cid=$1.'_'.$2; |
Line 1125 END
|
Line 1139 END
|
&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'}).'</b><br>'); |
$env{'course.'.$cid.'.home'}).'</b><br />'); |
} |
} |
} |
} |
} elsif ($_=~/^form\.ren/) { |
} elsif ($_=~/^form\.ren/) { |
Line 1245 END
|
Line 1259 END
|
} |
} |
} |
} |
} else { |
} else { |
$r->print('<p>'.&mt('ERROR').': '.&mt('Unknown command').' <tt>'.$_.'</tt></p><br>'); |
$r->print('<p>'.&mt('ERROR').': '.&mt('Unknown command').' <tt>'.$_.'</tt></p><br />'); |
} |
} |
} |
} |
} # End of foreach (keys(%env)) |
} # End of foreach (keys(%env)) |
# Flush the course logs so reverse user roles immediately updated |
# Flush the course logs so reverse user roles immediately updated |
&Apache::lonnet::flushcourselogs(); |
&Apache::lonnet::flushcourselogs(); |
|
$r->print('<p><a href="/adm/createuser">Create/Modify Another User</a></p>'); |
$r->print('</body></html>'); |
$r->print('</body></html>'); |
} |
} |
|
|
Line 1261 sub commit_customrole {
|
Line 1276 sub commit_customrole {
|
($end?', ending '.localtime($end):'').': <b>'. |
($end?', ending '.localtime($end):'').': <b>'. |
&Apache::lonnet::assigncustomrole( |
&Apache::lonnet::assigncustomrole( |
$udom,$uname,$url,$three,$four,$five,$end,$start). |
$udom,$uname,$url,$three,$four,$five,$end,$start). |
'</b><br>'; |
'</b><br />'; |
return $output; |
return $output; |
} |
} |
|
|
Line 1286 sub commit_standardrole {
|
Line 1301 sub commit_standardrole {
|
($end?', '.&mt('ending').' '.localtime($end):'').': <b>'. |
($end?', '.&mt('ending').' '.localtime($end):'').': <b>'. |
&Apache::lonnet::assignrole( |
&Apache::lonnet::assignrole( |
$udom,$uname,$url,$three,$end,$start). |
$udom,$uname,$url,$three,$end,$start). |
'</b><br>'; |
'</b><br />'; |
} |
} |
return $output; |
return $output; |
} |
} |
Line 1552 sub handler {
|
Line 1567 sub handler {
|
(&Apache::lonnet::allowed('cin',$env{'request.course.id'})) || |
(&Apache::lonnet::allowed('cin',$env{'request.course.id'})) || |
(&Apache::lonnet::allowed('ccr',$env{'request.course.id'})) || |
(&Apache::lonnet::allowed('ccr',$env{'request.course.id'})) || |
(&Apache::lonnet::allowed('cep',$env{'request.course.id'})) || |
(&Apache::lonnet::allowed('cep',$env{'request.course.id'})) || |
(&Apache::lonnet::allowed('cca',$env{'request.role.domain'})) || |
(&authorpriv($env{'user.name'},$env{'request.role.domain'})) || |
(&Apache::lonnet::allowed('mau',$env{'request.role.domain'}))) { |
(&Apache::lonnet::allowed('mau',$env{'request.role.domain'}))) { |
&Apache::loncommon::content_type($r,'text/html'); |
&Apache::loncommon::content_type($r,'text/html'); |
$r->send_http_header; |
$r->send_http_header; |