--- loncom/interface/loncreateuser.pm 2022/11/23 02:55:37 1.465 +++ loncom/interface/loncreateuser.pm 2022/12/01 01:28:26 1.466 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Create a user # -# $Id: loncreateuser.pm,v 1.465 2022/11/23 02:55:37 raeburn Exp $ +# $Id: loncreateuser.pm,v 1.466 2022/12/01 01:28:26 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -3978,7 +3978,7 @@ sub update_roles { my $now=time; my @rolechanges; my (%disallowed,%got_role_approvals,%got_instdoms,%process_by,%instdoms, - %pending,%reject,%notifydc); + %pending,%reject,%notifydc,%status,%unauthorized,%currqueued); $got_role_approvals{$context} = ''; $process_by{$context} = {}; my @domroles = &Apache::lonuserutils::domain_roles(); @@ -4101,7 +4101,8 @@ sub update_roles { next if (&Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$role,$now,0,$cdom,$cnum,$csec,$credits, \%process_by,\%instdoms,\%got_role_approvals, - \%got_instdoms,\%reject,\%pending,\%notifydc)); + \%got_instdoms,\%reject,\%pending,\%notifydc, + \%status,\%unauthorized,\%currqueued)); } my $result = &Apache::loncommon::commit_studentrole(\$logmsg,$udom,$uname,$url,$role,$now,0,$cdom,$cnum,$csec,$context,$credits); if (($result =~ /^error/) || ($result eq 'not_in_class') || ($result eq 'unknown_course') || ($result eq 'refused')) { @@ -4131,7 +4132,7 @@ sub update_roles { next if (&Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$role,$now,0,$cdom,$cnum,$csec,'',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc)); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued)); } } my $result=&Apache::lonnet::assignrole($env{'form.ccdomain'}, @@ -4160,7 +4161,7 @@ sub update_roles { next if (&Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$role,$now,0,$cdom,$cnum,$csec,'',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc)); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued)); } } my $result = &Apache::lonnet::assigncustomrole( @@ -4203,7 +4204,7 @@ sub update_roles { next if (&Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$role,$start,$end,$one,$two,'','',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc)); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued)); } $r->print(&Apache::loncommon::commit_customrole($udom,$uname,$url,$three,$four,$five,$start,$end,$context)); } else { @@ -4223,7 +4224,7 @@ sub update_roles { next if (&Apache::lonuserutils::restricted_dom($context,$secid,$udom, $uname,$role,$start,$end,$one,$two,$sec,'',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc)); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued)); } $numchanges ++; $r->print(&Apache::loncommon::commit_customrole($udom,$uname,$securl,$three,$four,$five,$start,$end,$context)); @@ -4266,7 +4267,7 @@ sub update_roles { next if (&Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$three,$start,$end,$one,$two,'',$credits,\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc)); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued)); } $numchanges ++; $r->print(&Apache::loncommon::commit_standardrole($udom,$uname,$url,$three,$start,$end,$one,$two,'',$context,$credits)); @@ -4290,7 +4291,7 @@ sub update_roles { $restricted = &Apache::lonuserutils::restricted_dom($context,$secid,$udom, $uname,$three,$start,$end,$one,$two,$sec,$credits,\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued); next if ($restricted); } $numchanges ++; @@ -4305,7 +4306,7 @@ sub update_roles { $restricted = &Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$three,$start,$end,$one,$two,'',$credits,\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued); next if ($restricted); } $numchanges ++; @@ -4338,7 +4339,7 @@ sub update_roles { $restricted = &Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$two,$start,$end,$one,$two,'','',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued); next if ($restricted); } $numchanges ++; @@ -4354,7 +4355,7 @@ sub update_roles { $restricted = &Apache::lonuserutils::restricted_dom($context,$secid,$udom, $uname,$two,$start,$end,$one,$two,$sec,'',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued); next if ($restricted); } $numchanges ++; @@ -4369,7 +4370,7 @@ sub update_roles { $restricted = &Apache::lonuserutils::restricted_dom($context,$id,$udom, $uname,$two,$start,$end,$one,$two,'','',\%process_by, \%instdoms,\%got_role_approvals,\%got_instdoms,\%reject, - \%pending,\%notifydc); + \%pending,\%notifydc,\%status,\%unauthorized,\%currqueued); next if ($restricted); } $numchanges ++; @@ -4399,11 +4400,11 @@ sub update_roles { } } } # End of foreach (keys(%env)) - if (keys(%reject)) { - $r->print(&Apache::lonuserutils::print_roles_rejected($context,\%reject)); + if ((keys(%reject)) || (keys(%unauthorized))) { + $r->print(&Apache::lonuserutils::print_roles_rejected($context,\%reject,\%unauthorized)); } - if (keys(%pending)) { - $r->print(&Apache::lonuserutils::print_roles_queued($context,\%pending,\%notifydc)); + if ((keys(%pending)) || (keys(%currqueued))) { + $r->print(&Apache::lonuserutils::print_roles_queued($context,\%pending,\%notifydc,\%currqueued)); } # Flush the course logs so reverse user roles immediately updated $r->register_cleanup(\&Apache::lonnet::flushcourselogs); @@ -4460,7 +4461,8 @@ sub enroll_single_student { } } my ($startdate,$enddate) = &Apache::lonuserutils::get_dates_from_form(); - my (%got_role_approvals,%got_instdoms,%process_by,%instdoms,%pending,%reject,%notifydc); + my (%got_role_approvals,%got_instdoms,%process_by,%instdoms,%pending,%reject,%notifydc, + %status,%unauthorized,%currqueued); unless ($env{'form.ccdomain'} eq $env{'course.'.$env{'request.course.id'}.'.domain'}) { my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; @@ -4473,12 +4475,12 @@ sub enroll_single_student { if (&Apache::lonuserutils::restricted_dom($context,$id,$env{'form.ccdomain'},$env{'form.ccuname'}, 'st',$startdate,$enddate,$cdom,$cnum,$csec,$credits, \%process_by,\%instdoms,\%got_role_approvals,\%got_instdoms, - \%reject,\%pending,\%notifydc)) { - if (keys(%reject)) { - $r->print(&Apache::lonuserutils::print_roles_rejected($context,\%reject)); + \%reject,\%pending,\%notifydc,\%status,\%unauthorized,\%currqueued)) { + if ((keys(%reject)) || (keys(%unauthorized))) { + $r->print(&Apache::lonuserutils::print_roles_rejected($context,\%reject,\%unauthorized)); } - if (keys(%pending)) { - $r->print(&Apache::lonuserutils::print_roles_queued($context,\%pending,\%notifydc)); + if ((keys(%pending)) || (keys(%currqueued))) { + $r->print(&Apache::lonuserutils::print_roles_queued($context,\%pending,\%notifydc,\%currqueued)); } return; } @@ -7638,10 +7640,6 @@ sub userlogdisplay_navlinks { sub role_display_filter { my ($context,$formname,$cdom,$cnum,$curr,$version,$crstype) = @_; - my $lctype; - if ($context eq 'course') { - $lctype = lc($crstype); - } my $nolink = 1; my $output = '
'. ''.&mt('Changes/page:').'
'. @@ -7669,7 +7667,7 @@ sub role_display_filter { if ($curr->{'role'} eq 'any') { $output .= ' selected="selected"'; } - $output .= '>'.&mt('Any').''."\n"; + $output .= '>'.&mt('Any').''."\n"; my @roles = &Apache::lonuserutils::roles_by_context($context,1,$crstype); foreach my $role (@roles) { my $plrole;