--- loncom/interface/lonclonecourse.pm 2006/08/11 22:00:08 1.1 +++ loncom/interface/lonclonecourse.pm 2008/01/21 17:47:21 1.5 @@ -1,7 +1,7 @@ # The LearningOnline Network # routines for clone a course # -# $Id: lonclonecourse.pm,v 1.1 2006/08/11 22:00:08 albertel Exp $ +# $Id: lonclonecourse.pm,v 1.5 2008/01/21 17:47:21 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -84,7 +84,6 @@ sub writefile { my $data = &Apache::lonnet::finishuserfileupload( $crsdata{'num'},$crsdata{'domain'}, 'output',$which); - &Apache::lonnet::logthis("gor $data $crsdata{'num'} $crsdata{'domain'}"); return $data; } @@ -92,11 +91,9 @@ sub writefile { sub rewritefile { my ($contents,%rewritehash)=@_; - foreach (keys %rewritehash) { - my $pattern=$_; - $pattern=~s/(\W)/\\$1/gs; - my $new=$rewritehash{$_}; - $contents=~s/$pattern/$new/gs; + foreach my $pattern (keys(%rewritehash)) { + my $new=$rewritehash{$pattern}; + $contents=~s/\Q$pattern\E/$new/gs; } return $contents; } @@ -118,7 +115,9 @@ sub copyfile { '/uploaded/'.$origcrsdata{'domain'}.'/'.$origcrsdata{'num'}.'/' => '/uploaded/'. $newcrsdata{'domain'}.'/'. $newcrsdata{'num'}.'/', '/public/'.$origcrsdata{'domain'}.'/'.$origcrsdata{'num'}.'/' - => '/public/'. $newcrsdata{'domain'}.'/'. $newcrsdata{'num'}.'/' + => '/public/'. $newcrsdata{'domain'}.'/'. $newcrsdata{'num'}.'/', + '/adm/'.$origcrsdata{'domain'}.'/'.$origcrsdata{'num'}.'/' + => '/adm/'.$newcrsdata{'domain'}.'/'.$newcrsdata{'num'}.'/', ))); } } @@ -162,13 +161,6 @@ sub copyresourcedb { $startdate = $start{'default_enrollment_start_date'}; } - my $today=time; - my $delta=0; - if ($startdate) { - my $oneday=60*60*24; - $delta=$today-$startdate; - $delta=int($delta/$oneday)*$oneday; - } # ugly retro fix for broken version of types foreach (keys %data) { if ($_=~/\wtype$/) { @@ -180,31 +172,15 @@ sub copyresourcedb { } # adjust symbs my $pattern='uploaded/'.$origcrsdata{'domain'}.'/'.$origcrsdata{'num'}.'/'; - $pattern=~s/(\W)/\\$1/gs; my $new= 'uploaded/'. $newcrsdata{'domain'}.'/'. $newcrsdata{'num'}.'/'; foreach (keys %data) { - if ($_=~/$pattern/) { + if ($_=~/\Q$pattern\E/) { my $newkey=$_; - $newkey=~s/$pattern/$new/; + $newkey=~s/\Q$pattern\E/$new/; $data{$newkey}=$data{$_}; delete $data{$_}; } } -# adjust dates - foreach (keys %data) { - my $thiskey=$_; - $thiskey=~s/^$origcrsid/$newcrsid/; - $newdata{$thiskey}=$data{$_}; - if ($data{$_.'.type'}=~/^date_(start|end)$/) { - if ($delta > 0) { - $newdata{$thiskey}=$newdata{$thiskey}+$delta; - } else { - # no delta, it's unlikely we want the old dates and times - delete($newdata{$thiskey}); - delete($newdata{$thiskey.'.type'}); - } - } - } return &Apache::lonnet::put ('resourcedata',\%newdata,$newcrsdata{'domain'},$newcrsdata{'num'}); }