--- loncom/interface/loncommon.pm 2009/05/07 16:25:02 1.806
+++ loncom/interface/loncommon.pm 2009/05/19 22:52:10 1.822
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.806 2009/05/07 16:25:02 bisitz Exp $
+# $Id: loncommon.pm,v 1.822 2009/05/19 22:52:10 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -4144,41 +4144,92 @@ Returns: value of designparamter $which
##############################################
sub designparm {
my ($which,$domain)=@_;
- if ($env{'browser.blackwhite'} eq 'on') {
- if ($which=~/\.(font|alink|vlink|link|textcol)$/) {
- return '#000000';
- }
- if ($which=~/\.(pgbg|sidebg|bgcol)$/) {
- return '#FFFFFF';
- }
- if ($which=~/\.tabbg$/) {
- return '#CCCCCC';
- }
- }
if (exists($env{'environment.color.'.$which})) {
- return $env{'environment.color.'.$which};
+ return $env{'environment.color.'.$which};
}
$domain=&determinedomain($domain);
my %domdesign = &get_domainconf($domain);
my $output;
if ($domdesign{$domain.'.'.$which} ne '') {
- $output = $domdesign{$domain.'.'.$which};
+ $output = $domdesign{$domain.'.'.$which};
} else {
$output = $defaultdesign{$which};
}
if (($which =~ /^(student|coordinator|author|admin)\.img$/) ||
($which =~ /login\.(img|logo|domlogo|login)/)) {
if ($output =~ m{^/(adm|res)/}) {
- if ($output =~ m{^/res/}) {
- my $local_name = &Apache::lonnet::filelocation('',$output);
- &Apache::lonnet::repcopy($local_name);
- }
+ if ($output =~ m{^/res/}) {
+ my $local_name = &Apache::lonnet::filelocation('',$output);
+ &Apache::lonnet::repcopy($local_name);
+ }
$output = &lonhttpdurl($output);
}
}
return $output;
}
+##############################################
+=pod
+
+=item * &head_subbox()
+
+Inputs: $content (contains HTML code with page functions, etc.)
+
+Returns: HTML div with $content
+ To be included in page header
+
+=cut
+
+sub head_subbox {
+ my ($content)=@_;
+ my $output =
+ '
' #FIXME: solve conflicts with lonhtmlcommon:breadcrumbs LC_head_subbox
+ .$content
+ .'
'
+}
+
+##############################################
+=pod
+
+=item * &CSTR_pageheader()
+
+Inputs: ./.
+
+Returns: HTML div with CSTR path and recent box
+ To be included on Construction Space pages
+
+=cut
+
+sub CSTR_pageheader {
+ # this is for resources; directories have customtitle, and crumbs
+ # and select recent are created in lonpubdir.pm
+ my ($uname,$thisdisfn)=
+ ($env{'request.filename'} =~ m|^/home/([^/]+)/public_html/(.*)|);
+ my $formaction='/priv/'.$uname.'/'.$thisdisfn;
+ $formaction=~s/\/+/\//g;
+
+ my $parentpath = '';
+ my $lastitem = '';
+ if ($thisdisfn =~ m-(.+/)([^/]*)$-) {
+ $parentpath = $1;
+ $lastitem = $2;
+ } else {
+ $lastitem = $thisdisfn;
+ }
+ return
+ ''
+ .&Apache::loncommon::help_open_menu('','',3,'Authoring') #FIXME: Broken? Where is it?
+ .''.&mt('Construction Space:').' '
+ .''
+ .&Apache::lonmenu::constspaceform()
+ .'
';
+}
+
###############################################
###############################################
@@ -4215,13 +4266,11 @@ Inputs:
in the title box that appears, this text
is not auto translated like the $title is
-=item * $notopbar, if true, keep the 'what is this' info but remove the
- navigational links
+=item * $no_nav_bar, if true, keep the 'what is this' info but remove the
+ navigational links
=item * $bgcolor, used to override the bgcolor on a webpage to a specific value
-=item * $notitle, if true keep the nav controls, but remove the title bar
-
=item * $no_inline_link, if true and in remote mode, don't show the
'Switch To Inline Menu' link
@@ -4242,7 +4291,7 @@ other decorations will be returned.
sub bodytag {
my ($title,$function,$addentries,$bodyonly,$domain,$forcereg,$customtitle,
- $notopbar,$bgcolor,$notitle,$no_inline_link,$args)=@_;
+ $no_nav_bar,$bgcolor,$no_inline_link,$args)=@_;
if (!$args->{'no_auto_mt_title'}) { $title = &mt($title); }
@@ -4333,43 +4382,19 @@ ENDROLE
$forcereg=1;
}
- if (!$customtitle && $env{'request.state'} eq 'construct') {
- # this is for resources; directories have customtitle, and crumbs
- # and select recent are created in lonpubdir.pm
- my ($uname,$thisdisfn)=
- ($env{'request.filename'} =~ m|^/home/([^/]+)/public_html/(.*)|);
- my $formaction='/priv/'.$uname.'/'.$thisdisfn;
- $formaction=~s/\/+/\//g;
-
- my $parentpath = '';
- my $lastitem = '';
- if ($thisdisfn =~ m-(.+/)([^/]*)$-) {
- $parentpath = $1;
- $lastitem = $2;
- } else {
- $lastitem = $thisdisfn;
- }
- $titleinfo =
- &Apache::loncommon::help_open_menu('','',3,'Authoring')
- .''.&mt('Construction Space').': '
- .''
- .&Apache::lonmenu::constspaceform();
- }
-
- my $titletable;
- if (!$notitle) {
- $titletable =
- ''.
- " $titleinfo $dc_info | ".$roleinfo.
- '
';
- }
- if ($notopbar) {
+ if (!$customtitle && $env{'request.state'} eq 'construct') {
+ $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls
+ }
+
+ my $titletable = ''
+ ." $titleinfo $dc_info | ".$roleinfo
+ .'
';
+
+ if ($no_nav_bar) {
$bodytag .= $titletable;
} else {
+ $bodytag .= qq|$name ($role)
+ $realm $dc_info
|;
if ($env{'request.state'} eq 'construct') {
$bodytag .= &Apache::lonmenu::menubuttons($forcereg,$forcereg,
$titletable);
@@ -4395,9 +4420,6 @@ ENDROLE
my $menu= ($no_inline_link?''
:'
'.&mt('Switch to Inline Menu Mode').'');
#
- if ($notitle) {
- return $bodytag;
- }
return(<
@@ -4450,15 +4472,6 @@ sub make_attr_string {
$attr_ref->{'style'}=$style.'; font-size: x-large;';
}
- if ($env{'browser.blackwhite'} eq 'on') {
- delete($attr_ref->{'font'});
- delete($attr_ref->{'link'});
- delete($attr_ref->{'alink'});
- delete($attr_ref->{'vlink'});
- delete($attr_ref->{'bgcolor'});
- delete($attr_ref->{'background'});
- }
-
my $attr_string;
foreach my $attr (keys(%$attr_ref)) {
$attr_string .= " $attr=\"".$attr_ref->{$attr}.'" ';
@@ -4575,20 +4588,6 @@ a:focus {
background: yellow
}
-table.thinborder,
-table.thinborder tr th {
- border-style: solid;
- border-width: 1px;
- border-color: $lg_border_color;
- background: $tabbg;
-}
-
-table.thinborder tr td {
- border-style: solid;
- border-width: 1px;
- border-color: $lg_border_color;
-}
-
form, .inline {
display: inline;
}
@@ -4646,20 +4645,11 @@ div.LC_confirm_box .LC_success img {
vertical-align: middle;
}
-.LC_unknown {
- color: yellow;
-}
-
.LC_icon {
border: none;
vertical-align: middle;
}
-.LC_indexer_icon {
- border: none;
- height: 22px;
-}
-
.LC_docs_spacer {
width: 25px;
height: 1px;
@@ -4721,6 +4711,11 @@ table#LC_nav_location {
table#LC_title_bar a {
color: $fontmenu;
}
+
+table#LC_title_bar {
+ clear: both;
+ /*display: none;*/
+}
table#LC_title_bar,
table.LC_breadcrumbs,
@@ -4734,6 +4729,7 @@ table#LC_title_bar.LC_with_remote {
font-family: $sans;
border-collapse: collapse;
padding: 0;
+ margin: 0;
}
table.LC_docs_path {
@@ -4757,15 +4753,15 @@ table#LC_title_bar .LC_title_bar_who {
margin: 0;
}
-table#LC_title_bar .LC_title_bar_name {
+table#LC_title_bar div.LC_title_bar_name {
margin: 0;
}
-table#LC_title_bar .LC_title_bar_role {
+table#LC_title_bar div.LC_title_bar_role {
margin: 0;
}
-table#LC_title_bar .LC_title_bar_realm {
+table#LC_title_bar div.LC_title_bar_realm {
margin: 0;
}
@@ -4842,6 +4838,24 @@ table#LC_mainmenu td.LC_mainmenu_column
font-size: 70%;
}
+#LC_head_subbox {
+ clear:both;
+ background: $sidebg;
+ border-bottom: 1px solid $lg_border_color;
+ height: 32px;
+ line-height: 32px;
+ margin: 0;
+ padding: 0;
+}
+
+#LC_head_subbox2 { /* FIXME: replace by LC_head_subbox once lonhtmlcommon::breadcrumbs has been fixed */
+ clear:both;
+ background: #F8F8F8; /* $sidebg; */
+ border-bottom: 1px solid $lg_border_color;
+ margin: 0 0 10px 0;
+ padding: 5px;
+}
+
.LC_fontsize_medium {
font-size: 85%;
}
@@ -4884,11 +4898,6 @@ td.LC_menubuttons_text {
font-weight: bold;
}
-.LC_dropadd_labeltext {
- font-family: $sans;
- text-align: right;
-}
-
.LC_preferences_labeltext {
font-family: $sans;
text-align: right;
@@ -4902,12 +4911,6 @@ td.LC_menubuttons_text {
font-weight: bold;
}
-table.LC_aboutme_port {
- border: none;
- border-collapse: collapse;
- border-spacing: 0;
-}
-
table.LC_data_table,
table.LC_mail_list {
border: 1px solid #000000;
@@ -4951,15 +4954,13 @@ table.LC_data_table tr.LC_info_row > td
}
table.LC_data_table tr.LC_odd_row > td,
-table.LC_pick_box tr > td.LC_odd_row,
-table.LC_aboutme_port tr td {
+table.LC_pick_box tr > td.LC_odd_row {
background-color: $data_table_light;
padding: 2px;
}
table.LC_data_table tr.LC_even_row > td,
-table.LC_pick_box tr > td.LC_even_row,
-table.LC_aboutme_port tr.LC_even_row td {
+table.LC_pick_box tr > td.LC_even_row {
background-color: $data_table_dark;
padding: 2px;
}
@@ -5821,7 +5822,7 @@ ul.LC_TabContent li:hover a {
}
h1 {
- padding:5px 10px 5px 20px;
+ padding: 0;
line-height:130%;
}
@@ -5874,6 +5875,20 @@ dl,ul,div,fieldset {
/* overflow: hidden; */
}
+#LC_nav_bar {
+ float: left;
+ margin: 0;
+}
+
+#LC_nav_bar em{
+ font-weight: bold;
+ font-style: normal;
+}
+
+ol.LC_smallMenu {
+ float: right;
+}
+
ol.LC_smallMenu, ol#LC_PathBreadcrumbs {
margin: 0;
}
@@ -5894,7 +5909,27 @@ ol.LC_smallMenu a {
text-decoration: none;
}
-ol#LC_TabMainMenuContent,
+ul#LC_TabMainMenuContent {
+ clear: both;
+ color: $fontmenu;
+ background: $tabbg;
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ float:left;
+ width: 100%;
+}
+
+ul#LC_TabMainMenuContent li {
+ float: left;
+ font-weight: bold;
+ line-height: 1.8em;
+ padding: 0 0.8em;
+ border-right: 1px solid black;
+ display: inline;
+ vertical-align: middle;
+}
+
ul.LC_TabContent ,
ul.LC_TabContentBigger {
display:block;
@@ -5903,7 +5938,6 @@ ul.LC_TabContentBigger {
padding: 0;
}
-ol#LC_TabMainMenuContent li,
ul.LC_TabContent li,
ul.LC_TabContentBigger li {
display: inline;
@@ -5913,18 +5947,8 @@ ul.LC_TabContentBigger li {
white-space:nowrap;
}
-ol#LC_TabMainMenuContent li {
- vertical-align: bottom;
- border-bottom: solid 1px RGB(175, 175, 175);
- padding: 5px 10px 5px 10px;
- margin-right:5px;
- margin-bottom:3px;
- font-weight: bold;
- background: url(/adm/lonIcons/lightGreyBG.png) repeat-x left top;
-}
-
-ol#LC_TabMainMenuContent li a {
- color: RGB(47, 47, 47);
+ul#LC_TabMainMenuContent li a {
+ color: $fontmenu;
text-decoration: none;
}
@@ -5976,25 +6000,16 @@ ul.LC_TabContentBigger li a {
ol#LC_MenuBreadcrumbs,
ol#LC_PathBreadcrumbs,
ul.LC_CourseBreadcrumbs {
- border-top: solid 1px RGB(255, 255, 255);
- height: 20px;
- line-height: 20px;
- vertical-align: bottom;
- margin: 0 0 30px 0;
padding-left: 10px;
+ margin: 0;
list-style-position: inside;
- background: url(/adm/lonIcons/lightGreyBG.png) repeat-x left top;
}
ol#LC_MenuBreadcrumbs li,
ol#LC_PathBreadcrumbs li,
ul.LC_CourseBreadcrumbs li {
-/*
- background: url(/adm/lonIcons/arrow_white.png) no-repeat left center;
-*/
display: inline;
padding: 0 0 0 10px;
-/* vertical-align: bottom; */
overflow:hidden;
}
@@ -6474,7 +6489,7 @@ $args - additional optional args support
only_body -> is true will set &bodytag() onlybodytag
arg on
- no_nav_bar -> is true will set &bodytag() notopbar arg on
+ no_nav_bar -> is true will set &bodytag() no_nav_bar arg on
add_entries -> additional attributes to add to the
domain -> force to color decorate a page for a
specific domain
@@ -6493,7 +6508,6 @@ $args - additional optional args support
is not auto translated like the $title is
frameset -> if true will start with a