--- loncom/imspackages/imsimportdocs.pm 2004/03/21 20:44:58 1.5 +++ loncom/imspackages/imsimportdocs.pm 2004/12/13 20:01:09 1.8 @@ -1,3 +1,26 @@ +# Copyright Michigan State University Board of Trustees +# +# This file is part of the LearningOnline Network with CAPA (LON-CAPA). +# +# LON-CAPA is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# LON-CAPA is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LON-CAPA; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# /home/httpd/html/adm/gpl.txt +# +# http://www.lon-capa.org/ +# + package Apache::imsimportdocs; use Apache::Constants qw(:common :http :methods); @@ -135,7 +158,7 @@ sub handler { my $allowed=&Apache::lonnet::allowed('mdc',$ENV{'request.course.id'}); unless ($allowed) { $r->print("The LearningOnline Network with CAPA"); - $r->print(&Apache::loncommon::bodytag('Import IMS package')); + $r->print(&Apache::loncommon::bodytag('Import IMS package',undef,'',1)); $r->print('

'.&mt('Modification of Course Contents Disallowed').'

'.&mt('Your current role does not grant you the right to modify course content in this course.').''); return OK; } @@ -164,7 +187,7 @@ $javascript ENDHEAD # -------------------------------------------------------------------- Body tag - $r->print(&Apache::loncommon::bodytag('Import IMS package')); + $r->print(&Apache::loncommon::bodytag('Import IMS package',undef,'',1)); if ($ENV{'form.phase'} eq 'one') { &display_one($r); } elsif ($ENV{'form.phase'} eq 'two') { @@ -210,6 +233,7 @@ Please choose the CMS used to create you @@ -310,7 +334,7 @@ sub display_two { $manifest_result = &Apache::imsprocessor::process_manifest($cms,$tempdir,\%resources,\%items,\%hrefs,\%resinfo); if ($manifest_result eq 'ok') { foreach my $res (sort keys %resources) { - if ($cms eq 'bb5') { + if ($cms eq 'bb5' || $cms eq 'bb6') { foreach my $area (keys %{$cmsmap{$cms}}) { if ($resources{$res}{type} eq $cmsmap{$cms}{$area}) { $count{$area} ++; @@ -505,7 +529,6 @@ sub display_three { my $timenow = time; my $destdir = $Apache::lonnet::perlvar{'lonDocRoot'}.'/userfiles/'.$cdom.'/'.$crs.'/'.$timenow; - my $dirname = $cdom.'/'.$crs.'/'.$timenow; my $seqstem = "/uploaded/$cdom/$crs/$timenow"; my $db_handling = ''; my $user_handling = ''; @@ -519,9 +542,9 @@ sub display_three { if (defined($ENV{'form.foldername'}) ) { $foldername = $ENV{'form.foldername'}; } - + foreach my $area (@{$areas}) { - if (defined($ENV{"form.$area"}) ) { + if (defined($ENV{"form.$area"}) && ($ENV{'form.'.$area} ne '')) { if ($cms eq 'angel' && $area eq 'doc') { foreach (@{$cmsmap{$cms}{$area}}) { $imports{$_} = 1; @@ -554,7 +577,6 @@ sub display_three { } } &Apache::imsprocessor::target_resources(\%resources,\%imports,\@targets); - my $copy_result = &Apache::imsprocessor::copy_resources('DOCS',$cms,\%hrefs,$tempdir,\@targets,\%urls,$crs,$cdom,$chome,$destdir,$timenow); my @boards = (); my @announcements = (); @@ -566,10 +588,13 @@ sub display_three { my %boardnum = (); my @topurls = (); my @topnames = (); + my @packages = (); + + &Apache::imsprocessor::process_resinfo($cms,'DOCS',$tempdir,$destdir,\%items,\%resources,\@boards,\@announcements,\@quizzes,\@surveys,\@groups,\%messages,\@timestamp,\%boardnum,\%resinfo,$udom,$uname,$cdom,$crs,$db_handling,$user_handling,\%total,$seqstem,$seqstem,\@resrcfiles,\@packages,\%hrefs,\@pages,\@sequences); - &Apache::imsprocessor::process_resinfo($cms,$tempdir,$destdir,\%items,\%resources,\@boards,\@announcements,\@quizzes,\@surveys,\@groups,\%messages,\@timestamp,\%boardnum,\%resinfo,$udom,$uname,$cdom,$crs,$db_handling,$user_handling,\%total,$dirname,$seqstem,\@resrcfiles); + my $copy_result = &Apache::imsprocessor::copy_resources('DOCS',$cms,\%hrefs,$tempdir,\@targets,\%urls,$crs,$cdom,$chome,$destdir,$timenow); - &Apache::imsprocessor::build_structure($cms,'DOCS',$destdir,\%items,\%resinfo,\%resources,\%hrefs,$udom,$uname,'',$timenow,$cdom,$crs,\@timestamp,\%total,\@boards,\@announcements,\@quizzes,\@surveys,\%boardnum,\@pages,\@sequences,\@topurls,\@topnames); + &Apache::imsprocessor::build_structure($cms,'DOCS',$destdir,\%items,\%resinfo,\%resources,\%hrefs,$udom,$uname,'',$timenow,$cdom,$crs,\@timestamp,\%total,\@boards,\@announcements,\@quizzes,\@surveys,\%boardnum,\@pages,\@sequences,\@topurls,\@topnames,\@packages); foreach my $item (@pages) { my $filename = $timenow.'/pages/'.$item; @@ -605,7 +630,7 @@ sub display_three { $Apache::lonratedt::order[0]=1; $Apache::lonratedt::resources[1]=''; } - my ($errtext,$fatal)=&Apache::londocs::group_import($crs, $cdom, $folder,@imports); + my ($errtext,$fatal)=&Apache::londocs::group_import($crs,$cdom,$folder,'sequence','imsimport',@imports); if ($fatal) { print STDERR "Fatal error during group_import\n"; } @@ -645,7 +670,7 @@ ENDBLOCK |; - $initblock .= &mt('or the next time you log in.'); + $initblock .= ', '.&mt('or the next time you log in.'); $initblock .= qq||; $r->print($initblock); $r->print(<