--- rat/lonratmenu.pm 2009/06/09 15:01:28 1.14 +++ rat/lonratmenu.pm 2009/12/04 15:13:04 1.15 @@ -2,7 +2,7 @@ # Build menu bar for Advanced RAT. Uses javascript code originally in # static file: rat/client/code.html, now in rat/client/ratcode.js # -# $Id: lonratmenu.pm,v 1.14 2009/06/09 15:01:28 bisitz Exp $ +# $Id: lonratmenu.pm,v 1.15 2009/12/04 15:13:04 bisitz Exp $ # # Copyright Michigan State University Board of Trustees # @@ -32,65 +32,122 @@ use strict; use Apache::Constants qw(:common); use Apache::File; use Apache::loncommon; +use Apache::lonhtmlcommon; +use Apache::lonlocal; use Apache::lonnet; sub handler { my $r = shift; my $include = $Apache::lonnet::perlvar{'lonIncludes'}; my $jsh=Apache::File->new($include."/ratcode.js"); - $r->send_http_header('text/html'); my $js = join('',<$jsh>); my %loaditem = ('onunload' => "leave();",); - my $brcrum = [{'href' => &Apache::loncommon::authorspace(), - 'text' => 'Construction Space'}, - {'href' => '', - 'text' => 'RAT'}, - {'href' => '', - 'text' => 'Advanced Editor'}]; - - $r->print(&Apache::loncommon::start_page('Advanced Editor',$js, - {'add_entries' => \%loaditem, - 'bread_crumbs' => $brcrum,}) - .&Apache::loncommon::head_subbox( - &Apache::loncommon::CSTR_pageheader()) - ); + my $readfile=$r->uri; $readfile=~s/\/loadonly\/adveditmenu$//; - $r->print(&print_html($readfile)); - $r->print(&Apache::loncommon::end_page()); - return OK; -} -sub print_html { - my $readfile=shift; - my $help=&Apache::loncommon::help_open_menu('Sequence_Advanced_Editor_Creation','Sequence_Advanced_Editor_Creation',6,'RAT'); - - my $pagetext = <<"END"; -
- - - - - - - - - - - - - - - - - -
$helpToggle displayZoom outZoom inCondenseStraightenRevertUndoRedoRecover deletedSearchImportImport BookmarksCopySave mapSave map and layout
-
- -END - return $pagetext; + # Breadcrumbs + my $brcrum = [{'href' => &Apache::loncommon::authorspace(), + 'text' => 'Construction Space'}, + {'href' => '', + 'text' => 'RAT'}, + {'href' => '', + 'text' => 'Advanced Editor'}]; + + my $help=&Apache::loncommon::help_open_menu( + 'Sequence_Advanced_Editor_Creation', + 'Sequence_Advanced_Editor_Creation',6,'RAT'); + + + # Compile available Advanced RAT functions + my $functions = '
'; + + $functions .= $help; # FIXME: Move help to bread_crumbs_component + + $functions .= + &Apache::lonhtmlcommon::start_funclist(&mt('Display Actions')) + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Toggle display').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Zoom out').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Zoom in').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Condense').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Straighten').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Revert').'') + .&Apache::lonhtmlcommon::end_funclist(); + + $functions .= + &Apache::lonhtmlcommon::start_funclist(&mt('Version Actions')) + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Undo').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Redo').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Recover deleted').'') + .&Apache::lonhtmlcommon::end_funclist(); + + $functions .= + &Apache::lonhtmlcommon::start_funclist(&mt('Import')) + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Search').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Import').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Import Bookmarks').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Copy').'') + .&Apache::lonhtmlcommon::end_funclist(); + + $functions .= + &Apache::lonhtmlcommon::start_funclist(&mt('Save')) + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Save map').'') + .&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Save map and layout').'') + .&Apache::lonhtmlcommon::end_funclist(); + + $functions .= '
'; # End: LC_columnSection + + $functions .= &Apache::lonhtmlcommon::scripttag('main();'); + + + # Print Advanced RAT page header + $r->send_http_header('text/html'); + + $r->print( + &Apache::loncommon::start_page( + 'Advanced Editor', + $js, + {'add_entries' => \%loaditem, + 'bread_crumbs' => $brcrum,}) + + .&Apache::loncommon::head_subbox( + &Apache::loncommon::CSTR_pageheader() + .$functions) + + .&Apache::loncommon::end_page() + ); + + return OK; } 1;