--- loncom/publisher/lonpublisher.pm 2023/07/14 20:16:04 1.302 +++ loncom/publisher/lonpublisher.pm 2023/07/14 22:19:22 1.303 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Publication Handler # -# $Id: lonpublisher.pm,v 1.302 2023/07/14 20:16:04 raeburn Exp $ +# $Id: lonpublisher.pm,v 1.303 2023/07/14 22:19:22 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2288,7 +2288,7 @@ sub batchpublish { ######################################### sub publishdirectory { - my ($r,$fn,$thisdisfn,$nokeyref)=@_; + my ($r,$fn,$thisdisfn,$nokeyref,$crsauthor)=@_; $fn=~s/\/+/\//g; $thisdisfn=~s/\/+/\//g; my $thisdisresdir=$thisdisfn; @@ -2329,10 +2329,12 @@ sub publishdirectory { &checkbox('excludemodmeta','exclude files with modified metadata'). ''. '
'.&mt('Actions').''. - &checkbox('obsolete','make file(s) obsolete').'
'. - &common_access('dist',&mt('apply common copyright/distribution'), - ['default','domain','public','custom']).'
'. - &common_access('source',&mt('apply common source availability'), + &checkbox('obsolete','make file(s) obsolete').'
'); + unless ($crsauthor) { + $r->print(&common_access('dist',&mt('apply common copyright/distribution'), + ['default','domain','public','custom']).'
'); + } + $r->print(&common_access('source',&mt('apply common source availability'), ['closed','open']). '
' ); @@ -2361,7 +2363,7 @@ sub publishdirectory { if ($filename=~/\.(\w+)$/) { $extension=$1; } if ($cmode&$dirptr) { if (($filename!~/^\./) && ($env{'form.pubrec'})) { - &publishdirectory($r,$fn.'/'.$filename,$thisdisfn.'/'.$filename,$nokeyref); + &publishdirectory($r,$fn.'/'.$filename,$thisdisfn.'/'.$filename,$nokeyref,$crsauthor); } } elsif ((&Apache::loncommon::fileembstyle($extension) ne 'hdn') && ($filename!~/^[\#\.]/) && ($filename!~/\~$/)) { @@ -2609,11 +2611,13 @@ sub handler { &Apache::lonhtmlcommon::clear_breadcrumbs(); my $crumbtext = 'Authoring Space'; my $crumbhref = &Apache::loncommon::authorspace($fn); + my $crsauthor; if ($env{'request.course.id'}) { my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; if ($crumbhref eq "/priv/$cdom/$cnum/") { $crumbtext = 'Course Authoring Space'; + $crsauthor = 1; } } &Apache::lonhtmlcommon::add_breadcrumb({ @@ -2688,7 +2692,7 @@ END if ($fn=~/\/$/) { # -------------------------------------------------------- This is a directory - &publishdirectory($r,$docroot.$fn,$thisdisfn,$nokeyref); + &publishdirectory($r,$docroot.$fn,$thisdisfn,$nokeyref,$crsauthor); $r->print( '

'. &Apache::lonhtmlcommon::actionbox([