\n";
$colcount=0;
@@ -1076,15 +1081,22 @@ END
$scrout.=&textfield('Notes','notes',$metadatafields{'notes'});
$scrout.=
- 'Abstract:
';
+ "\n
ABSTRACT:".
+ "
".
+ '';
$source=~/\.(\w+)$/;
$scrout.=&hiddenfield('mime',$1);
+ my $defaultlanguage=$metadatafields{'language'};
+ $defaultlanguage =~ s/\s*notset\s*//g;
+ $defaultlanguage =~ s/^,\s*//g;
+ $defaultlanguage =~ s/,\s*$//g;
+
$scrout.=&selectbox('Language','language',
- $metadatafields{'language'},
+ $defaultlanguage,
\&Apache::loncommon::languagedescription,
(&Apache::loncommon::languageids),
);
@@ -1102,18 +1114,21 @@ END
$metadatafields{'owner'});
# -------------------------------------------------- Correct copyright for rat.
+ my $defaultoption=$metadatafields{'copyright'};
+ unless ($defaultoption) { $defaultoption='default'; }
unless ($style eq 'prv') {
if ($style eq 'rat') {
if ($metadatafields{'copyright'} eq 'public') {
delete $metadatafields{'copyright'};
+ $defaultoption='default';
}
$scrout.=&selectbox('Copyright/Distribution','copyright',
- $metadatafields{'copyright'},
+ $defaultoption,
\&Apache::loncommon::copyrightdescription,
(grep !/^public$/,(&Apache::loncommon::copyrightids)));
} else {
$scrout.=&selectbox('Copyright/Distribution','copyright',
- $metadatafields{'copyright'},
+ $defaultoption,
\&Apache::loncommon::copyrightdescription,
(&Apache::loncommon::copyrightids));
}
@@ -1140,7 +1155,7 @@ END
$ENV{'form.keywords'}='';
foreach (keys %keywords) {
if ($metadatafields{'keywords'}) {
- if ($metadatafields{'keywords'}=~/$_/) {
+ if ($metadatafields{'keywords'}=~/\Q$_\E/) {
$ENV{'form.keywords'}.=$_.',';
}
} elsif (&Apache::loncommon::keyword($_)) {
@@ -1274,7 +1289,7 @@ sub phasetwo {
.''.$tag.'>';
}
}
- $r->print('Wrote Metadata');
+ $r->print('
Wrote Metadata
');
print $logfile "\nWrote metadata";
}
@@ -1285,14 +1300,14 @@ sub phasetwo {
unless ($metadatafields{'copyright'} eq 'priv') {
my ($error,$success) = &store_metadata(\%metadatafields);
if ($success) {
- $r->print('Synchronized SQL metadata database');
+ $r->print('
Synchronized SQL metadata database
');
print $logfile "\nSynchronized SQL metadata database";
} else {
$r->print($error);
print $logfile "\n".$error;
}
} else {
- $r->print('Private Publication - did not synchronize database');
+ $r->print('
Private Publication - did not synchronize database
');
print $logfile "\nPrivate: Did not synchronize data into ".
"SQL metadata database";
}
@@ -1322,14 +1337,14 @@ sub phasetwo {
}
closedir(DIR);
$maxversion++;
- $r->print('Creating old version '.$maxversion);
+ $r->print('
Creating old version '.$maxversion.'
');
print $logfile "\nCreating old version ".$maxversion;
my $copyfile=$srcd.'/'.$srcf.'.'.$maxversion.'.'.$srct;
if (copy($target,$copyfile)) {
print $logfile "Copied old target to ".$copyfile."\n";
- $r->print('Copied old target file');
+ $r->print('
Copied old target file
');
} else {
print $logfile "Unable to write ".$copyfile.':'.$!."\n";
return "Failed to copy old target, $!, FAIL";
@@ -1341,7 +1356,7 @@ sub phasetwo {
if (copy($target.'.meta',$copyfile)) {
print $logfile "Copied old target metadata to ".$copyfile."\n";
- $r->print('Copied old metadata')
+ $r->print('
Copied old metadata
')
} else {
print $logfile "Unable to write metadata ".$copyfile.':'.$!."\n";
if (-e $target.'.meta') {
@@ -1352,7 +1367,7 @@ sub phasetwo {
} else {
- $r->print('Initial version');
+ $r->print('
Initial version
');
print $logfile "\nInitial version";
}
@@ -1367,14 +1382,14 @@ sub phasetwo {
$path.="/$parts[$count]";
if ((-e $path)!=1) {
print $logfile "\nCreating directory ".$path;
- $r->print('Created directory '.$parts[$count]);
+ $r->print('
Created directory '.$parts[$count].'
');
mkdir($path,0777);
}
}
if (copy($source,$copyfile)) {
print $logfile "\nCopied original source to ".$copyfile."\n";
- $r->print('Copied source file');
+ $r->print('
Copied source file
');
} else {
print $logfile "\nUnable to write ".$copyfile.':'.$!."\n";
return "Failed to copy source, $!, FAIL";
@@ -1386,7 +1401,7 @@ sub phasetwo {
if (copy($source.'.meta',$copyfile)) {
print $logfile "\nCopied original metadata to ".$copyfile."\n";
- $r->print('Copied metadata');
+ $r->print('
Copied metadata
');
} else {
print $logfile "\nUnable to write metadata ".$copyfile.':'.$!."\n";
return
@@ -1400,7 +1415,7 @@ sub phasetwo {
$r->print('Notifying host '.$subhost.':');$r->rflush;
print $logfile "\nNotifying host ".$subhost.':';
my $reply=&Apache::lonnet::critical('update:'.$target,$subhost);
- $r->print($reply.'
');$r->rflush;
+ $r->print($reply.'
');$r->rflush;
print $logfile $reply;
}
@@ -1412,7 +1427,7 @@ sub phasetwo {
print $logfile "\nNotifying host for metadata only ".$subhost.':';
my $reply=&Apache::lonnet::critical('update:'.$target.'.meta',
$subhost);
- $r->print($reply.'
');$r->rflush;
+ $r->print($reply.'
');$r->rflush;
print $logfile $reply;
}
@@ -1425,13 +1440,13 @@ sub phasetwo {
my ($cdom,$cname)=split(/\_/,$_);
my $reply=&Apache::lonnet::cput
('versionupdate',{$target => $now},$cdom,$cname);
- $r->print($reply.'
');$r->rflush;
+ $r->print($reply.'
');$r->rflush;
print $logfile $reply;
}
# ------------------------------------------------ Provide link to new resource
unless ($batch) {
my $thisdistarget=$target;
- $thisdistarget=~s/^$docroot//;
+ $thisdistarget=~s/^\Q$docroot\E//;
my $thissrc=$source;
$thissrc=~s/^\/home\/(\w+)\/public_html/\/priv\/$1/;
@@ -1441,11 +1456,11 @@ sub phasetwo {
$r->print(
- '
'.
+ '
'.
'View Published Version'.
- 'Back to Source'.
+ '
Back to Source
'.
'Back to Source Directory');
+ '">Back to Source Directory
');
}
}
@@ -1461,7 +1476,7 @@ sub batchpublish {
my $docroot=$r->dir_config('lonDocRoot');
my $thisdistarget=$targetfile;
- $thisdistarget=~s/^$docroot//;
+ $thisdistarget=~s/^\Q$docroot\E//;
undef %metadatafields;
@@ -1528,7 +1543,7 @@ sub publishdirectory {
$ruid,$rgid,$rrdev,$rsize,
$ratime,$rmtime,$rctime,
$rblksize,$rblocks)=stat($resdir.'/'.$filename);
- if ($rmtime<$cmtime) {
+ if (($rmtime<$cmtime) || ($ENV{'form.forcerepub'})) {
# previously published, modified now
$publishthis=1;
}
@@ -1698,10 +1713,10 @@ unless ($ENV{'form.phase'} eq 'two') {
$thistarget=~s/\/public\_html//;
my $thisdistarget=$thistarget;
- $thisdistarget=~s/^$docroot//;
+ $thisdistarget=~s/^\Q$docroot\E//;
my $thisdisfn=$thisfn;
- $thisdisfn=~s/^\/home\/$cuname\/public_html\///;
+ $thisdisfn=~s/^\/home\/\Q$cuname\E\/public_html\///;
if ($fn=~/\/$/) {
# -------------------------------------------------------- This is a directory
@@ -1716,7 +1731,7 @@ unless ($ENV{'form.phase'} eq 'two') {
$r->print('Publishing '.
&Apache::loncommon::filedescription($thistype).' '.
''.$thisdisfn.
- '
Target: '.$thisdistarget.'');
+ 'Target: '.$thisdistarget.'
');
if (($cuname ne $ENV{'user.name'}) || ($cudom ne $ENV{'user.domain'})) {
$r->print('
Co-Author: '.$cuname.' at '.$cudom.
@@ -1726,7 +1741,7 @@ unless ($ENV{'form.phase'} eq 'two') {
if (&Apache::loncommon::fileembstyle($thistype) eq 'ssi') {
$r->print('
Diffs with Current Version');
+ '&versiontwo=priv" target="cat">Diffs with Current Version
');
}
# ------------------ Publishing from $thisfn to $thistarget with $thisembstyle.