--- loncom/publisher/lonpublisher.pm 2005/05/19 03:22:04 1.194 +++ loncom/publisher/lonpublisher.pm 2005/05/20 18:28:22 1.195 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Publication Handler # -# $Id: lonpublisher.pm,v 1.194 2005/05/19 03:22:04 www Exp $ +# $Id: lonpublisher.pm,v 1.195 2005/05/20 18:28:22 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1020,7 +1020,7 @@ sub publish { } # ------------------------------------------------ First, check out environment - unless (-e $source.'.meta') { + if ((!(-e $source.'.meta')) || ($env{'form.forceoverride'})) { $metadatafields{'author'}=$env{'environment.firstname'}.' '. $env{'environment.middlename'}.' '. $env{'environment.lastname'}.' '. @@ -1070,10 +1070,18 @@ sub publish { delete $metadatafields{$_}; } } +# ------------------------------------------------------------- Save some stuff + my %savemeta=(); + foreach ('title') { + $savemeta{$_}=$metadatafields{$_}; + } # ------------------------------------------ See if anything new in file itself $allmeta=&parseformeta($source,$style); - +# ----------------------------------------------------------- Restore the stuff + foreach (keys %savemeta) { + $metadatafields{$_}=$savemeta{$_}; + } } @@ -1335,6 +1343,7 @@ END &hiddenfield('copyright',$metadatafields{'copyright'}). &hiddenfield('sourceavail',$metadatafields{'sourceavail'}). &hiddenfield('customdistributionfile',$metadatafields{'customdistributionfile'}). + &hiddenfield('obsolete',1). &text_with_browse_field('Suggested Replacement for Obsolete File', 'obsoletereplacement', $metadatafields{'obsoletereplacement'}); @@ -1739,17 +1748,9 @@ sub publishdirectory { &hiddenfield('filename',$env{'form.filename'}). &checkbox('pubrec','include subdirectories'). &checkbox('forcerepub','force republication of previously published files'). - &checkbox('forceobsolete','make file(s) obsolete')); - my %allcopyrights=('keep','Keep current copyright'); - my %ratcopyrights=%allcopyrights; - foreach (&Apache::loncommon::copyrightids) { - $allcopyrights{$_}=&Apache::loncommon::copyrightdescription($_); - unless ($_ eq 'public') { $ratcopyrights{$_}=$allcopyrights{$_}; } - } - $r->print('
'.&mt('Copyright for all files:').&Apache::loncommon::select_form('keep','forceallcopy',%allcopyrights)); - $r->print('
'.&mt('Copyright for pages/sequences:').&Apache::loncommon::select_form('keep','forceratcopy',%ratcopyrights)); - $r->print(&text_with_browse_field('Custom Distribution File','forcecustomfile')); - $r->print('
'); + &checkbox('forceobsolete','make file(s) obsolete'). + &checkbox('forceoverride','force directory level catalog information over existing'). + '
'); } else { # actually publish things opendir(DIR,$fn);