version 1.13, 2010/01/14 20:08:13
|
version 1.17, 2010/01/29 13:18:38
|
Line 33 Apache::loncoursequeueadmin.pm
|
Line 33 Apache::loncoursequeueadmin.pm
|
|
|
=head1 SYNOPSIS |
=head1 SYNOPSIS |
|
|
Administration utilities used by domain coordinators for queued course creation requests, and by course coordinators for queued self-enrollment requests. |
Utilities used by domain coordinators to administer queued course creation requests, |
|
and by course coordinators for queued self-enrollment requests, and by general |
|
users to display their queued self-enrollment requests. |
|
|
This is part of the LearningOnline Network with CAPA project |
This is part of the LearningOnline Network with CAPA project |
described at http://www.lon-capa.org. |
described at http://www.lon-capa.org. |
Line 58 described at http://www.lon-capa.org.
|
Line 60 described at http://www.lon-capa.org.
|
|
|
=item get_processtype() |
=item get_processtype() |
|
|
|
=item queued_selfenrollment() |
|
|
=back |
=back |
|
|
=cut |
=cut |
Line 65 described at http://www.lon-capa.org.
|
Line 69 described at http://www.lon-capa.org.
|
package Apache::loncoursequeueadmin; |
package Apache::loncoursequeueadmin; |
|
|
use strict; |
use strict; |
use Apache::Constants qw(:common :http); |
|
use Apache::lonnet; |
use Apache::lonnet; |
use Apache::loncommon; |
use Apache::loncommon; |
use Apache::lonmsg; |
use Apache::lonmsg; |
Line 953 sub build_batchcreatehash {
|
Line 956 sub build_batchcreatehash {
|
my %batchhash; |
my %batchhash; |
my @items = qw{owner domain coursehome clonecrs clonedom datemode dateshift enrollstart enrollend accessstart accessend sections crosslists users}; |
my @items = qw{owner domain coursehome clonecrs clonedom datemode dateshift enrollstart enrollend accessstart accessend sections crosslists users}; |
if ((ref($details) eq 'HASH') && (ref($domdefs) eq 'HASH')) { |
if ((ref($details) eq 'HASH') && (ref($domdefs) eq 'HASH')) { |
my $emailenc = &Apache::lonnet::escape($owneremail); |
my $emailenc = &escape($owneremail); |
my $owner = $details->{'owner'}.':'.$details->{'domain'}; |
my $owner = $details->{'owner'}.':'.$details->{'domain'}; |
foreach my $item (@items) { |
foreach my $item (@items) { |
$batchhash{$item} = $details->{$item}; |
$batchhash{$item} = $details->{$item}; |
Line 1131 sub get_processtype {
|
Line 1134 sub get_processtype {
|
return $val; |
return $val; |
} |
} |
|
|
|
sub queued_selfenrollment { |
|
my ($notitle) = @_; |
|
my $output; |
|
my %selfenrollrequests = &Apache::lonnet::dump('selfenrollrequests'); |
|
my %reqs_by_date; |
|
foreach my $item (keys(%selfenrollrequests)) { |
|
if (ref($selfenrollrequests{$item}) eq 'HASH') { |
|
if ($selfenrollrequests{$item}{'status'} eq 'request') { |
|
if ($selfenrollrequests{$item}{'timestamp'}) { |
|
push(@{$reqs_by_date{$selfenrollrequests{$item}{'timestamp'}}},$item); |
|
} |
|
} |
|
} |
|
} |
|
if (keys(%reqs_by_date)) { |
|
unless ($notitle) { |
|
$output .= '<b>'.&mt('Enrollment requests pending Course Coordinator approval').'</b><br />'; |
|
} |
|
$output .= &Apache::loncommon::start_data_table(). |
|
&Apache::loncommon::start_data_table_header_row(). |
|
'<th>'.&mt('Date requested').'</th><th>'.&mt('Course title').'</th>'. |
|
'<th>'.&mt('User role').'</th><th>'.&mt('Section').'</th>'. |
|
&Apache::loncommon::end_data_table_header_row(); |
|
my @sorted = sort { $a <=> $b } (keys(%reqs_by_date)); |
|
foreach my $item (@sorted) { |
|
if (ref($reqs_by_date{$item}) eq 'ARRAY') { |
|
foreach my $crs (@{$reqs_by_date{$item}}) { |
|
my %courseinfo = &Apache::lonnet::coursedescription($crs); |
|
my $usec = $selfenrollrequests{$crs}{'section'}; |
|
my $rolename = &Apache::lonnet::plaintext('st',$courseinfo{'type'},$crs); |
|
if ($usec eq '') { |
|
$usec = &mt('No section'); |
|
} |
|
$output .= &Apache::loncommon::start_data_table_row(). |
|
'<td>'.&Apache::lonlocal::locallocaltime($item).'</td>'. |
|
'<td>'.$courseinfo{'description'}.'</td>'. |
|
'<td>'.$rolename.'</td><td>'.$usec.'</td>'. |
|
&Apache::loncommon::end_data_table_row(); |
|
} |
|
} |
|
} |
|
$output .= &Apache::loncommon::end_data_table(); |
|
} |
|
return $output; |
|
} |
|
|
1; |
1; |