--- loncom/interface/loncommon.pm 2005/02/14 01:44:02 1.249 +++ loncom/interface/loncommon.pm 2005/03/02 20:35:46 1.254 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common routines # -# $Id: loncommon.pm,v 1.249 2005/02/14 01:44:02 albertel Exp $ +# $Id: loncommon.pm,v 1.254 2005/03/02 20:35:46 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -547,7 +547,7 @@ END $result .= "<select size=\"1\" name=\"$firstselectname\" onchange=\"select1_changed()\">\n"; foreach my $value (sort(keys(%$hashref))) { $result.=" <option value=\"$value\" "; - $result.=" selected=\"true\" " if ($value eq $firstdefault); + $result.=" selected=\"selected\" " if ($value eq $firstdefault); $result.=">".&mt($hashref->{$value}->{'text'})."</option>\n"; } $result .= "</select>\n"; @@ -557,7 +557,7 @@ END my $seconddefault = $hashref->{$firstdefault}->{'default'}; foreach my $value (sort(keys(%select2))) { $result.=" <option value=\"$value\" "; - $result.=" selected=\"true\" " if ($value eq $seconddefault); + $result.=" selected=\"selected\" " if ($value eq $seconddefault); $result.=">".&mt($select2{$value})."</option>\n"; } $result .= "</select>\n"; @@ -687,16 +687,18 @@ sub help_open_menu { "<table bgcolor='#773311' cellspacing='1' cellpadding='1' border='0'><tr>". "<td bgcolor='#886622'><a href=\"$link\"><font color='#FFFFFF' size='2'>$text</font></a>"; } + my $html=&Apache::lonxml::xmlbegin(); my $helpicon=&lonhttpdurl("/adm/lonIcons/helpgateway.gif"); $template .= <<"ENDTEMPLATE"; <script type="text/javascript"> -//<!-- BEGIN LON-CAPA Internal +// <!-- BEGIN LON-CAPA Internal +// <![CDATA[ function helpMenu(target) { var caller = this; if (target == 'open') { var newWindow = null; try { - newWindow = window.open("","helpmenu","HEIGHT=$height,WIDTH=$width,resizable=yes,scrollbars=yes" ) + newWindow = window.open("/adm/rat/empty.html","helpmenu","HEIGHT=$height,WIDTH=$width,resizable=yes,scrollbars=yes" ) } catch(error) { writeHelp(caller); @@ -710,12 +712,13 @@ function helpMenu(target) { return; } function writeHelp(caller) { - caller.document.write("<html><head><title>LON-CAPA Help Menu</title><meta http-equiv='pragma' content='no-cache'></head>") + caller.document.write('$html<head><title>LON-CAPA Help Menu</title><meta http-equiv="pragma" content="no-cache"></head>') caller.document.write("<frameset rows='105,*' border='0'><frame name='bannerframe' src='$banner_link'><frame name='bodyframe' src='$details_link'></frameset>") caller.document.write("</html>") caller.document.close() caller.focus() } +// ]]> // END LON-CAPA Internal --> </script> <a href="$link" title="$title"><img src="$helpicon" border="0" alt="(Help Menu)" /></a> @@ -1044,7 +1047,7 @@ sub multiple_select_form { $output.="\n<select name='$name' size='$size' multiple='1'>"; foreach (sort(keys(%hash))) { $output.='<option value="'.$_.'" '; - $output.='selected ' if ($selected{$_}); + $output.='selected="selected" ' if ($selected{$_}); $output.='>'.$hash{$_}."</option>\n"; } $output.="</select>\n"; @@ -1075,7 +1078,7 @@ sub select_form { } foreach (@keys) { $selectform.="<option value=\"$_\" ". - ($_ eq $def ? 'selected' : ''). + ($_ eq $def ? 'selected="selected" ' : ''). ">".&mt($hash{$_})."</option>\n"; } $selectform.="</select>"; @@ -1112,7 +1115,7 @@ sub select_level_form { my $selectform = "<select name=\"$name\" size=\"1\">\n"; for (my $i=0; $i<=18; $i++) { $selectform.="<option value=\"$i\" ". - ($i==$deflevel ? 'selected' : ''). + ($i==$deflevel ? 'selected="selected" ' : ''). ">".&gradeleveldescription($i)."</option>\n"; } $selectform.="</select>"; @@ -1142,7 +1145,7 @@ sub select_dom_form { my $selectdomain = "<select name=\"$name\" size=\"1\">\n"; foreach (@domains) { $selectdomain.="<option value=\"$_\" ". - ($_ eq $defdom ? 'selected="selected"' : ''). + ($_ eq $defdom ? 'selected="selected" ' : ''). ">$_</option>\n"; } $selectdomain.="</select>"; @@ -2352,7 +2355,7 @@ sub submlink { &Apache::lonxml::whichuser($symb); if (!$symb) { $symb=$cursymb; } } - if (!$symb) { $symb=&symbread(); } + if (!$symb) { $symb=&Apache::lonnet::symbread(); } $symb=&Apache::lonnet::escape($symb); if ($target) { $target="target=\"$target\""; } return '<a href="/adm/grades?&command=submission&'. @@ -2398,7 +2401,7 @@ sub pprmlink { &Apache::lonxml::whichuser($symb); if (!$symb) { $symb=$cursymb; } } - if (!$symb) { $symb=&symbread(); } + if (!$symb) { $symb=&Apache::lonnet::symbread(); } $symb=&Apache::lonnet::escape($symb); if ($target) { $target="target=\"$target\""; } return '<a href="/adm/parmset?&command=set&'. @@ -2631,6 +2634,13 @@ a:focus { color: red; background: yellow <body bgcolor="$pgbg" text="$font" alink="$alink" vlink="$vlink" link="$link" style="margin-top: 0px;$addstyle" $addentries> END + if ($ENV{'environment.texengine'} eq 'jsMath') { + $bodytag.='<script type="text/javascript"> + function NoFontMessage () {} + </script>'."\n". + '<script src="/adm/jsMath/jsMath.js"></script>'."\n"; + } + my $upperleft='<img src="http://'.$ENV{'HTTP_HOST'}.':'. $lonhttpdPort.$img.'" alt="'.$function.'" />'; if ($bodyonly) { @@ -2749,6 +2759,40 @@ ENDBODY } ############################################### +############################################### + +=pod + +=back + +=head1 HTTP Helpers + +=over 4 + +=item * &endbodytag() + +Returns a uniform footer for LON-CAPA web pages. + +Inputs: + +=over 4 + +=back + +Returns: A uniform footer for LON-CAPA web pages. + +=cut + +sub endbodytag { + my $endbodytag='</body>'; + if ($ENV{'environment.texengine'} eq 'jsMath') { + $endbodytag='<script type="text/javascript">jsMath.Process()</script>'. + "\n".$endbodytag; + } + return $endbodytag; +} + +############################################### =pod @@ -2968,6 +3012,7 @@ sub no_cache { sub content_type { my ($r,$type,$charset) = @_; + if ($ENV{'browser.mathml'} && $type eq 'text/html') { $type='text/xml'; } unless ($charset) { $charset=&Apache::lonlocal::current_encoding; } @@ -3268,7 +3313,7 @@ sub csv_print_select_table { $r->print('<option value="none"></option>'); foreach (sort({$a <=> $b} keys(%sone))) { $r->print('<option value="'.$_.'"'. - ($_ eq $defaultcol ? ' selected ' : ''). + ($_ eq $defaultcol ? ' selected="selected" ' : ''). '>Column '.($_+1).'</option>'); } $r->print('</select></td></tr>'."\n"); @@ -3312,7 +3357,7 @@ sub csv_samples_select_table { foreach (@$d) { my ($value,$display,$defaultcol)=@{ $_ }; $r->print('<option value="'.$value.'"'. - ($i eq $defaultcol ? ' selected ':'').'>'. + ($i eq $defaultcol ? ' selected="selected" ':'').'>'. $display.'</option>'); } $r->print('</select></td><td>');