--- loncom/interface/loncreatecourse.pm 2004/05/08 00:48:30 1.56 +++ loncom/interface/loncreatecourse.pm 2004/06/17 18:31:24 1.60 @@ -1,7 +1,7 @@ -# The LearningOnline Network +#meserver The LearningOnline Network # Create a course # -# $Id: loncreatecourse.pm,v 1.56 2004/05/08 00:48:30 www Exp $ +# $Id: loncreatecourse.pm,v 1.60 2004/06/17 18:31:24 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -42,6 +42,7 @@ use localenroll; # ================================================ Get course directory listing +#FIXME - doesn't support directories under /userfiles/ BUG#2999 sub crsdirlist { my ($courseid,$which)=@_; unless ($which) { $which=''; } @@ -51,6 +52,7 @@ sub crsdirlist { &Apache::loncommon::propath($crsdata{'domain'},$crsdata{'num'})); my @output=(); foreach (@listing) { + #FIXME if list is a DIR need to recurse unless ($_=~/^\./) { push (@output,(split(/\&/,$_))[0]); } @@ -236,7 +238,8 @@ sub print_course_creation_page { my $coursebrowserjs=&Apache::loncommon::coursebrowser_javascript(); my $starttime = time; my $endtime = time+(6*30*24*60*60); # 6 months from now, approx - my $date_table = &Apache::londropadd::date_setting_table($starttime,$endtime,'createcourse'); + my $enroll_table = &Apache::londropadd::date_setting_table($starttime,$endtime,'create_enrolldates'); + my $access_table = &Apache::londropadd::date_setting_table($starttime,$endtime,'create_defaultdates'); my ($krbdef,$krbdefdom) = &Apache::loncommon::get_kerberos_defaults($defdom); my $javascript_validations=&Apache::londropadd::javascript_validations('createcourse',$krbdefdom); @@ -298,6 +301,7 @@ sub print_course_creation_page { 'no' => "No", 'audr' => "Automated drops", 'dacu' => "Duration of automated classlist updates", + 'dacc' => "Default start and end dates for student access", 'psam' => "Please select the authentication mechanism", 'pcda' => "Please choose the default authentication method to be used by new users added to this LON-CAPA domain by the automated enrollment process", 'nech' => "Notification of enrollment changes", @@ -434,8 +438,11 @@ $lt{'aesc'} $lt{'yes'} $lt{'no'}

$lt{'dacu'} -$date_table +$enroll_table

+$lt{'dacc'} +$access_table +

$lt{'psam'}.
$lt{'pcda'}.

@@ -477,6 +484,7 @@ ENDDOCUMENT sub create_course { my $r=shift; my $topurl='/res/'.&Apache::lonnet::declutter($ENV{'form.topmap'}); + my $this_server = $Apache::lonnet::perlvar{'lonHostID'}; my $ccuname=$ENV{'form.ccuname'}; my $ccdomain=$ENV{'form.ccdomain'}; $ccuname=~s/\W//g; @@ -625,7 +633,7 @@ ENDENHEAD if (@affiliates > 0) { my @badclasses = (); foreach my $class (@affiliates) { - my $addcheck = &localenroll::new_course($class,$cenv{'internal.courseowner'}); + my $addcheck = &Apache::lonnet::auto_new_course($crsunum,$crsudom,$class,$cenv{'internal.courseowner'}); unless ($addcheck eq 'ok') { push @badclasses, $class; } @@ -639,13 +647,17 @@ ENDENHEAD $r->print ("

\n"); } } - my $startdate = &Apache::lonhtmlcommon::get_date_from_form('startdate'); - my $enddate = &Apache::lonhtmlcommon::get_date_from_form('enddate'); + my $enrollstart = &Apache::lonhtmlcommon::get_date_from_form('startenroll'); + my $enrollend = &Apache::lonhtmlcommon::get_date_from_form('endenroll'); + my $startaccess = &Apache::lonhtmlcommon::get_date_from_form('startaccess'); + my $endaccess = &Apache::lonhtmlcommon::get_date_from_form('endaccess'); if ($ENV{'form.no_end_date'}) { - $enddate = 0; + $endaccess = 0; } - $cenv{'internal.autostart'}=$startdate; - $cenv{'internal.autoend'}=$enddate; + $cenv{'internal.autostart'}=$enrollstart; + $cenv{'internal.autoend'}=$enrollend; + $cenv{'default_enrollment_start_date'}=$startaccess; + $cenv{'default_enrollment_end_date'}=$endaccess; if ($ENV{'form.showphotos'}) { $cenv{'internal.showphotos'}=$ENV{'form.showphotos'}; }