--- rat/lonratmenu.pm 2009/06/03 17:13:26 1.13
+++ rat/lonratmenu.pm 2022/05/29 11:47:01 1.24
@@ -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.13 2009/06/03 17:13:26 bisitz Exp $
+# $Id: lonratmenu.pm,v 1.24 2022/05/29 11:47:01 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -32,58 +32,131 @@ 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();",);
- $r->print(&Apache::loncommon::start_page('Advanced Editor',$js,
- {'add_entries' => \%loaditem})
- .&Apache::lonhtmlcommon::breadcrumbs() # FIXME add breadcrumbs
- .&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";
-
-
-END
- return $pagetext;
+ my $target = '_top';
+ if ((($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) ||
+ (($env{'request.deeplink.login'}) && ($env{'request.deeplink.target'}))) {
+ $target = '_parent';
+ }
+
+ # Breadcrumbs
+ my $brcrum = [{'href' => &Apache::loncommon::authorspace($r->uri),
+ 'text' => 'Authoring Space',
+ 'target' => $target},
+ {'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 = ''; # End: LC_columnSection
+
+ $functions .= &Apache::lonhtmlcommon::scripttag('main();');
+
+
+ # Print Advanced RAT page header
+ $r->send_http_header('text/html');
+ my $frameset = 1;
+
+ $r->print(
+ &Apache::loncommon::start_page(
+ 'Advanced Editor',
+ $js,
+ {'add_entries' => \%loaditem,
+ 'bread_crumbs' => $brcrum,
+ 'links_target' => '_parent',})
+
+ .&Apache::loncommon::head_subbox(
+ &Apache::loncommon::CSTR_pageheader('',$frameset)
+ .$functions)
+
+ .&Apache::loncommon::end_page()
+ );
+
+ return OK;
}
1;