version 1.62, 2008/07/09 21:34:27
|
version 1.63, 2008/07/13 00:00:50
|
Line 151 sub handler {
|
Line 151 sub handler {
|
header => [{col1 => 'Target user has role', |
header => [{col1 => 'Target user has role', |
col2 => 'User information updateable in author context'}, |
col2 => 'User information updateable in author context'}, |
{col1 => 'Target user has role', |
{col1 => 'Target user has role', |
col2 => 'User information updateable in course context'}], |
col2 => 'User information updateable in course context'}, |
|
{col1 => "Status of user", |
|
col2 => 'Information settable when self-creating account (if directory data blank)'}], |
}, |
}, |
'scantron' => |
'scantron' => |
{ text => 'Scantron format file', |
{ text => 'Scantron format file', |
Line 442 sub print_config_box {
|
Line 444 sub print_config_box {
|
&print_usercreation('bottom',$dom,$settings,\$rowtotal); |
&print_usercreation('bottom',$dom,$settings,\$rowtotal); |
$rowtotal ++; |
$rowtotal ++; |
} elsif ($action eq 'usermodification') { |
} elsif ($action eq 'usermodification') { |
$output .= &print_usermodification('bottom',$dom,$settings,\$rowtotal); |
$output .= &print_usermodification('middle',$dom,$settings,\$rowtotal).' |
|
</table> |
|
</td> |
|
</tr> |
|
<tr> |
|
<td> |
|
<table class="LC_nested"> |
|
<tr class="LC_info_row"> |
|
<td class="LC_left_item"'.$colspan.'>'.&mt($item->{'header'}->[2]->{'col1'}).'</td> |
|
<td class="LC_right_item">'.&mt($item->{'header'}->[2]->{'col2'}).'</td> </tr>'. |
|
|
|
&print_usermodification('bottom',$dom,$settings,\$rowtotal); |
|
$rowtotal ++; |
} elsif ($action eq 'coursecategories') { |
} elsif ($action eq 'coursecategories') { |
$output .= &print_coursecategories('bottom',$dom,$item,$settings,\$rowtotal); |
$output .= &print_coursecategories('bottom',$dom,$item,$settings,\$rowtotal); |
} else { |
} else { |
Line 1683 sub user_formats_row {
|
Line 1697 sub user_formats_row {
|
); |
); |
my $css_class = $rowcount%2?' class="LC_odd_row"':''; |
my $css_class = $rowcount%2?' class="LC_odd_row"':''; |
$output = '<tr '.$css_class.'>'. |
$output = '<tr '.$css_class.'>'. |
'<td><span class="LC_nobreak">'. |
'<td><span class="LC_nobreak">'; |
&mt("Format rules to check for $text{$type}: "). |
if ($type eq 'email') { |
'</span></td>'. |
$output .= &mt("Formats disallowed for $text{$type}: "); |
'<td class="LC_left_item" colspan="2"><table>'; |
} else { |
|
$output .= &mt("Format rules to check for $text{$type}: "); |
|
} |
|
$output .= '</span></td>'. |
|
'<td class="LC_left_item" colspan="2"><table>'; |
my $rem; |
my $rem; |
if (ref($ruleorder) eq 'ARRAY') { |
if (ref($ruleorder) eq 'ARRAY') { |
for (my $i=0; $i<@{$ruleorder}; $i++) { |
for (my $i=0; $i<@{$ruleorder}; $i++) { |
Line 1774 sub print_usermodification {
|
Line 1792 sub print_usermodification {
|
$$rowtotal ++; |
$$rowtotal ++; |
$rowcount ++; |
$rowcount ++; |
} |
} |
} else { |
} elsif ($position eq 'middle') { |
$context = 'course'; |
$context = 'course'; |
$rowcount = 0; |
$rowcount = 0; |
foreach my $role ('st','ep','ta','in','cr') { |
foreach my $role ('st','ep','ta','in','cr') { |
Line 1783 sub print_usermodification {
|
Line 1801 sub print_usermodification {
|
$$rowtotal ++; |
$$rowtotal ++; |
$rowcount ++; |
$rowcount ++; |
} |
} |
|
} elsif ($position eq 'bottom') { |
|
$context = 'selfcreate'; |
|
my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom); |
|
$usertypes->{'default'} = $othertitle; |
|
if (ref($types) eq 'ARRAY') { |
|
push(@{$types},'default'); |
|
$usertypes->{'default'} = $othertitle; |
|
foreach my $status (@{$types}) { |
|
$datatable .= &modifiable_userdata_row($context,$status,$settings, |
|
$numinrow,$rowcount,$usertypes); |
|
$$rowtotal ++; |
|
$rowcount ++; |
|
} |
|
} |
} |
} |
return $datatable; |
return $datatable; |
} |
} |
Line 2362 sub build_category_rows {
|
Line 2394 sub build_category_rows {
|
} |
} |
|
|
sub modifiable_userdata_row { |
sub modifiable_userdata_row { |
my ($context,$role,$settings,$numinrow,$rowcount) = @_; |
my ($context,$role,$settings,$numinrow,$rowcount,$usertypes) = @_; |
my $rolename; |
my $rolename; |
if ($role eq 'cr') { |
if ($context eq 'selfcreate') { |
$rolename = &mt('Custom role'); |
if (ref($usertypes) eq 'HASH') { |
|
$rolename = $usertypes->{$role}; |
|
} else { |
|
$rolename = $role; |
|
} |
} else { |
} else { |
$rolename = &Apache::lonnet::plaintext($role); |
if ($role eq 'cr') { |
|
$rolename = &mt('Custom role'); |
|
} else { |
|
$rolename = &Apache::lonnet::plaintext($role); |
|
} |
} |
} |
my @fields = ('lastname','firstname','middlename','generation', |
my @fields = ('lastname','firstname','middlename','generation', |
'permanentemail','id'); |
'permanentemail','id'); |
Line 4090 sub modify_usermodification {
|
Line 4130 sub modify_usermodification {
|
$curr_usermodification{$key} = $domconfig{'usermodification'}{$key}; |
$curr_usermodification{$key} = $domconfig{'usermodification'}{$key}; |
} |
} |
} |
} |
my @contexts = ('author','course'); |
my @contexts = ('author','course','selfcreate'); |
my %context_title = ( |
my %context_title = ( |
author => 'In author context', |
author => 'In author context', |
course => 'In course context', |
course => 'In course context', |
|
selfcreate => 'When self creating account', |
); |
); |
my @fields = ('lastname','firstname','middlename','generation', |
my @fields = ('lastname','firstname','middlename','generation', |
'permanentemail','id'); |
'permanentemail','id'); |
Line 4101 sub modify_usermodification {
|
Line 4142 sub modify_usermodification {
|
author => ['ca','aa'], |
author => ['ca','aa'], |
course => ['st','ep','ta','in','cr'], |
course => ['st','ep','ta','in','cr'], |
); |
); |
|
my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom); |
|
if (ref($types) eq 'ARRAY') { |
|
push(@{$types},'default'); |
|
$usertypes->{'default'} = $othertitle; |
|
} |
|
$roles{'selfcreate'} = $types; |
my %fieldtitles = &Apache::loncommon::personal_data_fieldtitles(); |
my %fieldtitles = &Apache::loncommon::personal_data_fieldtitles(); |
my %modifyhash; |
my %modifyhash; |
foreach my $context (@contexts) { |
foreach my $context (@contexts) { |
Line 4148 sub modify_usermodification {
|
Line 4195 sub modify_usermodification {
|
if (ref($changes{$context}) eq 'ARRAY') { |
if (ref($changes{$context}) eq 'ARRAY') { |
foreach my $role (@{$changes{$context}}) { |
foreach my $role (@{$changes{$context}}) { |
my $rolename; |
my $rolename; |
if ($role eq 'cr') { |
if ($context eq 'selfcreate') { |
$rolename = &mt('Custom'); |
$rolename = $role; |
|
if (ref($usertypes) eq 'HASH') { |
|
if ($usertypes->{$role} ne '') { |
|
$rolename = $usertypes->{$role}; |
|
} |
|
} |
} else { |
} else { |
$rolename = &Apache::lonnet::plaintext($role); |
if ($role eq 'cr') { |
|
$rolename = &mt('Custom'); |
|
} else { |
|
$rolename = &Apache::lonnet::plaintext($role); |
|
} |
} |
} |
my @modifiable; |
my @modifiable; |
$resulttext .= '<li><span class="LC_cusr_emph">'.&mt('Target user with [_1] role',$rolename).'</span> - '.&mt('modifiable fields: '); |
if ($context eq 'selfcreate') { |
|
$resulttext .= '<li><span class="LC_cusr_emph">'.&mt('Self-creation of account by users with status: [_1] ',$rolename).'</span> - '.&mt('modifiable fields (if institutional data blank): '); |
|
} else { |
|
$resulttext .= '<li><span class="LC_cusr_emph">'.&mt('Target user with [_1] role',$rolename).'</span> - '.&mt('modifiable fields: '); |
|
} |
foreach my $field (@fields) { |
foreach my $field (@fields) { |
if ($modifyhash{$context}{$role}{$field}) { |
if ($modifyhash{$context}{$role}{$field}) { |
push(@modifiable,$fieldtitles{$field}); |
push(@modifiable,$fieldtitles{$field}); |