--- loncom/interface/selfenroll.pm 2016/08/04 14:17:39 1.27.2.4 +++ loncom/interface/selfenroll.pm 2020/01/09 17:36:09 1.27.2.6 @@ -1,7 +1,7 @@ # The LearningOnline Network # Allow users to self-enroll in a course # -# $Id: selfenroll.pm,v 1.27.2.4 2016/08/04 14:17:39 raeburn Exp $ +# $Id: selfenroll.pm,v 1.27.2.6 2020/01/09 17:36:09 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -439,8 +439,9 @@ sub process_self_enroll { if ($selfenroll_section eq 'none') { $usec = ''; } + my $instcid; if ($selfenroll_registered) { - my ($registered,$instsec,$message) = &check_registered($cdom,$cnum); + my ($registered,$instsec,$instcid,$message) = &check_registered($cdom,$cnum); $usec = $instsec; if (!$registered) { $r->print('

'.&mt('Self-enrollment unavailable').'

'. @@ -463,7 +464,7 @@ sub process_self_enroll { my $enrollresult = &Apache::lonnet::modify_student_enrollment($udom,$uname,undef,undef,undef, undef,undef,$usec,$selfenroll_access_end,$selfenroll_access_start, - 'selfenroll',undef,$cdom.'_'.$cnum,$selfenroll); + 'selfenroll',undef,$cdom.'_'.$cnum,$selfenroll,'selfenroll','',$instcid); if ($enrollresult eq 'ok') { my (%userroles,%newrole,%newgroups); my $role = 'st'; @@ -664,9 +665,10 @@ sub pending_selfenrollment_form { if ($buttontext eq '') { $buttontext = &mt('Complete my enrollment'); } + my $hostname = &Apache::lonnet::hostname($lonhost); my $protocol = $Apache::lonnet::protocol{$lonhost}; $protocol = 'http' if ($protocol ne 'https'); - my $enroller = $protocol.'://'.&Apache::lonnet::hostname($lonhost).'/cgi-bin/enrollqueued.pl'; + my $enroller = $protocol.'://'.$hostname.'/cgi-bin/enrollqueued.pl'; $output .= ''."\n". ''."\n". ''."\n". @@ -786,7 +788,7 @@ sub print_selfenroll_types { sub check_registered { my ($cdom,$cnum) = @_; - my ($registered,$instsec,$message); + my ($registered,$instsec,$instcid,$message); my %settings = &Apache::lonnet::get('environment',['internal.coursecode', 'internal.sectionnums', 'internal.crosslistings'],$cdom,$cnum); @@ -806,6 +808,7 @@ sub check_registered { if (defined($enrolled{$env{'user.name'}})) { $registered = 1; $instsec = $LC_code{$class}; + $instcid = $class; last; } } @@ -818,7 +821,7 @@ sub check_registered { } else { $message = &mt('As no institutional course sections are currently associated with this course, your registration status is undetermined.'); } - return ($registered,$instsec,$message); + return ($registered,$instsec,$instcid,$message); } 1;