--- loncom/interface/lonhtmlcommon.pm 2012/11/29 20:37:07 1.334 +++ loncom/interface/lonhtmlcommon.pm 2012/12/07 17:15:56 1.337 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common html routines # -# $Id: lonhtmlcommon.pm,v 1.334 2012/11/29 20:37:07 raeburn Exp $ +# $Id: lonhtmlcommon.pm,v 1.337 2012/12/07 17:15:56 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1895,12 +1895,9 @@ returns: nothing sub docs_breadcrumbs { my ($allowed,$crstype,$contenteditor,$title,$precleared)=@_; my ($folderpath,@folders); - if ($env{'form.pagepath'}) { - @folders = split('&',$env{'form.pagepath'}); - } else { - @folders = split('&',$env{'form.folderpath'}); - } + my @folders = split('&',$env{'form.folderpath'}); my $plain=''; + my $container = 'sequence'; my ($randompick,$isencrypted,$ishidden,$is_random_order) = (-1,0,0,0); my @docs_crumbs; while (@folders) { @@ -1916,9 +1913,9 @@ sub docs_breadcrumbs { } $url .= &escape($folderpath); my $name=&unescape($foldername); -# each of randompick number, hidden, encrypted, random order are -# appended with ":"s to the foldername - $name=~s/\:(\d*)\:(\w*)\:(\w*):(\d*)$//; +# each of randompick number, hidden, encrypted, random order, is_page +# are appended with ":"s to the foldername + $name=~s/\:(\d*)\:(\w*)\:(\w*):(\d*)\:?(\d*)$//; if ($contenteditor) { if ($1 ne '') { $randompick=$1; @@ -1928,6 +1925,7 @@ sub docs_breadcrumbs { if ($2) { $ishidden=1; } if ($3) { $isencrypted=1; } if ($4 ne '') { $is_random_order = 1; } + if ($5 == 1) {$container = 'page'; } } if ($folder eq 'supplemental') { $name = &mt('Supplemental '.$crstype.' Contents'); @@ -1964,7 +1962,7 @@ sub docs_breadcrumbs { return (&breadcrumbs(undef,undef,$menulink,'nohelp',undef,undef, $contenteditor), $randompick,$ishidden,$isencrypted,$plain, - $is_random_order); + $is_random_order,$container); } else { return \@docs_crumbs; } @@ -3118,7 +3116,7 @@ ENDUTILITY sub jump_to_editres { my ($cfile,$home,$switchserver,$forceedit,$forcereg,$symb,$folderpath, - $title,$idx,$suppurl) = @_; + $title,$idx,$suppurl,$todocs) = @_; my $jscall; if ($switchserver) { if ($home) { @@ -3162,6 +3160,9 @@ sub jump_to_editres { if ($forcereg) { $cfile .= (($cfile=~/\?/)?'&':'?').'register=1'; } + if ($todocs) { + $cfile .= (($cfile=~/\?/)?'&':'?').'todocs=1'; + } } $jscall = "go('$cfile')"; } @@ -3534,6 +3535,40 @@ sub funclist_from_array { { listattr => {class => 'LC_funclist'} }); } +=pod + +=item &actionbox( \@array ) + +Constructs a XHTML list from \@array with the first item being visually +highlighted and set to the value 'Actions'. The list is wrapped in a division. + +The actionlist is used to offer contextual actions, mostly at the bottom +of a page, on which the outcome of an processed action is shown, +e.g. a file operation in Construction Space. + +=over + +=item \@array + +A reference to the array containing text. Details: sub funclist_from_array + +=back + +Returns: XHTML div as string. + +=back + +=cut + +sub actionbox { + my ($items) = @_; + return unless(ref($items) eq 'ARRAY'); + return + '
' + .&funclist_from_array($items, {legend => &mt('Actions')}) + .'
'; +} + 1; __END__