--- loncom/publisher/lonpublisher.pm 2001/10/16 18:46:10 1.49
+++ loncom/publisher/lonpublisher.pm 2002/01/08 21:14:53 1.68
@@ -1,5 +1,30 @@
# The LearningOnline Network with CAPA
# Publication Handler
+#
+# $Id: lonpublisher.pm,v 1.68 2002/01/08 21:14:53 albertel Exp $
+#
+# 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/
+#
#
# (TeX Content Handler
#
@@ -11,11 +36,31 @@
# 04/16/2001 Scott Harrison
# 05/03,05/05,05/07 Gerd Kortemeyer
# 05/28/2001 Scott Harrison
-# 06/23,08/07,08/11,8/13,8/17,8/18,8/24,9/26 Gerd Kortemeyer
-# 10/3,10/8 Scott Harrison
+# 06/23,08/07,08/11,8/13,8/17,8/18,8/24,9/26,10/16 Gerd Kortemeyer
+# 12/04,12/05 Guy Albertelli
+# 12/05 Gerd Kortemeyer
+# 12/05 Guy Albertelli
+# 12/06,12/07 Gerd Kortemeyer
+# 12/15,12/16 Scott Harrison
+# 12/25 Gerd Kortemeyer
+#
+###
+
+###############################################################################
+## ##
+## ORGANIZATION OF THIS PERL MODULE ##
+## ##
+## 1. Modules used by this module ##
+## 2. Various subroutines ##
+## 3. Publication Step One ##
+## 4. Phase Two ##
+## 5. Main Handler ##
+## ##
+###############################################################################
package Apache::lonpublisher;
+# ------------------------------------------------- modules used by this module
use strict;
use Apache::File;
use File::Copy;
@@ -25,11 +70,11 @@ use Apache::lonxml;
use Apache::lonhomework;
use Apache::loncacc;
use DBI;
+use Apache::lonnet();
+use Apache::loncommon();
my %addid;
my %nokey;
-my %language;
-my %cprtag;
my %metadatafields;
my %metadatakeys;
@@ -40,7 +85,6 @@ my $cuname;
my $cudom;
# ----------------------------------------------- Evaluate string with metadata
-
sub metaeval {
my $metastring=shift;
@@ -62,14 +106,14 @@ sub metaeval {
if (defined($token->[2]->{'name'})) {
$unikey.='_'.$token->[2]->{'name'};
}
- map {
+ foreach (@{$token->[3]}) {
$metadatafields{$unikey.'.'.$_}=$token->[2]->{$_};
if ($metadatakeys{$unikey}) {
$metadatakeys{$unikey}.=','.$_;
} else {
$metadatakeys{$unikey}=$_;
}
- } @{$token->[3]};
+ }
if ($metadatafields{$unikey}) {
my $newentry=$parser->get_text('/'.$entry);
unless (($metadatafields{$unikey}=~/$newentry/) ||
@@ -84,7 +128,6 @@ sub metaeval {
}
# -------------------------------------------------------- Read a metadata file
-
sub metaread {
my ($logfile,$fn)=@_;
unless (-e $fn) {
@@ -123,13 +166,17 @@ sub hiddenfield {
}
sub selectbox {
- my ($title,$name,$value,%options)=@_;
- my $selout="\n