--- loncom/interface/lonmodifycourse.pm 2025/01/16 06:06:09 1.79.2.9.2.8 +++ loncom/interface/lonmodifycourse.pm 2017/01/05 16:17:11 1.90 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # handler for DC-only modifiable course settings # -# $Id: lonmodifycourse.pm,v 1.79.2.9.2.8 2025/01/16 06:06:09 raeburn Exp $ +# $Id: lonmodifycourse.pm,v 1.90 2017/01/05 16:17:11 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -39,9 +39,6 @@ use Apache::lonpickcourse; use lib '/home/httpd/lib/perl'; use LONCAPA qw(:DEFAULT :match); -my $registered_cleanup; -my $modified_dom; - sub get_dc_settable { my ($type,$cdom) = @_; if ($type eq 'Community') { @@ -52,10 +49,6 @@ sub get_dc_settable { if (&showcredits($cdom)) { push(@items,'defaultcredits'); } - my %passwdconf = &Apache::lonnet::get_passwdconf($cdom); - if (($passwdconf{'crsownerchg'}) && ($type ne 'Placement')) { - push(@items,'nopasswdchg'); - } return @items; } } @@ -79,6 +72,13 @@ sub catalog_settable { if ($confhash->{'categorizecomm'} ne 'comm') { push(@settable,'categorize'); } + } elsif ($type eq 'Placement') { + if ($confhash->{'togglecatsplace'} ne 'place') { + push(@settable,'togglecats'); + } + if ($confhash->{'categorizeplace'} ne 'place') { + push(@settable,'categorize'); + } } else { if ($confhash->{'togglecats'} ne 'crs') { push(@settable,'togglecats'); @@ -97,11 +97,10 @@ sub get_enrollment_settings { my ($cdom,$cnum) = @_; my ($internals,$accessdates) = &autoenroll_keys(); my @items; - if ((ref($internals) eq 'ARRAY') && (ref($accessdates) eq 'ARRAY')) { + if ((ref($internals) eq 'ARRAY') && (ref($accessdates) eq 'ARRAY')) { @items = map { 'internal.'.$_; } (@{$internals}); push(@items,@{$accessdates}); } - push(@items,'internal.nopasswdchg'); my %settings = &Apache::lonnet::get('environment',\@items,$cdom,$cnum); my %enrollvar; $enrollvar{'autharg'} = ''; @@ -127,7 +126,7 @@ sub get_enrollment_settings { } elsif ($type eq "authtype" || $type eq "autharg" || $type eq "coursecode" || $type eq "crosslistings" || $type eq "selfenrollmgr" - || $type eq "autodropfailsafe" || $type eq 'nopasswdchg') { + || $type eq "autodropfailsafe") { $enrollvar{$type} = $settings{$item}; } elsif ($type eq 'defaultcredits') { if (&showcredits($cdom)) { @@ -175,6 +174,8 @@ sub print_course_search_page { $r->print(&Apache::loncommon::js_changer()); if ($type eq 'Community') { $r->print('