--- loncom/interface/loncommon.pm 2009/08/19 19:43:38 1.886
+++ loncom/interface/loncommon.pm 2011/08/03 18:25:11 1.1016
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.886 2009/08/19 19:43:38 raeburn Exp $
+# $Id: loncommon.pm,v 1.1016 2011/08/03 18:25:11 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -409,7 +409,7 @@ sub studentbrowser_javascript {
+ENDRESBRW
+}
+
sub selectstudent_link {
- my ($form,$unameele,$udomele,$courseadvonly)=@_;
- my $callargs = "'".$form."','".$unameele."','".$udomele."'";
+ my ($form,$unameele,$udomele,$courseadvonly,$clickerid)=@_;
+ my $callargs = "'".&Apache::lonhtmlcommon::entity_encode($form)."','".
+ &Apache::lonhtmlcommon::entity_encode($unameele)."','".
+ &Apache::lonhtmlcommon::entity_encode($udomele)."'";
if ($env{'request.course.id'}) {
if (!&Apache::lonnet::allowed('srm',$env{'request.course.id'})
&& !&Apache::lonnet::allowed('srm',$env{'request.course.id'}.
'/'.$env{'request.course.sec'})) {
return '';
}
+ $callargs.=",'".&Apache::lonhtmlcommon::entity_encode($clickerid)."'";
if ($courseadvonly) {
$callargs .= ",'',1,1";
}
@@ -452,7 +475,7 @@ sub selectstudent_link {
&mt('Select User').'';
}
if ($env{'request.role'}=~/^(au|dc|su)/) {
- $callargs .= ",1";
+ $callargs .= ",'',1";
return ''.
''.
&mt('Select User').'';
@@ -460,6 +483,19 @@ sub selectstudent_link {
return '';
}
+sub selectresource_link {
+ my ($form,$reslink,$arg)=@_;
+
+ my $callargs = "'".&Apache::lonhtmlcommon::entity_encode($form)."','".
+ &Apache::lonhtmlcommon::entity_encode($reslink)."'";
+ unless ($env{'request.course.id'}) { return $arg; }
+ return ''.
+ ''.
+ $arg.'';
+}
+
+
+
sub authorbrowser_javascript {
return <<"ENDAUTHORBRW";
END_MYBLOCK
+
+ $output = Apache::lonhtmlcommon::scripttag($output);
+
my $popupUrl = "/adm/blockingstatus/$querystring";
+ my $text = mt('Communication Blocked');
+
$output .= <<"END_BLOCK";
'
+ '
'
.$content
.'
'
}
@@ -4286,18 +4555,30 @@ sub CSTR_pageheader {
} else {
$lastitem = $thisdisfn;
}
- return
+
+ my $output =
'
'
.&Apache::loncommon::help_open_menu('','',3,'Authoring') #FIXME: Broken? Where is it?
.''.&mt('Construction Space:').' '
.''
.&Apache::lonmenu::constspaceform()
.'
';
+
+ return $output;
}
###############################################
@@ -4337,9 +4618,6 @@ Inputs:
=item * $bgcolor, used to override the bgcolor on a webpage to a specific value
-=item * $no_inline_link, if true and in remote mode, don't show the
- 'Switch To Inline Menu' link
-
=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,
@@ -4357,8 +4635,13 @@ 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'))
+ || ($env{'user.name'} eq '') && ($env{'user.domain'} eq '')) {
+ $public = 1;
+ }
if (!$args->{'no_auto_mt_title'}) { $title = &mt($title); }
$function = &get_users_function() if (!$function);
@@ -4385,14 +4668,15 @@ sub bodytag {
if ($env{'request.role'} !~ /^cr/) {
$role = &Apache::lonnet::plaintext($role,&course_type());
}
+ if ($env{'request.course.sec'}) {
+ $role .= (' 'x2).'- '.&mt('section:').' '.$env{'request.course.sec'};
+ }
$realm = $env{'course.'.$env{'request.course.id'}.'.description'};
} else {
$role = &Apache::lonnet::plaintext($role);
}
if (!$realm) { $realm=' '; }
-# Set messages
- my $messages=&domainlogo($domain);
my $extra_body_attr = &make_attr_string($forcereg,\%design);
@@ -4405,7 +4689,7 @@ sub bodytag {
}
my $name = &plainname($env{'user.name'},$env{'user.domain'});
- if ($env{'user.name'} eq 'public' && $env{'user.domain'} eq 'public') {
+ if ($public) {
undef($role);
} else {
$name = &aboutmewrapper($name,$env{'user.name'},$env{'user.domain'});
@@ -4419,72 +4703,75 @@ sub bodytag {
$env{'course.'.$env{'request.course.id'}.
'.domain'}.'/'})) {
my $cid = $env{'request.course.id'};
- $dc_info.= $cid.' '.$env{'course.'.$cid.'.internal.coursecode'};
+ $dc_info = $cid.' '.$env{'course.'.$cid.'.internal.coursecode'};
$dc_info =~ s/\s+$//;
- $dc_info = '('.$dc_info.')';
}
- $role = "($role)" if $role;
+ $role = '
('.$role.')' if $role;
&get_unprocessed_cgi($ENV{'QUERY_STRING'}, ['inhibitmenu']);
- if ($env{'environment.remote'} eq 'off') {
- # No Remote
- if ($env{'request.state'} eq 'construct') {
- $forcereg=1;
- }
+ if ($no_nav_bar || $env{'form.inhibitmenu'} eq 'yes') {
+ return $bodytag;
+ }
-# if ($env{'request.state'} eq 'construct') {
-# $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls
-# }
-
- my $titletable = '
'
- ." $titleinfo $dc_info | "
- .'
';
+ if ($env{'request.state'} eq 'construct') { $forcereg=1; }
- if ($no_nav_bar) {
- $bodytag .= $titletable;
- } else {
- $bodytag .= qq|
$name $role
- $realm $dc_info
| unless $env{'form.inhibitmenu'};
+ # if ($env{'request.state'} eq 'construct') {
+ # $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls
+ # }
- if ($env{'request.state'} eq 'construct') {
- $bodytag .= &Apache::lonmenu::menubuttons($forcereg,$titletable);
- } else {
- $bodytag .= &Apache::lonmenu::menubuttons($forcereg).$titletable;
+
+
+ if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) {
+ if ($dc_info) {
+ $dc_info = qq|
$dc_info|;
+ }
+ $bodytag .= qq|
$name $role
+ $realm $dc_info
|;
+ return $bodytag;
+ }
+
+ unless ($env{'request.symb'} =~ m/\.page___\d+___/) {
+ $bodytag .= qq|
$name $role
|;
+ }
+
+ $bodytag .= Apache::lonhtmlcommon::scripttag(
+ Apache::lonmenu::utilityfunctions(), 'start');
+
+ $bodytag .= Apache::lonmenu::primary_menu();
+
+ if ($dc_info) {
+ $dc_info = &dc_courseid_toggle($dc_info);
+ }
+ $bodytag .= qq|
$realm $dc_info
|;
+
+ #don't show menus for public users
+ if (!$public){
+ $bodytag .= Apache::lonmenu::secondary_menu();
+ $bodytag .= Apache::lonmenu::serverform();
+ $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ if ($env{'request.state'} eq 'construct') {
+ $bodytag .= &Apache::lonmenu::innerregister($forcereg,
+ $args->{'bread_crumbs'});
+ } elsif ($forcereg) {
+ $bodytag .= &Apache::lonmenu::innerregister($forcereg);
}
+ }else{
+ # this is to seperate menu from content when there's no secondary
+ # menu. Especially needed for public accessible ressources.
+ $bodytag .= '
';
+ $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
}
- return $bodytag;
- }
-#
-# Top frame rendering, Remote is up
-#
+ return $bodytag;
+}
- my $imgsrc = $img;
- if ($img =~ /^\/adm/) {
- $imgsrc = &lonhttpdurl($img);
- }
- my $upperleft='
';
-
- # Explicit link to get inline menu
- my $menu= ($no_inline_link?''
- :'
'.&mt('Switch to Inline Menu Mode').'');
- $bodytag .= qq|
$name $role
- $realm $dc_info
- | unless $env{'form.inhibitmenu'};
- #
- return(<
-$upperleft |
- $messages |
-
-$titleinfo $dc_info $menu |
-
-
-ENDBODY
+sub dc_courseid_toggle {
+ my ($dc_info) = @_;
+ return ' '.
+ ''.
+ &mt('(More ...)').''.
+ ''.$dc_info.'
';
}
sub make_attr_string {
@@ -4508,22 +4795,8 @@ sub make_attr_string {
delete($attr_ref->{$key});
}
}
- $attr_ref->{'onload'} =
- &Apache::lonmenu::loadevents(). $on_load;
- $attr_ref->{'onunload'}=
- &Apache::lonmenu::unloadevents().$on_unload;
- }
-
-# Accessibility font enhance
- if ($env{'browser.fontenhance'} eq 'on') {
- my $style;
- foreach my $key (keys(%{$attr_ref})) {
- if (lc($key) eq 'style') {
- $style.=$attr_ref->{$key}.';';
- delete($attr_ref->{$key});
- }
- }
- $attr_ref->{'style'}=$style.'; font-size: x-large;';
+ $attr_ref->{'onload'} = $on_load;
+ $attr_ref->{'onunload'}= $on_unload;
}
my $attr_string;
@@ -4597,10 +4870,6 @@ sub standard_css {
my $vlink = &designparm($function.'.vlink', $domain);
my $link = &designparm($function.'.link', $domain);
- my $loginbg = &designparm('login.sidebg',$domain);
- my $bgcol = &designparm('login.bgcol',$domain);
- my $textcol = &designparm('login.textcol',$domain);
-
my $sans = 'Verdana,Arial,Helvetica,sans-serif';
my $mono = 'monospace';
my $data_table_head = $sidebg;
@@ -4618,57 +4887,70 @@ sub standard_css {
my $mail_other_hover = '#669999';
my $table_header = '#DDDDDD';
my $feedback_link_bg = '#BBBBBB';
- my $lg_border_color = '#C8C8C8';
+ my $lg_border_color = '#C8C8C8';
+ my $button_hover = '#BF2317';
my $border = ($env{'browser.type'} eq 'explorer' ||
- $env{'browser.type'} eq 'safari' ) ? '0 2px 0 2px'
- : '0 3px 0 4px';
+ $env{'browser.type'} eq 'safari' ) ? '0 2px 0 2px'
+ : '0 3px 0 4px';
return < td
text-align: left;
}
-table.LC_data_table tr.LC_odd_row > td,
+table.LC_data_table tr.LC_odd_row > td {
+ background-color: $data_table_light;
+ padding: 2px;
+ vertical-align: top;
+}
+
table.LC_pick_box tr > td.LC_odd_row {
background-color: $data_table_light;
+ vertical-align: top;
+}
+
+table.LC_data_table tr.LC_even_row > td {
+ background-color: $data_table_dark;
padding: 2px;
+ vertical-align: top;
}
-table.LC_data_table tr.LC_even_row > td,
table.LC_pick_box tr > td.LC_even_row {
background-color: $data_table_dark;
- padding: 2px;
+ vertical-align: top;
}
table.LC_data_table tr.LC_data_table_highlight td {
@@ -4987,13 +5263,23 @@ table.LC_data_table tr td.LC_leftcol_hea
table.LC_data_table tr.LC_empty_row td,
table.LC_nested tr.LC_empty_row td {
- background-color: #FFFFFF;
font-weight: bold;
font-style: italic;
text-align: center;
padding: 8px;
}
+table.LC_data_table tr.LC_empty_row td {
+ background-color: $sidebg;
+}
+
+table.LC_nested tr.LC_empty_row td {
+ background-color: #FFFFFF;
+}
+
+table.LC_caption {
+}
+
table.LC_nested tr.LC_empty_row td {
padding: 4ex
}
@@ -5058,6 +5344,7 @@ table.LC_createuser tr.LC_info_row td {
table.LC_calendar {
border: 1px solid #000000;
border-collapse: collapse;
+ width: 98%;
}
table.LC_calendar_pickdate {
@@ -5067,6 +5354,7 @@ table.LC_calendar_pickdate {
table.LC_calendar tr td {
border: 1px solid #000000;
vertical-align: top;
+ width: 14%;
}
table.LC_calendar tr td.LC_calendar_day_empty {
@@ -5077,47 +5365,47 @@ table.LC_calendar tr td.LC_calendar_day_
background-color: $data_table_highlight;
}
-table.LC_mail_list tr.LC_mail_new {
+table.LC_data_table tr td.LC_mail_new {
background-color: $mail_new;
}
-table.LC_mail_list tr.LC_mail_new:hover {
+table.LC_data_table tr.LC_mail_new:hover {
background-color: $mail_new_hover;
}
-table.LC_mail_list tr.LC_mail_even {
-}
-
-table.LC_mail_list tr.LC_mail_odd {
-}
-
-table.LC_mail_list tr.LC_mail_read {
+table.LC_data_table tr td.LC_mail_read {
background-color: $mail_read;
}
-table.LC_mail_list tr.LC_mail_read:hover {
+/*
+table.LC_data_table tr.LC_mail_read:hover {
background-color: $mail_read_hover;
}
+*/
-table.LC_mail_list tr.LC_mail_replied {
+table.LC_data_table tr td.LC_mail_replied {
background-color: $mail_replied;
}
-table.LC_mail_list tr.LC_mail_replied:hover {
+/*
+table.LC_data_table tr.LC_mail_replied:hover {
background-color: $mail_replied_hover;
}
+*/
-table.LC_mail_list tr.LC_mail_other {
+table.LC_data_table tr td.LC_mail_other {
background-color: $mail_other;
}
-table.LC_mail_list tr.LC_mail_other:hover {
+/*
+table.LC_data_table tr.LC_mail_other:hover {
background-color: $mail_other_hover;
}
+*/
table.LC_data_table tr > td.LC_browser_file,
table.LC_data_table tr > td.LC_browser_file_published {
- background: #CCFF88;
+ background: #AAEE77;
}
table.LC_data_table tr > td.LC_browser_file_locked,
@@ -5126,40 +5414,40 @@ table.LC_data_table tr > td.LC_browser_f
}
table.LC_data_table tr > td.LC_browser_file_obsolete {
- background: #AAAAAA;
+ background: #888888;
}
table.LC_data_table tr > td.LC_browser_file_modified,
table.LC_data_table tr > td.LC_browser_file_metamodified {
- background: #FFFF77;
+ background: #F8F866;
}
table.LC_data_table tr.LC_browser_folder > td {
- background: #CCCCFF;
+ background: #E0E8FF;
}
table.LC_data_table tr > td.LC_roles_is {
-/* background: #77FF77; */
+ /* background: #77FF77; */
}
table.LC_data_table tr > td.LC_roles_future {
- background: #FFFF77;
+ border-right: 8px solid #FFFF77;
}
table.LC_data_table tr > td.LC_roles_will {
- background: #FFAA77;
+ border-right: 8px solid #FFAA77;
}
table.LC_data_table tr > td.LC_roles_expired {
- background: #FF7777;
+ border-right: 8px solid #FF7777;
}
table.LC_data_table tr > td.LC_roles_will_not {
- background: #AAFF77;
+ border-right: 8px solid #AAFF77;
}
table.LC_data_table tr > td.LC_roles_selected {
- background: #11CC55;
+ border-right: 8px solid #11CC55;
}
span.LC_current_location {
@@ -5187,12 +5475,21 @@ span.LC_parm_part {
color: blue;
}
-span.LC_parm_folder, span.LC_parm_symb {
+span.LC_parm_folder,
+span.LC_parm_symb {
font-size: x-small;
font-family: $mono;
color: #AAAAAA;
}
+ul.LC_parm_parmlist li {
+ display: inline-block;
+ padding: 0.3em 0.8em;
+ vertical-align: top;
+ width: 150px;
+ border-top:1px solid $lg_border_color;
+}
+
td.LC_parm_overview_level_menu,
td.LC_parm_overview_map_menu,
td.LC_parm_overview_parm_selectors,
@@ -5277,7 +5574,7 @@ table.LC_pick_box {
table.LC_pick_box td.LC_pick_box_title {
background: $sidebg;
font-weight: bold;
- text-align: right;
+ text-align: left;
vertical-align: top;
width: 184px;
padding: 8px;
@@ -5315,40 +5612,6 @@ table.LC_pick_box td.LC_oddrow_value {
background-color: $data_table_light;
}
-table.LC_helpform_receipt {
- width: 620px;
- border-collapse: separate;
- background: white;
- border: 1px solid black;
- border-spacing: 1px;
-}
-
-table.LC_helpform_receipt td.LC_pick_box_title {
- background: $tabbg;
- font-weight: bold;
- text-align: right;
- width: 184px;
- padding: 8px;
-}
-
-table.LC_helpform_receipt td.LC_evenrow_value {
- text-align: left;
- padding: 8px;
- background-color: $data_table_light;
-}
-
-table.LC_helpform_receipt td.LC_oddrow_value {
- text-align: left;
- padding: 8px;
- background-color: $data_table_light;
-}
-
-table.LC_helpform_receipt td.LC_pick_box_separator {
- padding: 0;
- height: 1px;
- background: black;
-}
-
span.LC_helpform_receipt_cat {
font-weight: bold;
}
@@ -5387,35 +5650,23 @@ table.LC_group_priv td {
padding: 0;
}
-table.LC_notify_front_page {
- background: white;
- border: 1px solid black;
- padding: 8px;
-}
-
-table.LC_notify_front_page td {
- padding: 8px;
-}
-
.LC_navbuttons {
margin: 2ex 0ex 2ex 0ex;
}
.LC_topic_bar {
font-weight: bold;
- width: 100%;
background: $tabbg;
- vertical-align: middle;
- margin: 2ex 0ex 2ex 0ex;
+ margin: 1em 0em 1em 2em;
padding: 3px;
+ font-size: 1.2em;
}
.LC_topic_bar span {
+ left: 0.5em;
+ position: absolute;
vertical-align: middle;
-}
-
-.LC_topic_bar img {
- vertical-align: bottom;
+ font-size: 1.2em;
}
table.LC_course_group_status {
@@ -5444,12 +5695,12 @@ div.LC_feedback_link img {
vertical-align:middle;
}
-div.LC_feedback_link a{
+div.LC_feedback_link a {
text-decoration: none;
}
div.LC_comblock {
- display:inline;
+ display:inline;
color:$font;
font-size:90%;
}
@@ -5527,12 +5778,12 @@ span.LC_prior_string,
span.LC_prior_custom,
span.LC_prior_reaction,
span.LC_prior_math {
- font-family: monospace;
+ font-family: $mono;
white-space: pre;
}
span.LC_prior_string {
- font-family: monospace;
+ font-family: $mono;
white-space: pre;
}
@@ -5541,7 +5792,7 @@ table.LC_prior_option {
border-collapse: collapse;
}
-table.LC_prior_rank,
+table.LC_prior_rank,
table.LC_prior_match {
border-collapse: collapse;
}
@@ -5565,17 +5816,6 @@ span.LC_cusr_subheading {
font-size: 85%;
}
-table.LC_docs_documents {
- background: #BBBBBB;
- border-width: 0;
- border-collapse: collapse;
-}
-
-table.LC_docs_documents td.LC_docs_document {
- border: 2px solid black;
- padding: 4px;
-}
-
div.LC_docs_entry_move {
border: 1px solid #BBBBBB;
background: #DDDDDD;
@@ -5667,56 +5907,41 @@ div.LC_clear_float_footer {
}
div.LC_grade_show_user {
- margin-top: 20px;
- border: 1px solid black;
+/* border-left: 5px solid $sidebg; */
+ border-top: 5px solid #000000;
+ margin: 50px 0 0 0;
+ padding: 15px 0 5px 10px;
}
-div.LC_grade_user_name {
- background: #DDDDEE;
- border-bottom: 1px solid black;
- font-weight: bold;
- font-size: large;
+div.LC_grade_show_user_odd_row {
+/* border-left: 5px solid #000000; */
}
-div.LC_grade_show_user_odd_row div.LC_grade_user_name {
- background: #DDEEDD;
+div.LC_grade_show_user div.LC_Box {
+ margin-right: 50px;
}
-div.LC_grade_show_problem,
div.LC_grade_submissions,
div.LC_grade_message_center,
-div.LC_grade_info_links,
-div.LC_grade_assign {
+div.LC_grade_info_links {
margin: 5px;
width: 99%;
background: #FFFFFF;
}
-div.LC_grade_show_problem_header,
div.LC_grade_submissions_header,
-div.LC_grade_message_center_header,
-div.LC_grade_assign_header {
+div.LC_grade_message_center_header {
font-weight: bold;
font-size: large;
}
-div.LC_grade_show_problem_problem,
div.LC_grade_submissions_body,
-div.LC_grade_message_center_body,
-div.LC_grade_assign_body {
+div.LC_grade_message_center_body {
border: 1px solid black;
width: 99%;
background: #FFFFFF;
}
-span.LC_grade_check_note {
- font-weight: normal;
- font-size: medium;
- display: inline;
- position: absolute;
- right: 1em;
-}
-
table.LC_scantron_action {
width: 100%;
}
@@ -5750,15 +5975,8 @@ div.LC_edit_problem_header_title {
}
table.LC_edit_problem_header_title {
- font-size: larger;
- font-weight: bold;
width: 100%;
- border-color: $pgbg;
- border-style: solid;
- border-width: $border;
background: $tabbg;
- border-collapse: collapse;
- padding: 0;
}
div.LC_edit_problem_discards {
@@ -5771,260 +5989,314 @@ div.LC_edit_problem_saves {
padding-bottom: 5px;
}
-img.stift{
+img.stift {
border-width: 0;
vertical-align: middle;
}
-table#LC_mainmenu{
- margin-top:10px;
- width:80%;
-}
-
-table#LC_mainmenu td.LC_mainmenu_col_fieldset{
+table td.LC_mainmenu_col_fieldset {
vertical-align: top;
- width: 45%;
-}
-
-.LC_mainmenu_fieldset_category {
- color: $font;
- background: $pgbg;
- font-size: small;
- font-weight: bold;
}
div.LC_createcourse {
- margin: 10px 10px 10px 10px;
+ margin: 10px 10px 10px 10px;
}
-/* ---- Remove when done ----
-# The following styles is part of the redesign of LON-CAPA and are
-# subject to change during this project.
-# Don't rely on their current functionality as they might be
-# changed or removed.
-# --------------------------*/
+.LC_dccid {
+ margin: 0.2em 0 0 0;
+ padding: 0;
+ font-size: 90%;
+ display:none;
+}
a:hover,
-ol.LC_smallMenu a:hover,
+ol.LC_primary_menu a:hover,
ol#LC_MenuBreadcrumbs a:hover,
ol#LC_PathBreadcrumbs a:hover,
-ul#LC_TabMainMenuContent a:hover,
+ul#LC_secondary_menu a:hover,
.LC_FormSectionClearButton input:hover
ul.LC_TabContent li:hover a {
- color:#BF2317;
- text-decoration:none;
+ color:$button_hover;
+ text-decoration:none;
}
h1 {
- padding: 0;
- line-height:130%;
+ padding: 0;
+ line-height:130%;
}
-h2,h3,h4,h5,h6 {
- margin: 5px 0 5px 0;
- padding: 0;
- line-height:130%;
+h2,
+h3,
+h4,
+h5,
+h6 {
+ margin: 5px 0 5px 0;
+ padding: 0;
+ line-height:130%;
}
.LC_hcell {
- padding:3px 15px 3px 15px;
- margin: 0;
- background-color:$tabbg;
- color:$fontmenu;
- border-bottom:solid 1px $lg_border_color;
+ padding:3px 15px 3px 15px;
+ margin: 0;
+ background-color:$tabbg;
+ color:$fontmenu;
+ border-bottom:solid 1px $lg_border_color;
}
.LC_Box > .LC_hcell {
- margin: 0 -10px 10px -10px;
+ margin: 0 -10px 10px -10px;
}
.LC_noBorder {
- border: 0;
-}
-
-.LC_Right {
- float: right;
- margin: 0;
- padding: 0;
+ border: 0;
}
.LC_FormSectionClearButton input {
- background-color:transparent;
- border: none;
- cursor:pointer;
- text-decoration:underline;
+ background-color:transparent;
+ border: none;
+ cursor:pointer;
+ text-decoration:underline;
}
.LC_help_open_topic {
- color: #FFFFFF;
- background-color: #EEEEFF;
- margin: 1px;
- padding: 4px;
- border: 1px solid #000033;
- white-space: nowrap;
-/* vertical-align: middle; */
+ color: #FFFFFF;
+ background-color: #EEEEFF;
+ margin: 1px;
+ padding: 4px;
+ border: 1px solid #000033;
+ white-space: nowrap;
+ /* vertical-align: middle; */
}
-dl,ul,div,fieldset {
- margin: 10px 10px 10px 0;
-/* overflow: hidden; */
+dl,
+ul,
+div,
+fieldset {
+ margin: 10px 10px 10px 0;
+ /* overflow: hidden; */
}
fieldset > legend {
- font-weight: bold;
- padding: 0 5px 0 5px;
+ font-weight: bold;
+ padding: 0 5px 0 5px;
}
#LC_nav_bar {
- float: left;
- margin: 0.2em 0 0 0;
+ float: left;
+ background-color: $pgbg_or_bgcolor;
+ margin: 0 0 2px 0;
}
-#LC_nav_bar em{
- font-weight: bold;
- font-style: normal;
+#LC_realm {
+ margin: 0.2em 0 0 0;
+ padding: 0;
+ font-weight: bold;
+ text-align: center;
+ background-color: $pgbg_or_bgcolor;
}
-ol.LC_smallMenu {
- float: right;
- margin: 0.2em 0 0 0;
+#LC_nav_bar em {
+ font-weight: bold;
+ font-style: normal;
+}
+
+ol.LC_primary_menu {
+ float: right;
+ margin: 0;
+ background-color: $pgbg_or_bgcolor;
}
ol#LC_PathBreadcrumbs {
- margin: 0;
+ margin: 0;
}
-ol.LC_smallMenu li {
- display: inline;
- padding: 5px 5px 0 10px;
- vertical-align: top;
+ol.LC_primary_menu li {
+ display: inline;
+ padding: 5px 5px 0 10px;
+ vertical-align: top;
}
-ol.LC_smallMenu li img {
- vertical-align: bottom;
+ol.LC_primary_menu li img {
+ vertical-align: bottom;
+ height: 1.1em;
}
-ol.LC_smallMenu a {
- font-size: 90%;
- color: RGB(80, 80, 80);
- text-decoration: none;
+ol.LC_primary_menu a {
+ color: RGB(80, 80, 80);
+ text-decoration: none;
}
-ul#LC_TabMainMenuContent {
- clear: both;
- color: $fontmenu;
- background: $tabbg;
- list-style: none;
- padding: 0;
- margin: 0;
- width: 100%;
+ol.LC_primary_menu a.LC_new_message {
+ font-weight:bold;
+ color: darkred;
}
-ul#LC_TabMainMenuContent li {
- font-weight: bold;
- line-height: 1.8em;
- padding: 0 0.8em;
- border-right: 1px solid black;
- display: inline;
- vertical-align: middle;
+ol.LC_docs_parameters {
+ margin-left: 0;
+ padding: 0;
+ list-style: none;
+}
+
+ol.LC_docs_parameters li {
+ margin: 0;
+ padding-right: 20px;
+ display: inline;
+}
+
+ol.LC_docs_parameters li:before {
+ content: "\\002022 \\0020";
+}
+
+li.LC_docs_parameters_title {
+ font-weight: bold;
+}
+
+ol.LC_docs_parameters li.LC_docs_parameters_title:before {
+ content: "";
+}
+
+ul#LC_secondary_menu {
+ clear: both;
+ color: $fontmenu;
+ background: $tabbg;
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ width: 100%;
+ text-align: left;
+}
+
+ul#LC_secondary_menu li {
+ font-weight: bold;
+ line-height: 1.8em;
+ padding: 0 0.8em;
+ border-right: 1px solid black;
+ display: inline;
+ vertical-align: middle;
}
ul.LC_TabContent {
- display:block;
- background: $sidebg;
- border-bottom: solid 1px $lg_border_color;
- list-style:none;
- margin: 0 -10px;
- padding: 0;
+ display:block;
+ background: $sidebg;
+ border-bottom: solid 1px $lg_border_color;
+ list-style:none;
+ margin: 0 -10px;
+ padding: 0;
}
ul.LC_TabContent li,
ul.LC_TabContentBigger li {
- float:left;
+ float:left;
}
-ul#LC_TabMainMenuContent li a {
- color: $fontmenu;
- text-decoration: none;
+ul#LC_secondary_menu li a {
+ color: $fontmenu;
+ text-decoration: none;
}
ul.LC_TabContent {
- min-height:1.5em;
+ min-height:20px;
}
ul.LC_TabContent li {
- vertical-align:middle;
- padding: 0 10px 0 10px;
- background-color:$tabbg;
- border-bottom:solid 1px $lg_border_color;
+ vertical-align:middle;
+ padding: 0 16px 0 10px;
+ background-color:$tabbg;
+ border-bottom:solid 1px $lg_border_color;
+ border-right: solid 1px $font;
}
ul.LC_TabContent .right {
- float:right;
+ float:right;
+}
+
+ul.LC_TabContent li a,
+ul.LC_TabContent li {
+ color:rgb(47,47,47);
+ text-decoration:none;
+ font-size:95%;
+ font-weight:bold;
+ min-height:20px;
}
-ul.LC_TabContent li a, ul.LC_TabContent li {
- color:rgb(47,47,47);
- text-decoration:none;
- font-size:95%;
- font-weight:bold;
- padding-right: 16px;
+ul.LC_TabContent li a:hover,
+ul.LC_TabContent li a:focus {
+ color: $button_hover;
+ background:none;
+ outline:none;
}
-ul.LC_TabContent li:hover, ul.LC_TabContent li.active {
- background:#FFFFFF url(/adm/lonIcons/open.gif) no-repeat scroll right center;
- border-bottom:solid 2px #FFFFFF;
- padding-right: 16px;
+ul.LC_TabContent li:hover {
+ color: $button_hover;
+ cursor:pointer;
}
+ul.LC_TabContent li.active {
+ color: $font;
+ background:#FFFFFF url(/adm/lonIcons/open.gif) no-repeat scroll right center;
+ border-bottom:solid 1px #FFFFFF;
+ cursor: default;
+}
+
+ul.LC_TabContent li.active a {
+ color:$font;
+ background:#FFFFFF;
+ outline: none;
+}
#maincoursedoc {
- clear:both;
+ clear:both;
}
ul.LC_TabContentBigger {
- display:block;
- list-style:none;
- padding: 0;
+ display:block;
+ list-style:none;
+ padding: 0;
}
ul.LC_TabContentBigger li {
- vertical-align:bottom;
- height: 30px;
- font-size:110%;
- font-weight:bold;
- color: #737373;
+ vertical-align:bottom;
+ height: 30px;
+ font-size:110%;
+ font-weight:bold;
+ color: #737373;
}
+ul.LC_TabContentBigger li.active {
+ position: relative;
+ top: 1px;
+}
ul.LC_TabContentBigger li a {
- background:url('/adm/lonIcons/tabbgleft.gif') left bottom no-repeat;
- height: 30px;
- line-height: 30px;
- text-align: center;
- display: block;
- text-decoration: none;
+ background:url('/adm/lonIcons/tabbgleft.gif') left bottom no-repeat;
+ height: 30px;
+ line-height: 30px;
+ text-align: center;
+ display: block;
+ text-decoration: none;
+ outline: none;
}
-ul.LC_TabContentBigger li:hover a,
ul.LC_TabContentBigger li.active a {
- background:url('/adm/lonIcons/tabbgleft.gif') left top no-repeat;
- color:$font;
- text-decoration: underline;
+ background:url('/adm/lonIcons/tabbgleft.gif') left top no-repeat;
+ color:$font;
}
-
ul.LC_TabContentBigger li b {
- background: url('/adm/lonIcons/tabbgright.gif') no-repeat right bottom;
- display: block;
- float: left;
- padding: 0 30px;
+ background: url('/adm/lonIcons/tabbgright.gif') no-repeat right bottom;
+ display: block;
+ float: left;
+ padding: 0 30px;
+ border-bottom: 1px solid $lg_border_color;
+}
+
+ul.LC_TabContentBigger li:hover b {
+ color:$button_hover;
}
-ul.LC_TabContentBigger li:hover b,
ul.LC_TabContentBigger li.active b {
- background:url('/adm/lonIcons/tabbgright.gif') right top no-repeat;
- color:$font;
- border-bottom: 1px solid #FFFFFF;
+ background:url('/adm/lonIcons/tabbgright.gif') right top no-repeat;
+ color:$font;
+ border: 0;
}
@@ -6037,65 +6309,72 @@ ul.LC_CourseBreadcrumbs {
}
-ol#LC_MenuBreadcrumbs,
+ol#LC_MenuBreadcrumbs,
ol#LC_PathBreadcrumbs {
- padding-left: 10px;
- margin: 0;
- list-style-position: inside;
+ padding-left: 10px;
+ margin: 0;
+ height: 2.5em; /* equal to #LC_breadcrumbs line-height */
}
-ol#LC_MenuBreadcrumbs li,
-ol#LC_PathBreadcrumbs li,
+ol#LC_MenuBreadcrumbs li,
+ol#LC_PathBreadcrumbs li,
ul.LC_CourseBreadcrumbs li {
- display: inline;
- white-space: nowrap;
+ display: inline;
+ white-space: normal;
}
ol#LC_MenuBreadcrumbs li a,
ul.LC_CourseBreadcrumbs li a {
- text-decoration: none;
- font-size:90%;
+ text-decoration: none;
+ font-size:90%;
+}
+
+ol#LC_MenuBreadcrumbs h1 {
+ display: inline;
+ font-size: 90%;
+ line-height: 2.5em;
+ margin: 0;
+ padding: 0;
}
ol#LC_PathBreadcrumbs li a {
- text-decoration:none;
- font-size:100%;
- font-weight:bold;
+ text-decoration:none;
+ font-size:100%;
+ font-weight:bold;
}
.LC_Box {
- border: solid 1px $lg_border_color;
- padding: 0 10px 10px 10px;
+ border: solid 1px $lg_border_color;
+ padding: 0 10px 10px 10px;
}
.LC_AboutMe_Image {
- float:left;
- margin-right:10px;
+ float:left;
+ margin-right:10px;
}
.LC_Clear_AboutMe_Image {
- clear:left;
+ clear:left;
}
dl.LC_ListStyleClean dt {
- padding-right: 5px;
- display: table-header-group;
+ padding-right: 5px;
+ display: table-header-group;
}
dl.LC_ListStyleClean dd {
- display: table-row;
+ display: table-row;
}
.LC_ListStyleClean,
.LC_ListStyleSimple,
.LC_ListStyleNormal,
-.LC_ListStyle_Border,
.LC_ListStyleSpecial {
- /*display:block; */
- list-style-position: inside;
- list-style-type: none;
- overflow: hidden;
- padding: 0;
+ /* display:block; */
+ list-style-position: inside;
+ list-style-type: none;
+ overflow: hidden;
+ padding: 0;
}
.LC_ListStyleSimple li,
@@ -6104,211 +6383,178 @@ dl.LC_ListStyleClean dd {
.LC_ListStyleNormal dd,
.LC_ListStyleSpecial li,
.LC_ListStyleSpecial dd {
- margin: 0;
- padding: 5px 5px 5px 10px;
- clear: both;
+ margin: 0;
+ padding: 5px 5px 5px 10px;
+ clear: both;
}
.LC_ListStyleClean li,
.LC_ListStyleClean dd {
- padding-top: 0;
- padding-bottom: 0;
+ padding-top: 0;
+ padding-bottom: 0;
}
.LC_ListStyleSimple dd,
.LC_ListStyleSimple li {
- border-bottom: solid 1px $lg_border_color;
+ border-bottom: solid 1px $lg_border_color;
}
.LC_ListStyleSpecial li,
.LC_ListStyleSpecial dd {
- list-style-type: none;
- background-color: RGB(220, 220, 220);
- margin-bottom: 4px;
+ list-style-type: none;
+ background-color: RGB(220, 220, 220);
+ margin-bottom: 4px;
}
table.LC_SimpleTable {
- margin:5px;
- border:solid 1px $lg_border_color;
+ margin:5px;
+ border:solid 1px $lg_border_color;
}
table.LC_SimpleTable tr {
- padding: 0;
- border:solid 1px $lg_border_color;
+ padding: 0;
+ border:solid 1px $lg_border_color;
}
table.LC_SimpleTable thead {
- background:rgb(220,220,220);
+ background:rgb(220,220,220);
}
div.LC_columnSection {
- display: block;
- clear: both;
- overflow: hidden;
- margin: 0;
+ display: block;
+ clear: both;
+ overflow: hidden;
+ margin: 0;
}
div.LC_columnSection>* {
- float: left;
- margin: 10px 20px 10px 0;
- overflow:hidden;
-}
-
-.LC_loginpage_container {
- text-align:left;
- margin : 0 auto;
- width:90%;
- padding: 10px;
- height: auto;
- background-color:#FFFFFF;
- border:1px solid #CCCCCC;
-}
-
-
-.LC_loginpage_loginContainer {
- float:left;
- width: 182px;
- padding: 2px;
- border:1px solid #CCCCCC;
- background-color:$loginbg;
-}
-
-.LC_loginpage_loginContainer h2 {
- margin-top: 0;
- display:block;
- background:$bgcol;
- color:$textcol;
- padding-left:5px;
-}
-
-.LC_loginpage_loginInfo {
- float:left;
- width:182px;
- border:1px solid #CCCCCC;
- padding:2px;
-}
-
-.LC_loginpage_space {
- clear: both;
- margin-bottom: 20px;
- border-bottom: 1px solid #CCCCCC;
-}
-
-.LC_loginpage_floatLeft {
- float: left;
- width: 200px;
- margin: 0;
+ float: left;
+ margin: 10px 20px 10px 0;
+ overflow:hidden;
}
table em {
- font-weight: bold;
- font-style: normal;
+ font-weight: bold;
+ font-style: normal;
}
table.LC_tableBrowseRes,
table.LC_tableOfContent {
- border:none;
- border-spacing: 1px;
- padding: 3px;
- background-color: #FFFFFF;
- font-size: 90%;
+ border:none;
+ border-spacing: 1px;
+ padding: 3px;
+ background-color: #FFFFFF;
+ font-size: 90%;
}
-table.LC_tableOfContent{
- border-collapse: collapse;
+table.LC_tableOfContent {
+ border-collapse: collapse;
}
table.LC_tableBrowseRes a,
table.LC_tableOfContent a {
- background-color: transparent;
- text-decoration: none;
-}
-
-table.LC_tableBrowseRes tr.LC_trOdd,
-table.LC_tableOfContent tr.LC_trOdd{
- background-color: #EEEEEE;
+ background-color: transparent;
+ text-decoration: none;
}
table.LC_tableOfContent img {
- border: none;
- height: 1.3em;
- vertical-align: text-bottom;
- margin-right: 0.3em;
+ border: none;
+ height: 1.3em;
+ vertical-align: text-bottom;
+ margin-right: 0.3em;
}
a#LC_content_toolbar_firsthomework {
- background-image:url(/res/adm/pages/open-first-problem.gif);
-}
-
-a#LC_content_toolbar_launchnav {
- background-image:url(/res/adm/pages/start-navigation.gif);
-}
-
-a#LC_content_toolbar_closenav {
- background-image:url(/res/adm/pages/close-navigation.gif);
+ background-image:url(/res/adm/pages/open-first-problem.gif);
}
a#LC_content_toolbar_everything {
- background-image:url(/res/adm/pages/show-all.gif);
+ background-image:url(/res/adm/pages/show-all.gif);
}
a#LC_content_toolbar_uncompleted {
- background-image:url(/res/adm/pages/show-incomplete-problems.gif);
+ background-image:url(/res/adm/pages/show-incomplete-problems.gif);
}
#LC_content_toolbar_clearbubbles {
- background-image:url(/res/adm/pages/mark-discussionentries-read.gif);
+ background-image:url(/res/adm/pages/mark-discussionentries-read.gif);
}
a#LC_content_toolbar_changefolder {
- background : url(/res/adm/pages/close-all-folders.gif) top center ;
+ background : url(/res/adm/pages/close-all-folders.gif) top center ;
}
a#LC_content_toolbar_changefolder_toggled {
- background-image:url(/res/adm/pages/open-all-folders.gif);
+ background-image:url(/res/adm/pages/open-all-folders.gif);
}
ul#LC_toolbar li a:hover {
- background-position: bottom center;
+ background-position: bottom center;
}
ul#LC_toolbar {
- padding: 0;
- margin: 2px;
- list-style:none;
- position:relative;
- background-color:white;
+ padding: 0;
+ margin: 2px;
+ list-style:none;
+ position:relative;
+ background-color:white;
}
ul#LC_toolbar li {
- border:1px solid white;
- padding: 0;
- margin: 0;
- float: left;
- display:inline;
- vertical-align:middle;
-}
+ border:1px solid white;
+ padding: 0;
+ margin: 0;
+ float: left;
+ display:inline;
+ vertical-align:middle;
+}
a.LC_toolbarItem {
- display:block;
- padding: 0;
- margin: 0;
- height: 32px;
- width: 32px;
- color:white;
- border: none;
- background-repeat:no-repeat;
- background-color:transparent;
+ display:block;
+ padding: 0;
+ margin: 0;
+ height: 32px;
+ width: 32px;
+ color:white;
+ border: none;
+ background-repeat:no-repeat;
+ background-color:transparent;
+}
+
+ul.LC_funclist {
+ margin: 0;
+ padding: 0.5em 1em 0.5em 0;
+}
+
+ul.LC_funclist > li:first-child {
+ font-weight:bold;
+ margin-left:0.8em;
+}
+
+ul.LC_funclist + ul.LC_funclist {
+ /*
+ left border as a seperator if we have more than
+ one list
+ */
+ border-left: 1px solid $sidebg;
+ /*
+ this hides the left border behind the border of the
+ outer box if element is wrapped to the next 'line'
+ */
+ margin-left: -1px;
}
ul.LC_funclist li {
- float: left;
+ display: inline;
white-space: nowrap;
- height: 35px; /* at least as high as heighest list item */
- margin: 0 15px 15px 10px;
+ margin: 0 0 0 25px;
+ line-height: 150%;
}
+.LC_hidden {
+ display: none;
+}
END
}
@@ -6361,8 +6607,8 @@ sub headtag {
if (!$args->{'frameset'}) {
$result .= &Apache::lonhtmlcommon::htmlareaheaders();
}
- if ($args->{'force_register'}) {
- $result .= &Apache::lonmenu::registerurl(1);
+ if ($args->{'force_register'} && $env{'request.noversionuri'} !~ m{^/res/adm/pages/}) {
+ $result .= Apache::lonxml::display_title();
}
if (!$args->{'no_nav_bar'}
&& !$args->{'only_body'}
@@ -6388,7 +6634,7 @@ ADDMETA
$result .= ' LON-CAPA '.$title.''
.''
.$head_extra;
- return $result;
+ return $result.'';
}
=pod
@@ -6423,10 +6669,6 @@ Inputs: none
sub xml_begin {
my $output='';
- if ($env{'internal.start_page'}==1) {
- &Apache::lonhtmlcommon::init_htmlareafields();
- }
-
if ($env{'browser.mathml'}) {
$output=''
#.''."\n"
@@ -6445,43 +6687,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.
@@ -6519,14 +6724,12 @@ $args - additional optional args support
skip_phases -> hash ref of
head -> skip the generation
body -> skip all generation
- no_inline_link -> if true and in remote mode, don't show the
- '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
current page
bread_crumbs -> Array containing breadcrumbs
- bread_crumbs_components -> if exists show it as headline else show only the breadcrumbs
+ bread_crumbs_component -> if exists show it as headline else show only the breadcrumbs
=back
@@ -6537,6 +6740,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',
@@ -6545,13 +6756,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'}) ) {
@@ -6565,8 +6779,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);
}
}
@@ -6582,8 +6795,9 @@ 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
if (exists($args->{'bread_crumbs'}) or exists($args->{'bread_crumbs_component'})) {
@@ -6605,28 +6819,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