--- loncom/interface/loncommon.pm 2010/03/18 17:25:52 1.960
+++ loncom/interface/loncommon.pm 2010/05/03 15:03:55 1.966
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.960 2010/03/18 17:25:52 bisitz Exp $
+# $Id: loncommon.pm,v 1.966 2010/05/03 15:03:55 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -4539,10 +4539,6 @@ Inputs:
=item * $bgcolor, used to override the bgcolor on a webpage to a specific value
-#SD
-#RC =item * $no_inline_link, if true and in remote mode, don't show the
-#RC 'Switch To Inline Menu' link
-#RC
=item * $args, optional argument valid values are
no_auto_mt_title -> prevents &mt()ing the title arg
inherit_jsmath -> when creating popup window in a page,
@@ -4560,7 +4556,7 @@ other decorations will be returned.
sub bodytag {
my ($title,$function,$addentries,$bodyonly,$domain,$forcereg,
- $no_nav_bar,$bgcolor,$no_inline_link,$args)=@_;
+ $no_nav_bar,$bgcolor,$args)=@_;
my $public;
if ((($env{'user.name'} eq 'public') && ($env{'user.domain'} eq 'public'))
@@ -4602,8 +4598,6 @@ sub bodytag {
}
if (!$realm) { $realm=' '; }
-# Set messages
- my $messages=&domainlogo($domain);
my $extra_body_attr = &make_attr_string($forcereg,\%design);
@@ -4637,7 +4631,6 @@ sub bodytag {
$role = '('.$role.')' if $role;
&get_unprocessed_cgi($ENV{'QUERY_STRING'}, ['inhibitmenu']);
- # No Remote
if ($no_nav_bar || $env{'form.inhibitmenu'} eq 'yes') {
return $bodytag;
}
@@ -4679,7 +4672,7 @@ sub bodytag {
$bodytag .= Apache::lonmenu::serverform();
$bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
if ($env{'request.state'} eq 'construct') {
- $bodytag .= &Apache::lonmenu::innerregister($forcereg,'',
+ $bodytag .= &Apache::lonmenu::innerregister($forcereg,
$args->{'bread_crumbs'});
} elsif ($forcereg) {
$bodytag .= &Apache::lonmenu::innerregister($forcereg);
@@ -5064,6 +5057,7 @@ td.LC_table_cell_checkbox {
background: #F8F8F8; /* $sidebg; */
border: 1px solid $sidebg;
margin: 0 0 10px 0;
+ padding: 3px;
}
.LC_fontsize_medium {
@@ -6033,7 +6027,7 @@ fieldset > legend {
#LC_nav_bar {
float: left;
- margin: 0;
+ margin: 0 0 2px 0;
}
#LC_realm {
@@ -6048,6 +6042,11 @@ fieldset > legend {
font-style: normal;
}
+/* Preliminary fix to hide nav_bar inside bookmarks window */
+#LC_bookmarks #LC_nav_bar {
+ display:none;
+}
+
ol.LC_primary_menu {
float: right;
margin: 0;
@@ -6570,8 +6569,8 @@ sub headtag {
if (!$args->{'frameset'}) {
$result .= &Apache::lonhtmlcommon::htmlareaheaders();
}
- if ($args->{'force_register'}) {
- $result .= &Apache::lonmenu::registerurl();
+ if ($args->{'force_register'} && $env{'request.noversionuri'} !~ m{^/res/adm/pages/}) {
+ $result .= Apache::lonxml::display_title();
}
if (!$args->{'no_nav_bar'}
&& !$args->{'only_body'}
@@ -6597,7 +6596,7 @@ ADDMETA
$result .= '
LON-CAPA '.$title.''
.''
.$head_extra;
- return $result;
+ return $result.'';
}
=pod
@@ -6654,43 +6653,6 @@ sub xml_begin {
=pod
-=item * &endheadtag()
-
-Returns a uniform for LON-CAPA web pages.
-
-Inputs: none
-
-=cut
-
-sub endheadtag {
- return '';
-}
-
-=pod
-
-=item * &head()
-
-Returns a uniform complete .. section for LON-CAPA web pages.
-
-Inputs:
-
-=over 4
-
-$title - optional title for the page
-
-$head_extra - optional extra HTML to put inside the
-
-=back
-
-=cut
-
-sub head {
- my ($title,$head_extra,$args) = @_;
- return &headtag($title,$head_extra,$args).&endheadtag();
-}
-
-=pod
-
=item * &start_page()
Returns a complete .. section for LON-CAPA web pages.
@@ -6728,8 +6690,6 @@ $args - additional optional args support
skip_phases -> hash ref of
head -> skip the generation
body -> skip all generation
-#RC no_inline_link -> if true and in remote mode, don't show the
-#RC 'Switch To Inline Menu' link
no_auto_mt_title -> prevent &mt()ing the title arg
inherit_jsmath -> when creating popup window in a page,
should it have jsmath forced on by the
@@ -6746,6 +6706,14 @@ $args - additional optional args support
sub start_page {
my ($title,$head_extra,$args) = @_;
#&Apache::lonnet::logthis("start_page ".join(':',caller(0)));
+#SD
+#I don't see why we copy certain elements of %$args to %head_args
+#head args is passed to headtag() and this routine only reads those
+#keys that are needed. There doesn't happen any writes or any processing
+#of other keys.
+#proposal: just pass $args to headtag instead of \%head_args and delete
+#marked lines
+#<- MARK
my %head_args;
foreach my $arg ('redirect','force_register','domain','function',
'bgcolor','frameset','no_nav_bar','only_body',
@@ -6754,13 +6722,16 @@ sub start_page {
$head_args{$arg} = $args->{$arg};
}
}
+#MARK ->
$env{'internal.start_page'}++;
my $result;
+
if (! exists($args->{'skip_phases'}{'head'}) ) {
- $result.=
- &xml_begin().
- &headtag($title,$head_extra,\%head_args).&endheadtag();
+ $result .=
+ &xml_begin() . &headtag($title,$head_extra,\%head_args);
+#replace prev line by
+# &xml_begin() . &headtag($title, $head_extra, $args);
}
if (! exists($args->{'skip_phases'}{'body'}) ) {
@@ -6774,8 +6745,7 @@ sub start_page {
$args->{'function'}, $args->{'add_entries'},
$args->{'only_body'}, $args->{'domain'},
$args->{'force_register'}, $args->{'no_nav_bar'},
- $args->{'bgcolor'}, $args->{'no_inline_link'},
- $args);
+ $args->{'bgcolor'}, $args);
}
}
@@ -6791,15 +6761,10 @@ sub start_page {
# $result .= &build_functionlist();
#}
- # Don't add anything more if only_body wanted
- return $result if $args->{'only_body'};
+ # Don't add anything more if only_body wanted or in const space
+ return $result if $args->{'only_body'}
+ || $env{'request.state'} eq 'construct';
- #Breadcrumbs for Construction Space provided by &bodytag.
- if (
- $env{'request.state'} eq 'construct') {
- return $result;
- }
-
#Breadcrumbs
if (exists($args->{'bread_crumbs'}) or exists($args->{'bread_crumbs_component'})) {
&Apache::lonhtmlcommon::clear_breadcrumbs();
@@ -6820,28 +6785,6 @@ sub start_page {
return $result;
}
-
-=pod
-
-=item * &head()
-
-Returns a complete section for LON-CAPA web pages.
-
-Inputs: $args - additional optional args supported are:
- js_ready -> return a string ready for being used in
- a javascript writeln
- html_encode -> return a string ready for being used in
- a html attribute
- frameset -> if true will start with a