--- loncom/interface/selfenroll.pm 2009/08/11 00:39:46 1.21
+++ loncom/interface/selfenroll.pm 2012/05/16 21:19:39 1.27
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Allow users to self-enroll in a course
#
-# $Id: selfenroll.pm,v 1.21 2009/08/11 00:39:46 raeburn Exp $
+# $Id: selfenroll.pm,v 1.27 2012/05/16 21:19:39 droeschl Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -54,9 +54,11 @@ sub handler {
&Apache::lonlocal::get_language_handle($r);
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['courseid']);
my $js = &Apache::createaccount::catreturn_js();
- my ($coursechk,$courseid) = &validate_course_id($env{'form.courseid'});
- if ($coursechk ne 'ok') {
- &page_header($r,$courseid,$js);
+
+ my $courseid = Apache::lonnet::is_course($env{'form.courseid'});
+
+ unless ($courseid) {
+ &page_header($r,$env{'form.courseid'},$js);
$r->print('
'.&mt('Self-enrollment error').'
'.
''.
&mt('Invalid domain or course number').'');
@@ -342,8 +344,7 @@ sub enrollment_limit_check {
sub page_header {
my ($r,$courseid,$js,$desc) = @_;
my $start_page =
- &Apache::loncommon::start_page('Self-enroll in a LON-CAPA course',$js,
- {'no_inline_link' => 1,});
+ &Apache::loncommon::start_page('Self-enroll in a LON-CAPA course',$js);
$r->print($start_page);
&Apache::lonhtmlcommon::clear_breadcrumbs();
&Apache::createaccount::selfenroll_crumbs($r,$courseid,$desc);
@@ -359,17 +360,6 @@ sub page_footer {
return;
}
-sub validate_course_id {
- my ($courseid) = @_;
- my ($cdom,$cnum) = ($env{'form.courseid'} =~ /^($match_domain)_($match_courseid)$/);
- if ($cdom ne '' && $cnum ne '') {
- if (&Apache::lonnet::is_course($cdom,$cnum)) {
- return ('ok',$courseid);
- }
- }
- return;
-}
-
sub user_is_known {
my $known = 0;
if ($env{'user.name'} ne '' && $env{'user.name'} ne 'public'
@@ -476,7 +466,7 @@ sub process_self_enroll {
}
&Apache::lonnet::standard_roleprivs(\%newrole,$role,$cdom,$spec,$cnum,
$area);
- &Apache::lonnet::set_userprivs(\%userroles,\%newrole,%newgroups);
+ &Apache::lonnet::set_userprivs(\%userroles,\%newrole,\%newgroups);
$userroles{'user.role.'.$spec} = $selfenroll_access_start.'.'.$selfenroll_access_end;
&Apache::lonnet::appenv(\%userroles,[$role,'cm']);
$r->print(''.&mt('Enrollment process complete').'
');
@@ -543,8 +533,8 @@ sub store_selfenroll_request {
my %existing =
&Apache::lonnet::get($namespace,[$uname.':'.$udom],$cdom,$cnum);
if ($existing{$uname.':'.$udom}) {
- my ($timestamp,$sec) = split(/:/,$existing{$uname.':'.$udom});
- $output = &mt('A self-enrollment request already exists for you for this course.').'
'.&mt('Your earlier request was submitted: [_1] and remains in a queue awaiting action by a Course Coordinator.',&Apache::lonlocal::locallocaltime($timestamp));
+ $output = &mt('A self-enrollment request already exists for you for this course.').'
'.&mt('Your earlier request is in a queue awaiting action by a Course Coordinator.').
+ '
'.&Apache::loncoursequeueadmin::queued_selfenrollment();
} else {
my %selfenroll = (
$uname.':'.$udom => $now.':'.$usec,
@@ -576,12 +566,14 @@ sub store_selfenroll_request {
if ($warning) {
$output .= ''.$warning.'
';
}
-
+
+ $output .= &Apache::loncoursequeueadmin::queued_selfenrollment();
+
if ($selfenroll_notifylist) {
my $fullname = &Apache::loncommon::plainname($uname,$udom);
my %courseinfo = &Apache::lonnet::coursedescription($cdom.'_'.$cnum);
my $coursedesc = $courseinfo{'description'};
- &Apache::loncoursequeueadmin::send_selfserver_notification(
+ &Apache::loncoursequeueadmin::send_selfserve_notification(
$selfenroll_notifylist,$fullname,$cdom.'_'.$cnum,
$coursedesc,$now,'selfenrollreq',$owner);
}