--- loncom/interface/lonmodifycourse.pm 2004/06/08 22:09:44 1.7
+++ loncom/interface/lonmodifycourse.pm 2004/06/29 14:56:32 1.10
@@ -100,7 +100,11 @@ ENDBLOCK
unless ($code =~m/^___\d+$/) { $showcode = $code; }
if ($item =~ m/^($dom)_(\w+)$/) {
$crs = $2;
- $description = $courseIDs{$item};
+ if ($courseIDs{$item} =~ /^([^:]*):/) {
+ $description = &Apache::lonnet::unescape($1);
+ } else {
+ $description = &Apache::lonnet::unescape($courseIDs{$item});
+ }
# Get course owner
my %settings = &Apache::lonnet::get('environment',['internal.courseowner'],$dom,$crs);
if ( defined($settings{'internal.courseowner'}) ) {
@@ -197,9 +201,17 @@ all settings except course code, course
} else {
$enrollvar{$1} = localtime($settings{$item});
}
- } elsif ($1 eq "courseowner" || $1 eq "authtype" || $1 eq "autharg" || $1 eq "sectionnums" || $1 eq "coursecode") {
+ } elsif ($1 eq "courseowner" || $1 eq "authtype" || $1 eq "autharg" || $1 eq "sectionnums" || $1 eq "coursecode" || $1 eq "crosslistings") {
$enrollvar{$1} = $settings{$item};
}
+ } elsif ($item =~ m/^default_enrollment_(start|end)_date$/) {
+ if ( ($1 eq 'end') && ($settings{$item} == 0) ) {
+ $enrollvar{$item} = $lt{'noen'};
+ } elsif ( ($1 eq 'start') && ($settings{$item} eq '') ) {
+ $enrollvar{$item} = 'When enrolled';
+ } else {
+ $enrollvar{$item} = localtime($settings{$item});
+ }
}
}
@@ -425,9 +437,6 @@ sub modify_course {
my ($r,$tasklongref,$typeref) = @_;
my $dom = $ENV{'user.domain'};
my $crs = $ENV{'form.course'};
- my $homeserver = &Apache::lonnet::homeserver($crs,$dom);
- my $server = $Apache::lonnet::perlvar{'lonHostID'};
-
unless ( &check_course($dom,$crs) eq 'ok' ) {
&print_header($r,$tasklongref);
my $reply = "
".&mt("The LON-CAPA course selected was not a valid course for this domain");
@@ -512,6 +521,8 @@ sub modify_course {
$newattr{'coursecode'}=$ENV{'form.coursecode'};
unless ( $newattr{'coursecode'} eq $currattr{'coursecode'} ) {
$changecode = 1;
+ my $courseid_entry = &Apache::lonnet::escape($dom.'_'.$crs).'='.&Apache::lonnet::escape($description).'='.&Apache::lonnet::escape($ENV{'form.coursecode'});
+ &Apache::lonnet::courseidput($dom,$courseid_entry,&Apache::lonnet::homeserver($crs,$dom));
}
}
@@ -551,10 +562,10 @@ sub modify_course {
if ($changecode) {
foreach my $sec (@sections) {
if ($sec =~ m/^(.+):/) {
- my $course_id = $newattr{'coursecode'}.$1;
- my $course_check = &Apache::lonnet::auto_validate_courseID($homeserver,$course_id);
+ my $inst_course_id = $newattr{'coursecode'}.$1;
+ my $course_check = &Apache::lonnet::auto_validate_courseID($crs,$dom,$inst_course_id);
if ($course_check eq 'ok') {
- my $outcome = &Apache::lonnet::auto_new_course($homeserver,$course_id,$newattr{'courseowner'});
+ my $outcome = &Apache::lonnet::auto_new_course($crs,$dom,$inst_course_id,$newattr{'courseowner'});
unless ($outcome eq 'ok') {
$warning .= &mt("If automatic enrollment is enabled for LON-CAPA course: ").$description.&mt(", automated enrollment may fail for ").$newattr{'coursecode'}.&mt(" - section $1 for the following reason: $outcome.
");
}
@@ -568,8 +579,8 @@ sub modify_course {
} elsif ($changeowner) {
foreach my $sec (@sections) {
if ($sec =~ m/^(.+):/) {
- my $course_id = $newattr{'coursecode'}.$1;
- my $outcome = &Apache::lonnet::auto_new_course($homeserver,$course_id,$newattr{'courseowner'});
+ my $inst_course_id = $newattr{'coursecode'}.$1;
+ my $outcome = &Apache::lonnet::auto_new_course($crs,$dom,$inst_course_id,$newattr{'courseowner'});
unless ($outcome eq 'ok') {
$warning .= &mt("If automatic enrollment is enabled for LON-CAPA course: ").$description.&mt(", automated enrollment may fail for ").$newattr{'coursecode'}.&mt(" - section $1 for the following reason: $outcome.
");
}
@@ -584,7 +595,7 @@ sub modify_course {
if ( (@xlists > 0) && ($changeowner) ) {
foreach my $xlist (@xlists) {
if ($xlist =~ m/^(.+):/) {
- my $outcome = &Apache::lonnet::auto_new_course($homeserver,$1,$newattr{'courseowner'});
+ my $outcome = &Apache::lonnet::auto_new_course($crs,$dom,$1,$newattr{'courseowner'});
unless ($outcome eq 'ok') {
$warning .= &mt("If automatic enrollment is enabled for LON-CAPA course: ").$description.&mt(", automated enrollment may fail for crosslisted class: ").$1.&mt(" for the following reason: $outcome.
");
}
@@ -596,7 +607,7 @@ sub modify_course {
}
} else {
foreach my $attr (@params) {
- $nochgresponse .= "