version 1.75, 2004/01/01 02:16:29
|
version 1.80, 2004/03/05 02:14:34
|
Line 124 sub print_username_entry_form {
|
Line 124 sub print_username_entry_form {
|
my @domains = &Apache::loncommon::get_domains(); |
my @domains = &Apache::loncommon::get_domains(); |
my $domform = &Apache::loncommon::select_dom_form($defdom,'ccdomain'); |
my $domform = &Apache::loncommon::select_dom_form($defdom,'ccdomain'); |
my $bodytag =&Apache::loncommon::bodytag( |
my $bodytag =&Apache::loncommon::bodytag( |
'Create Users, Change User Privileges'); |
'Create Users, Change User Privileges'). |
|
&Apache::loncommon::help_open_faq(282). |
|
&Apache::loncommon::help_open_bug('Instructor Interface'); |
my $selscript=&Apache::loncommon::studentbrowser_javascript(); |
my $selscript=&Apache::loncommon::studentbrowser_javascript(); |
my $sellink=&Apache::loncommon::selectstudent_link |
my $sellink=&Apache::loncommon::selectstudent_link |
('crtuser','ccuname','ccdomain'); |
('crtuser','ccuname','ccdomain'); |
Line 140 sub print_username_entry_form {
|
Line 142 sub print_username_entry_form {
|
'nr' => "Name of Role", |
'nr' => "Name of Role", |
'cre' => "Custom Role Editor" |
'cre' => "Custom Role Editor" |
); |
); |
|
my $helpsiur=&Apache::loncommon::help_open_topic('Course_Change_Privileges'); |
|
my $helpecpr=&Apache::loncommon::help_open_topic('Course_Editing_Custom_Roles'); |
$r->print(<<"ENDDOCUMENT"); |
$r->print(<<"ENDDOCUMENT"); |
<html> |
<html> |
<head> |
<head> |
Line 149 $selscript
|
Line 153 $selscript
|
$bodytag |
$bodytag |
<form action="/adm/createuser" method="post" name="crtuser"> |
<form action="/adm/createuser" method="post" name="crtuser"> |
<input type="hidden" name="phase" value="get_user_info"> |
<input type="hidden" name="phase" value="get_user_info"> |
<h2>$lt{siur}</h2> |
<h2>$lt{siur}$helpsiur</h2> |
<table> |
<table> |
<tr><td>$lt{usr}:</td><td><input type="text" size="15" name="ccuname"> |
<tr><td>$lt{usr}:</td><td><input type="text" size="15" name="ccuname"> |
</td><td rowspan="2">$sellink</td></tr><tr><td> |
</td><td rowspan="2">$sellink</td></tr><tr><td> |
Line 159 $lt{'dom'}:</td><td>$domform</td></tr>
|
Line 163 $lt{'dom'}:</td><td>$domform</td></tr>
|
</form> |
</form> |
<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'}</h2> |
<h2>$lt{'ecrp'}$helpecpr</h2> |
$lt{'nr'}: $choice <input type="text" size="15" name="newrolename" /><br /> |
$lt{'nr'}: $choice <input type="text" size="15" name="newrolename" /><br /> |
<input name="customeditor" type="submit" value="$lt{'cre'}" /> |
<input name="customeditor" type="submit" value="$lt{'cre'}" /> |
</body> |
</body> |
Line 246 ENDFORMINFO
|
Line 250 ENDFORMINFO
|
'<option value="default" selected>default</option>'."\n". |
'<option value="default" selected>default</option>'."\n". |
&Apache::loncommon::home_server_option_list($ccdomain); |
&Apache::loncommon::home_server_option_list($ccdomain); |
|
|
my %lt=&Apache::lonlocal::texthash( |
my %lt=&Apache::lonlocal::texthash( |
'cnu' => "Create New User", |
'cnu' => "Create New User", |
'nu' => "New User", |
'nu' => "New User", |
'id' => "in domain", |
'id' => "in domain", |
Line 259 ENDFORMINFO
|
Line 263 ENDFORMINFO
|
'hs' => "Home Server", |
'hs' => "Home Server", |
'lg' => "Login Data" |
'lg' => "Login Data" |
); |
); |
|
my $genhelp=&Apache::loncommon::help_open_topic('Generation'); |
$r->print(<<ENDNEWUSER); |
$r->print(<<ENDNEWUSER); |
$dochead |
$dochead |
<h1>$lt{'cnu'}</h1> |
<h1>$lt{'cnu'}</h1> |
Line 277 $loginscript
|
Line 282 $loginscript
|
<td><input type='text' name='cmiddle' size='15' /></td></tr> |
<td><input type='text' name='cmiddle' size='15' /></td></tr> |
<tr><td>$lt{'ln'} </td> |
<tr><td>$lt{'ln'} </td> |
<td><input type='text' name='clast' size='15' /></td></tr> |
<td><input type='text' name='clast' size='15' /></td></tr> |
<tr><td>$lt{'gen'} </td> |
<tr><td>$lt{'gen'}$genhelp</td> |
<td><input type='text' name='cgen' size='5' /></td></tr> |
<td><input type='text' name='cgen' size='5' /></td></tr> |
</table> |
</table> |
$lt{'idsn'} <input type='text' name='cstid' size='15' /></p> |
$lt{'idsn'} <input type='text' name='cstid' size='15' /></p> |
Line 291 $lt{'hs'}: <select name="hserver" size="
|
Line 296 $lt{'hs'}: <select name="hserver" size="
|
<p>$authformloc </p> |
<p>$authformloc </p> |
ENDNEWUSER |
ENDNEWUSER |
} else { # user already exists |
} else { # user already exists |
my %lt=&Apache::lonlocal::texthash( |
my %lt=&Apache::lonlocal::texthash( |
'cup' => "Change User Privileges", |
'cup' => "Change User Privileges", |
'usr' => "User", |
'usr' => "User", |
'id' => "in domain", |
'id' => "in domain", |
Line 348 END
|
Line 353 END
|
$r->print(<<END); |
$r->print(<<END); |
<hr /> |
<hr /> |
<h3>$lt{'rer'}</h3> |
<h3>$lt{'rer'}</h3> |
<table border=2> |
<table> |
<tr><th>$lt{'rev'}</th><th>$lt{'del'}</th><th>$lt{'rol'}</th><th>$lt{'ext'}</th><th>$lt{'sta'}</th><th>$lt{'end'}</th> |
<tr><th>$lt{'rev'}</th><th>$lt{'del'}</th><th>$lt{'rol'}</th><th>$lt{'ext'}</th><th>$lt{'sta'}</th><th>$lt{'end'}</th> |
END |
END |
|
my (%roletext,%sortrole,%roleclass); |
foreach my $area (sort { my $a1=join('_',(split('_',$a))[1,0]); |
foreach my $area (sort { my $a1=join('_',(split('_',$a))[1,0]); |
my $b1=join('_',(split('_',$b))[1,0]); |
my $b1=join('_',(split('_',$b))[1,0]); |
return $a1 cmp $b1; |
return $a1 cmp $b1; |
} keys(%rolesdump)) { |
} keys(%rolesdump)) { |
next if ($area =~ /^rolesdef/); |
next if ($area =~ /^rolesdef/); |
|
my $envkey=$area; |
my $role = $rolesdump{$area}; |
my $role = $rolesdump{$area}; |
my $thisrole=$area; |
my $thisrole=$area; |
$area =~ s/\_\w\w$//; |
$area =~ s/\_\w\w$//; |
Line 367 END
|
Line 374 END
|
my $bgcol='ffffff'; |
my $bgcol='ffffff'; |
my $allowed=0; |
my $allowed=0; |
my $delallowed=0; |
my $delallowed=0; |
|
my $sortkey=$role_code; |
|
my $class='Unknown'; |
if ($area =~ /^\/(\w+)\/(\d\w+)/ ) { |
if ($area =~ /^\/(\w+)\/(\d\w+)/ ) { |
|
$class='Course'; |
my ($coursedom,$coursedir) = ($1,$2); |
my ($coursedom,$coursedir) = ($1,$2); |
|
$sortkey.="\0$1"; |
# $1.'_'.$2 is the course id (eg. 103_12345abcef103l3). |
# $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=&mt('Course').': '.$coursedata{'description'}. |
$carea=$coursedata{'description'}. |
'<br />'.&mt('Domain').': '.$coursedom.(' 'x8). |
'<br />'.&mt('Domain').': '.$coursedom.(' 'x8). |
&Apache::loncommon::syllabuswrapper('Syllabus',$coursedir,$coursedom); |
&Apache::loncommon::syllabuswrapper('Syllabus',$coursedir,$coursedom); |
|
$sortkey.="\0".$coursedata{'description'}; |
} else { |
} else { |
$carea=&mt('Unavailable course').': '.$area; |
$carea=&mt('Unavailable course').': '.$area; |
|
$sortkey.="\0".&mt('Unavailable course'); |
} |
} |
$inccourses{$1.'_'.$2}=1; |
$inccourses{$1.'_'.$2}=1; |
if ((&Apache::lonnet::allowed('c'.$role_code,$1.'/'.$2)) || |
if ((&Apache::lonnet::allowed('c'.$role_code,$1.'/'.$2)) || |
Line 405 END
|
Line 418 END
|
} |
} |
$area=$carea; |
$area=$carea; |
} else { |
} else { |
|
$sortkey.="\0".$area; |
# Determine if current user is able to revoke privileges |
# Determine if current user is able to revoke privileges |
if ($area=~ /^\/(\w+)\//) { |
if ($area=~ /^\/(\w+)\//) { |
if ((&Apache::lonnet::allowed('c'.$role_code,$1)) || |
if ((&Apache::lonnet::allowed('c'.$role_code,$1)) || |
Line 421 END
|
Line 435 END
|
$allowed=1; |
$allowed=1; |
} |
} |
} |
} |
|
if ($role_code eq 'ca' || $role_code eq 'au') { |
|
$class='Construction Space'; |
|
} elsif ($role_code eq 'su') { |
|
$class='System'; |
|
} else { |
|
$class='Domain'; |
|
} |
} |
} |
if ($role_code eq 'ca') { |
if ($role_code eq 'ca') { |
$area=~/\/(\w+)\/(\w+)/; |
$area=~/\/(\w+)\/(\w+)/; |
Line 430 END
|
Line 451 END
|
$allowed=0; |
$allowed=0; |
} |
} |
} |
} |
|
$bgcol='77FF77'; |
my $row = ''; |
my $row = ''; |
$row.='<tr bgcolor="#'.$bgcol.'"><td>'; |
$row.='<tr bgcolor="#'.$bgcol.'"><td>'; |
my $active=1; |
my $active=1; |
Line 463 END
|
Line 485 END
|
'</td><td>'.($role_end_time ?localtime($role_end_time) |
'</td><td>'.($role_end_time ?localtime($role_end_time) |
: ' ' ) |
: ' ' ) |
."</td></tr>\n"; |
."</td></tr>\n"; |
$r->print($row); |
$sortrole{$sortkey}=$envkey; |
|
$roletext{$envkey}=$row; |
|
$roleclass{$envkey}=$class; |
|
#$r->print($row); |
} # end of foreach (table building loop) |
} # end of foreach (table building loop) |
|
foreach my $type ('Construction Space','Course','Domain','System','Unknown') { |
|
my $output; |
|
foreach my $which (sort {uc($a) cmp uc($b)} (keys(%sortrole))) { |
|
if ($roleclass{$sortrole{$which}} =~ /^\Q$type\E/) { |
|
$output.=$roletext{$sortrole{$which}}; |
|
} |
|
} |
|
if (defined($output)) { |
|
$r->print("<tr bgcolor='#BBffBB'>". |
|
"<td align='center' colspan='7'>".&mt($type)."</td>"); |
|
} |
|
$r->print($output); |
|
} |
$r->print('</table>'); |
$r->print('</table>'); |
} # End of unless |
} # End of unless |
my $currentauth=&Apache::lonnet::queryauthenticate($ccuname,$ccdomain); |
my $currentauth=&Apache::lonnet::queryauthenticate($ccuname,$ccdomain); |
Line 581 ENDOTHERAUTHS
|
Line 619 ENDOTHERAUTHS
|
'rol' => "Role", |
'rol' => "Role", |
'ext' => "Extent", |
'ext' => "Extent", |
'sta' => "Start", |
'sta' => "Start", |
'end' => "End". |
'end' => "End", |
'cau' => "Co-Author", |
'cau' => "Co-Author", |
'ssd' => "Set Start Date", |
'ssd' => "Set Start Date", |
'sed' => "Set End Date" |
'sed' => "Set End Date" |
Line 591 ENDOTHERAUTHS
|
Line 629 ENDOTHERAUTHS
|
<table border=2><tr><th>$lt{'act'}</th><th>$lt{'rol'}</th><th>$lt{'ext'}</th> |
<table border=2><tr><th>$lt{'act'}</th><th>$lt{'rol'}</th><th>$lt{'ext'}</th> |
<th>$lt{'sta'}</th><th>$lt{'end'}</th></tr> |
<th>$lt{'sta'}</th><th>$lt{'end'}</th></tr> |
<tr> |
<tr> |
<td><input type=checkbox name="act_$cudom\_$cuname\_ca"></td> |
<td><input type=checkbox name="act_$cudom\_$cuname\_ca" /></td> |
<td>$lt{'cau'}</td> |
<td>$lt{'cau'}</td> |
<td>$cudom\_$cuname</td> |
<td>$cudom\_$cuname</td> |
<td><input type=hidden name="start_$cudom\_$cuname\_ca" value=''> |
<td><input type=hidden name="start_$cudom\_$cuname\_ca" value='' /> |
<a href= |
<a href= |
"javascript:pjump('date_start','Start Date Co-Author',document.cu.start_$cudom\_$cuname\_ca.value,'start_$cudom\_$cuname\_ca','cu.pres','dateset')">$lt{'ssd'}</a></td> |
"javascript:pjump('date_start','Start Date Co-Author',document.cu.start_$cudom\_$cuname\_ca.value,'start_$cudom\_$cuname\_ca','cu.pres','dateset')">$lt{'ssd'}</a></td> |
<td><input type=hidden name="end_$cudom\_$cuname\_ca" value=''> |
<td><input type=hidden name="end_$cudom\_$cuname\_ca" value='' /> |
<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> |
Line 756 ENDNEWUSERHEAD
|
Line 794 ENDNEWUSERHEAD
|
$ENV{'form.cmiddle'},$ENV{'form.clast'},$ENV{'form.cgen'}, |
$ENV{'form.cmiddle'},$ENV{'form.clast'},$ENV{'form.cgen'}, |
undef,$desiredhost |
undef,$desiredhost |
); |
); |
$r->print('Generating user: '.$result); |
$r->print(&mt('Generating user').': '.$result); |
my $home = &Apache::lonnet::homeserver($ENV{'form.ccuname'}, |
my $home = &Apache::lonnet::homeserver($ENV{'form.ccuname'}, |
$ENV{'form.ccdomain'}); |
$ENV{'form.ccdomain'}); |
$r->print('<br />'&mt('Home server').': '.$home.' '. |
$r->print('<br />'.&mt('Home server').': '.$home.' '. |
$Apache::lonnet::libserv{$home}); |
$Apache::lonnet::libserv{$home}); |
} elsif (($ENV{'form.login'} ne 'nochange') && |
} elsif (($ENV{'form.login'} ne 'nochange') && |
($ENV{'form.login'} ne '' )) { |
($ENV{'form.login'} ne '' )) { |