--- loncom/interface/lonrequestcourse.pm 2015/07/14 00:11:48 1.92 +++ loncom/interface/lonrequestcourse.pm 2015/08/24 14:50:22 1.93 @@ -1,7 +1,7 @@ # The LearningOnline Network # Request a course # -# $Id: lonrequestcourse.pm,v 1.92 2015/07/14 00:11:48 raeburn Exp $ +# $Id: lonrequestcourse.pm,v 1.93 2015/08/24 14:50:22 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -3667,7 +3667,7 @@ sub process_request { } $storeresult = 'notpermitted'; } else { - my ($disposition,$message,$reqstatus,$coursedesc,%customvalidation); + my ($disposition,$message,$reqstatus,$coursedesc,$accessstart,$accessend,%customvalidation); my %reqhash = ( reqtime => $now, crstype => $crstype, @@ -3679,6 +3679,8 @@ sub process_request { $env{'user.domain'}); if (ref($details) eq 'HASH') { $coursedesc = $details->{'cdescr'}; + $accessstart = $details->{'accessstart'}; + $accessend = $details->{'accessend'}; } if ($val eq 'autolimit=') { $disposition = 'process'; @@ -3786,6 +3788,9 @@ sub process_request { $customitems{'_LC_owneremail'} = $owneremail; } $customitems{'_LC_coursedomainname'} = &Apache::lonnet::domain($dom,'description'); + $customitems{'_LC_coursedescription'} = $coursedesc; + $customitems{'_LC_coursestartdate'} = $accessstart; + $customitems{'_LC_courseenddate'} = $accessend; my ($result,$postprocess) = &Apache::loncoursequeueadmin::course_creation($dom,$cnum, 'autocreate',$details,\$logmsg,\$newusermsg,\$addresult, \$enrollcount,\$response,\$keysmsg,\%domdefs,\%longroles, @@ -4742,13 +4747,13 @@ sub print_textbook_form { if (keys(%cloneable)) { $r->print(''); } # @@ -4757,13 +4762,13 @@ sub print_textbook_form { if (keys(%domcloneable)) { $r->print(''); } @@ -4983,9 +4988,28 @@ sub process_textbook_request { accessend => $accessend, personnel => {}, }; - if ($reqtype eq 'existing') { - $details->{datemode} = $env{'form.datemode'}; - $details->{dateshift} = $env{'form.dateshift'}; + if (($clonecrs ne '') && ($clonedom ne '')) { + if ($reqtype eq 'existing') { + $details->{datemode} = $env{'form.owndatemode'}; + if ($details->{datemode} eq 'shift') { + $details->{dateshift} = $env{'form.owndateshift'}; + } else { + $details->{dateshift} = ''; + } + } elsif ($reqtype eq 'colleague') { + $details->{datemode} = $env{'form.colldatemode'}; + if ($details->{datemode} eq 'shift') { + $details->{dateshift} = $env{'form.colldateshift'}; + } else { + $details->{dateshift} = ''; + } + } + if ($details->{dateshift} ne '') { + $details->{dateshift} =~ s/[^\d\.]+//g; + } + } else { + $details->{datemode} = ''; + $details->{dateshift} = ''; } my $lonhost = $r->dir_config('lonHostID'); $r->rflush();