Diff for /loncom/interface/loncommon.pm between versions 1.339 and 1.345

version 1.339, 2006/04/18 19:18:17 version 1.345, 2006/04/21 20:45:42
Line 63  use Apache::lonlocal; Line 63  use Apache::lonlocal;
 use HTML::Entities;  use HTML::Entities;
 use Apache::lonhtmlcommon();  use Apache::lonhtmlcommon();
 use Apache::loncoursedata();  use Apache::loncoursedata();
   use Apache::lontexconvert();
   
 my $readit;  my $readit;
   
Line 2807  sub bodytag { Line 2808  sub bodytag {
   
 # construct main body tag  # construct main body tag
     my $bodytag = <<END;      my $bodytag = <<END;
 <style type="text/css">  
 h1, h2, h3, th { font-family: Arial, Helvetica, sans-serif }  
 a:focus { color: red; background: yellow }   
 table.thinborder { border-collapse: collapse; }  
 table.thinborder tr th, table.thinborder tr td { border-style: solid; border-width: 1px}  
 form, .inline { display: inline; }  
 .center { text-align: center; }  
 .filename {font-family: monospace;}  
 </style>  
 <body $extra_body_attr>  <body $extra_body_attr>
 END  END
   
Line 3049  sub endbodytag { Line 3041  sub endbodytag {
     return $endbodytag;      return $endbodytag;
 }  }
   
   sub standard_css {
       my ($function,$domain,$bgcolor) = @_;
       my $function = &get_users_function() if (!$function);
       my $img =    &designparm($function.'.img',$domain);
       my $tabbg =  &designparm($function.'.tabbg',$domain);
       my $font =   &designparm($function.'.font',$domain);
       my $sidebg = &designparm($function.'.sidebg',$domain);
       my $pgbg   = $bgcolor || &designparm($function.'.pgbg',$domain);
   
       my $alink  = &designparm($function.'.alink',$domain);
       my $vlink  = &designparm($function.'.vlink',$domain);
       my $link   = &designparm($function.'.link',$domain);
       my $sans   = 'Arial,Helvetica,sans-serif';
       return <<END;
   <style type="text/css">
   h1, h2, h3, th { font-family: $sans }
   a:focus { color: red; background: yellow } 
   table.thinborder { border-collapse: collapse; }
   table.thinborder tr th, table.thinborder tr td { border-style: solid; border-width: 1px}
   form, .inline { display: inline; }
   .center { text-align: center; }
   .filename {font-family: monospace;}
   table#LC_top_nav {
     width: 100%;
     background: $pgbg;
     border: 0px;
     border-spacing: 1px;
     padding: 0px;
     margin: 0px;
     border-collapse: separate;
   }
   table#LC_top_nav td {
     background: $tabbg;
   }
   table#LC_top_nav td a, div#LC_top_nav a {
     color: $font;
     font-family: $sans;
   }
   </style>
   END
   }
   
 =pod  =pod
   
 =over 4  =over 4
Line 3076  sub headtag { Line 3110  sub headtag {
           
     my $result =      my $result =
  '<head>'.   '<head>'.
  &Apache::lonxml::fontsettings().   &standard_css().
    &font_settings().
  &Apache::lonhtmlcommon::htmlareaheaders();   &Apache::lonhtmlcommon::htmlareaheaders();
   
     if ($args->{'force_register'}) {      if ($args->{'force_register'}) {
Line 3089  sub headtag { Line 3124  sub headtag {
  $env{'internal.head.redirect'} = $url;   $env{'internal.head.redirect'} = $url;
  $result.=<<ADDMETA   $result.=<<ADDMETA
 <meta http-equiv="pragma" content="no-cache" />  <meta http-equiv="pragma" content="no-cache" />
 <meta HTTP-EQUIV="Refresh" CONTENT="$time; url=$url" />  <meta http-equiv="Refresh" content="$time; url=$url" />
 ADDMETA  ADDMETA
     }      }
     if (!defined($title)) {      if (!defined($title)) {
Line 3104  ADDMETA Line 3139  ADDMETA
   
 =over 4  =over 4
   
   =item * &font_settings()
   
   Returns neccessary <meta> to set the proper encoding
   
   Inputs: none
   
   =back
   
   =cut
   
   sub font_settings {
       my $headerstring='';
       if (($env{'browser.os'} eq 'mac') && (!$env{'browser.mathml'})) { 
    $headerstring.=
       '<meta Content-Type="text/html; charset=x-mac-roman" />';
       } elsif (!$env{'browser.mathml'} && $env{'browser.unicode'}) {
    $headerstring.=
       '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />';
       }
       return $headerstring;
   }
   
   =pod
   
   =over 4
   
   =item * &xml_begin()
   
   Returns the needed doctype and <html>
   
   Inputs: none
   
   =back
   
   =cut
   
   sub xml_begin {
       my $output='';
   
       &Apache::lonhtmlcommon::init_htmlareafields();
   
       if ($env{'browser.mathml'}) {
    $output='<?xml version="1.0"?>'
               #.'<?xml-stylesheet type="text/css" href="/adm/MathML/mathml.css"?>'."\n"
   #            .'<!DOCTYPE html SYSTEM "/adm/MathML/mathml.dtd" '
               
   #    .'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [<!ENTITY mathns "http://www.w3.org/1998/Math/MathML">] >'
       .'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd">'
               .'<html xmlns:math="http://www.w3.org/1998/Math/MathML" ' 
       .'xmlns="http://www.w3.org/1999/xhtml">';
       } else {
    $output='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html>';
       }
       return $output;
   }
   
   =pod
   
   =over 4
   
 =item * &endheadtag()  =item * &endheadtag()
   
 Returns a uniform </head> for LON-CAPA web pages.  Returns a uniform </head> for LON-CAPA web pages.
Line 3192  sub start_page { Line 3287  sub start_page {
     my $result;      my $result;
     if (! exists($args->{'skip_phases'}{'head'}) ) {      if (! exists($args->{'skip_phases'}{'head'}) ) {
  $result.=   $result.=
     &Apache::lonxml::xmlbegin().      &xml_begin().
     &headtag($title,$head_extra,\%head_args).&endheadtag();      &headtag($title,$head_extra,\%head_args).&endheadtag();
     }      }
           

Removed from v.1.339  
changed lines
  Added in v.1.345


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>