--- loncom/interface/londocs.pm 2004/08/17 19:02:57 1.137
+++ loncom/interface/londocs.pm 2004/08/22 18:15:54 1.138
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.137 2004/08/17 19:02:57 albertel Exp $
+# $Id: londocs.pm,v 1.138 2004/08/22 18:15:54 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -36,6 +36,7 @@ use Apache::lonratedt;
use Apache::lonratsrv;
use Apache::lonxml;
use Apache::loncreatecourse;
+use Apache::lonnavmaps;
use HTML::Entities;
use GDBM_File;
use Apache::lonlocal;
@@ -236,6 +237,202 @@ sub dumpcourse {
}
}
+# ------------------------------------------------------ Generate "export" button
+
+sub exportbutton {
+ return '
'.
+ ''.
+ &Apache::loncommon::help_open_topic('Docs_Export_Course_Docs');
+}
+
+sub exportcourse {
+ my $r=shift;
+ my %discussiontime = &Apache::lonnet::dump('discussiontimes',
+ $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, $ENV{'course.'.$ENV{'request.course.id'}.'.num'});
+ my $numdisc = keys %discussiontime;
+ my $navmap = Apache::lonnavmaps::navmap->new();
+ my $it=$navmap->getIterator(undef,undef,undef,1,undef,undef);
+ my $curRes;
+
+ &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
+ ['finishexport']);
+ if ($ENV{'form.finishexport'}) {
+ &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
+ ['archive','discussion']);
+
+ my @exportitems = ();
+ if (defined($ENV{'form.archive'})) {
+ if (ref($ENV{'form.archive'}) eq 'ARRAY') {
+ @exportitems = @{$ENV{'form.archive'}};
+ } else {
+ $exportitems[0] = $ENV{'form.archive'};
+ }
+ }
+ my @discussions = ();
+ if (defined($ENV{'form.discussion'})) {
+ if (ref($ENV{'form.discussion'}) eq 'ARRAY') {
+ @discussions = $ENV{'form.discussion'};
+ } else {
+ $discussions[0] = $ENV{'form.discussion'};
+ }
+ }
+ my $curRes;
+ my $count;
+ my %symbs;
+ my $display;
+ while ($curRes = $it->next()) {
+ if (ref($curRes)) {
+ $count ++;
+ $symbs{$count} = $curRes->symb();
+ if (grep/^$count$/,@exportitems) {
+ $display.= 'Export content item '.$curRes->title()." \n";
+ }
+ if (grep/^$count$/,@discussions) {
+ $display.= 'Export discussion posts '.$curRes->title()." \n";
+ }
+ }
+ }
+
+ $r->print('Export Course'.
+ &Apache::loncommon::bodytag('Export course to IMS or SCORM content package'
+));
+
+ my $exportfile;
+ $r->print($display);
+ $r->print(' |