version 1.43, 2008/01/05 15:19:32
|
version 1.50, 2008/01/20 22:25:05
|
Line 1307 sub print_userlist {
|
Line 1307 sub print_userlist {
|
} |
} |
$r->rflush(); |
$r->rflush(); |
if ($context eq 'course') { |
if ($context eq 'course') { |
my $classlist = &Apache::loncoursedata::get_classlist(); |
if (($env{'form.showrole'} eq 'st') || ($env{'form.showrole'} eq 'Any')) { |
%userlist = %{$classlist}; |
my $classlist = &Apache::loncoursedata::get_classlist(); |
|
%userlist = %{$classlist}; |
|
} |
if ($env{'form.showrole'} ne 'st') { |
if ($env{'form.showrole'} ne 'st') { |
my $showroles; |
my $showroles; |
if ($env{'form.showrole'} ne 'Any') { |
if ($env{'form.showrole'} ne 'Any') { |
Line 1465 sub section_group_filter {
|
Line 1467 sub section_group_filter {
|
all => 'all', |
all => 'all', |
none => 'none', |
none => 'none', |
); |
); |
my ($output,@options); |
my $output; |
foreach my $item (@filters) { |
foreach my $item (@filters) { |
my $markup; |
my ($markup,@options); |
if ($env{'form.'.$name{$item}} eq '') { |
if ($env{'form.'.$name{$item}} eq '') { |
$env{'form.'.$name{$item}} = 'all'; |
$env{'form.'.$name{$item}} = 'all'; |
} |
} |
Line 1788 sub make_keylist_array {
|
Line 1790 sub make_keylist_array {
|
$index->{'email'} = &Apache::loncoursedata::CL_PERMANENTEMAIL(); |
$index->{'email'} = &Apache::loncoursedata::CL_PERMANENTEMAIL(); |
$index->{'role'} = &Apache::loncoursedata::CL_ROLE(); |
$index->{'role'} = &Apache::loncoursedata::CL_ROLE(); |
$index->{'extent'} = &Apache::loncoursedata::CL_EXTENT(); |
$index->{'extent'} = &Apache::loncoursedata::CL_EXTENT(); |
|
$index->{'photo'} = &Apache::loncoursedata::CL_PHOTO(); |
|
$index->{'thumbnail'} = &Apache::loncoursedata::CL_THUMBNAIL(); |
foreach my $key (keys(%{$index})) { |
foreach my $key (keys(%{$index})) { |
$keylist->[$index->{$key}] = $key; |
$keylist->[$index->{$key}] = $key; |
} |
} |
Line 1990 function username_display_launch(usernam
|
Line 1994 function username_display_launch(usernam
|
} |
} |
} |
} |
if (target == 'modify') { |
if (target == 'modify') { |
document.studentform.srchterm.value=username; |
if (document.studentform.userwin.checked == true) { |
document.studentform.srchdomain.value=domain; |
var url = '/adm/createuser?srchterm='+username+'&srchdomain='+domain+'&phase=get_user_info&action=singleuser&srchin=dom&srchby=uname&srchtype=exact&popup=1'; |
document.studentform.phase.value='get_user_info'; |
var options = 'height=600,width=800,resizable=yes,scrollbars=yes,location=no,menubar=no,toolbar=no'; |
document.studentform.action.value = 'singleuser'; |
modifywin = window.open(url,'',options,1); |
document.studentform.submit(); |
modifywin.focus(); |
|
return; |
|
} else { |
|
document.studentform.srchterm.value=username; |
|
document.studentform.srchdomain.value=domain; |
|
document.studentform.phase.value='get_user_info'; |
|
document.studentform.action.value = 'singleuser'; |
|
document.studentform.submit(); |
|
} |
} |
} |
else { |
if (target == 'aboutme') { |
document.location.href = '/adm/'+domain+'/'+username+'/aboutme'; |
if (document.studentform.userwin.checked == true) { |
|
var url = '/adm/'+domain+'/'+username+'/aboutme?popup=1'; |
|
var options = 'height=600,width=800,resizable=yes,scrollbars=yes,location=no,menubar=no,toolbar=no'; |
|
aboutmewin = window.open(url,'',options,1); |
|
aboutmewin.focus(); |
|
return; |
|
} else { |
|
document.location.href = '/adm/'+domain+'/'+username+'/aboutme'; |
|
} |
} |
} |
} |
} |
</script> |
</script> |
Line 2032 END
|
Line 2052 END
|
'ac' => "Action to take for selected users", |
'ac' => "Action to take for selected users", |
'link' => "Behavior of username links", |
'link' => "Behavior of username links", |
'aboutme' => "Display a user's personal page", |
'aboutme' => "Display a user's personal page", |
|
'owin' => "Open in a new window", |
'modify' => "Modify a user's information", |
'modify' => "Modify a user's information", |
); |
); |
if ($context eq 'domain' && $env{'form.roletype'} eq 'course') { |
if ($context eq 'domain' && $env{'form.roletype'} eq 'course') { |
Line 2090 END
|
Line 2111 END
|
$output = '<p>'; |
$output = '<p>'; |
my @linkdests = ('aboutme'); |
my @linkdests = ('aboutme'); |
if ($permission->{'cusr'}) { |
if ($permission->{'cusr'}) { |
push (@linkdests,'modify'); |
unshift (@linkdests,'modify'); |
$output .= '<span class="LC_nobreak">'.$lt{'link'}.': '; |
} |
my $usernamelink = $env{'form.usernamelink'}; |
$output .= '<span class="LC_nobreak">'.$lt{'link'}.': '; |
if ($usernamelink eq '') { |
my $usernamelink = $env{'form.usernamelink'}; |
$usernamelink = 'aboutme'; |
if ($usernamelink eq '') { |
} |
$usernamelink = 'aboutme'; |
foreach my $item (@linkdests) { |
} |
my $checkedstr = ''; |
foreach my $item (@linkdests) { |
if ($item eq $usernamelink) { |
my $checkedstr = ''; |
$checkedstr = ' checked="checked" '; |
if ($item eq $usernamelink) { |
} |
$checkedstr = ' checked="checked" '; |
$output .= '<label><input type="radio" name="usernamelink" value="'.$item.'"'.$checkedstr.'> '.$lt{$item}.'</label> '; |
|
} |
} |
$output .= '</span><br />'; |
$output .= '<label><input type="radio" name="usernamelink" value="'.$item.'"'.$checkedstr.'> '.$lt{$item}.'</label> '; |
} else { |
|
$output .= &mt("Click on a username to view the user's personal page.").'<br />'; |
|
} |
} |
|
my $checkwin; |
|
if ($env{'form.userwin'}) { |
|
$checkwin = 'checked = "checked"'; |
|
} |
|
$output .= ' <input type="checkbox" name="userwin" value="1" $checkwin />'.$lt{'owin'}.'</span><br />'; |
if ($actionselect) { |
if ($actionselect) { |
$output .= <<"END"; |
$output .= <<"END"; |
$lt{'ac'}: $actionselect <input type="button" value="$lt{'go'}" onclick="javascript:opendatebrowser(this.form,'studentform','go')" /></p> |
$lt{'ac'}: $actionselect <input type="button" value="$lt{'go'}" onclick="javascript:opendatebrowser(this.form,'studentform','go')" /></p> |
Line 2240 END
|
Line 2263 END
|
} |
} |
|
|
# Done with header lines in all formats |
# Done with header lines in all formats |
|
|
my %index; |
my %index; |
my $i; |
my $i; |
foreach my $idx (@$keylist) { |
foreach my $idx (@$keylist) { |
Line 2339 END
|
Line 2361 END
|
next; |
next; |
} |
} |
} |
} |
|
if ($env{'course.'.$env{'request.course.id'}.'.internal.showphoto'}) { |
|
if (($displayphotos eq 'on') && ($role eq 'st')) { |
|
$userlist->{$user}->[$index{'photo'}] = |
|
&Apache::lonnet::retrievestudentphoto($udom,$uname,'jpg'); |
|
$userlist->{$user}->[$index{'thumbnail'}] = |
|
&Apache::lonnet::retrievestudentphoto($udom,$uname, |
|
'gif','thumbnail'); |
|
} |
|
} |
} |
} |
} |
} |
my %emails = &Apache::loncommon::getemails($uname,$udom); |
my %emails = &Apache::loncommon::getemails($uname,$udom); |
Line 2451 END
|
Line 2482 END
|
} |
} |
foreach my $item (@cols) { |
foreach my $item (@cols) { |
if ($item eq 'username') { |
if ($item eq 'username') { |
$r->print('<td>'.&print_username_link($mode,$permission, |
$r->print('<td>'.&print_username_link($mode,\%in).'</td>'); |
\%in).'</td>'); |
|
} elsif (($item eq 'start' || $item eq 'end') && ($actionselect)) { |
} elsif (($item eq 'start' || $item eq 'end') && ($actionselect)) { |
$r->print('<td>'.$in{$item}.'<input type="hidden" name="'.$checkval.'_'.$item.'" value="'.$sdata->[$index{$item}].'" /></td>'."\n"); |
$r->print('<td>'.$in{$item}.'<input type="hidden" name="'.$checkval.'_'.$item.'" value="'.$sdata->[$index{$item}].'" /></td>'."\n"); |
} else { |
} else { |
Line 2470 END
|
Line 2500 END
|
$r->print(' <td> </td> '); |
$r->print(' <td> </td> '); |
} |
} |
if ($env{'course.'.$env{'request.course.id'}.'.internal.showphoto'}) { |
if ($env{'course.'.$env{'request.course.id'}.'.internal.showphoto'}) { |
if ($displayphotos eq 'on' && $sdata->[$index{'role'}] eq 'st') { |
if ($displayphotos eq 'on' && $role eq 'st' && $in{'photo'} ne '') { |
my $imgurl = |
$r->print(' <td align="right"><a href="javascript:photowindow('."'".$in{'photo'}."'".')"><img src="'.$in{'thumbnail'}.'" border="1"></a></td>'); |
&Apache::lonnet::retrievestudentphoto($in{'domain'},$in{'username'}, |
|
'gif','thumbnail'); |
|
$r->print(' <td align="right"><a href="javascript:photowindow('."'".&Apache::lonnet::studentphoto($in{'domain'},$in{'username'},'jpg')."'".')"><img src="'.$imgurl.'" border="1"></a></td>'); |
|
} else { |
} else { |
$r->print(' <td> </td> '); |
$r->print(' <td> </td> '); |
} |
} |
Line 2539 END
|
Line 2566 END
|
} |
} |
|
|
sub print_username_link { |
sub print_username_link { |
my ($mode,$permission,$in) = @_; |
my ($mode,$in) = @_; |
my $output; |
my $output; |
if ($mode eq 'autoenroll') { |
if ($mode eq 'autoenroll') { |
$output = $in->{'username'}; |
$output = $in->{'username'}; |
} elsif (!$permission->{'cusr'}) { |
|
$output = &Apache::loncommon::aboutmewrapper($in->{'username'}, |
|
$in->{'username'}, |
|
$in->{'domain'}); |
|
} else { |
} else { |
$output = '<a href="javascript:username_display_launch('. |
$output = '<a href="javascript:username_display_launch('. |
"'$in->{'username'}','$in->{'domain'}'".')" />'. |
"'$in->{'username'}','$in->{'domain'}'".')" />'. |
Line 2657 sub select_actions {
|
Line 2680 sub select_actions {
|
|
|
sub date_section_javascript { |
sub date_section_javascript { |
my ($context,$setting) = @_; |
my ($context,$setting) = @_; |
my $title; |
my $title = 'Date_And_Section_Selector'; |
if (($context eq 'course') || ($context eq 'domain' && $setting eq 'course')) { |
|
$title = &mt('Date and Section selector'); |
|
} else { |
|
$title = &mt('Date selector'); |
|
} |
|
my %nopopup = &Apache::lonlocal::texthash ( |
my %nopopup = &Apache::lonlocal::texthash ( |
revoke => "Check the boxes for any users for whom roles are to be revoked, and click 'Proceed'", |
revoke => "Check the boxes for any users for whom roles are to be revoked, and click 'Proceed'", |
delete => "Check the boxes for any users for whom roles are to be deleted, and click 'Proceed'", |
delete => "Check the boxes for any users for whom roles are to be deleted, and click 'Proceed'", |
none => "Choose an action to take for selected users", |
none => "Choose an action to take for selected users", |
); |
); |
my $output = ' |
my $output = ' |
<script type="text/javascript"> |
<script type="text/javascript">'."\n"; |
var stdeditbrowser;'."\n"; |
|
$output .= <<"ENDONE"; |
$output .= <<"ENDONE"; |
function opendatebrowser(callingform,formname,calledby) { |
function opendatebrowser(callingform,formname,calledby) { |
var bulkaction = callingform.bulkaction.options[callingform.bulkaction.selectedIndex].value; |
var bulkaction = callingform.bulkaction.options[callingform.bulkaction.selectedIndex].value; |