version 1.342, 2004/10/07 16:27:48
|
version 1.350, 2004/12/09 23:45:59
|
Line 159 sub xmlbegin {
|
Line 159 sub xmlbegin {
|
.'<html xmlns:math="http://www.w3.org/1998/Math/MathML" ' |
.'<html xmlns:math="http://www.w3.org/1998/Math/MathML" ' |
.'xmlns="http://www.w3.org/TR/REC-html40">'; |
.'xmlns="http://www.w3.org/TR/REC-html40">'; |
} else { |
} else { |
$output='<html>'; |
$output='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|
<html>'; |
} |
} |
return $output; |
return $output; |
} |
} |
Line 287 sub fontsettings() {
|
Line 288 sub fontsettings() {
|
my $headerstring=''; |
my $headerstring=''; |
if (($ENV{'browser.os'} eq 'mac') && (!$ENV{'browser.mathml'})) { |
if (($ENV{'browser.os'} eq 'mac') && (!$ENV{'browser.mathml'})) { |
$headerstring.= |
$headerstring.= |
'<meta Content-Type="text/html; charset=x-mac-roman">'; |
'<meta Content-Type="text/html; charset=x-mac-roman" />'; |
} elsif (!$ENV{'browser.mathml'} && $ENV{'browser.unicode'}) { |
} elsif (!$ENV{'browser.mathml'} && $ENV{'browser.unicode'}) { |
$headerstring.= |
$headerstring.= |
'<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'; |
'<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'; |
Line 1029 sub parstring {
|
Line 1030 sub parstring {
|
my $val=$token->[2]->{$_}; |
my $val=$token->[2]->{$_}; |
$val =~ s/([\%\@\\\"\'])/\\$1/g; |
$val =~ s/([\%\@\\\"\'])/\\$1/g; |
$val =~ s/(\$[^{a-zA-Z_])/\\$1/g; |
$val =~ s/(\$[^{a-zA-Z_])/\\$1/g; |
|
$val =~ s/(\$)$/\\$1/; |
#if ($val =~ m/^[\%\@]/) { $val="\\".$val; } |
#if ($val =~ m/^[\%\@]/) { $val="\\".$val; } |
$temp .= "my \$$_=\"$val\";"; |
$temp .= "my \$$_=\"$val\";"; |
} |
} |
Line 1155 sub inserteditinfo {
|
Line 1157 sub inserteditinfo {
|
if ($filetype eq 'html') { |
if ($filetype eq 'html') { |
my $addbuttons=&Apache::lonhtmlcommon::htmlareaaddbuttons(); |
my $addbuttons=&Apache::lonhtmlcommon::htmlareaaddbuttons(); |
$initialize=&Apache::lonhtmlcommon::htmlareaheaders(). |
$initialize=&Apache::lonhtmlcommon::htmlareaheaders(). |
&Apache::lonhtmlcommon::spellheader().(<<FULLPAGE); |
&Apache::lonhtmlcommon::spellheader(); |
|
if (!&Apache::lonhtmlcommon::htmlareablocked() && |
|
&Apache::lonhtmlcommon::htmlareabrowser()) { |
|
$initialize.=(<<FULLPAGE); |
<script type="text/javascript"> |
<script type="text/javascript"> |
$addbuttons |
$addbuttons |
|
|
Line 1168 $addbuttons
|
Line 1173 $addbuttons
|
} |
} |
</script> |
</script> |
FULLPAGE |
FULLPAGE |
|
} else { |
|
$initialize.=(<<FULLPAGE); |
|
<script type="text/javascript"> |
|
$addbuttons |
|
function initDocument() { |
|
} |
|
</script> |
|
FULLPAGE |
|
} |
$result=~s/\<body([^\>]*)\>/\<body onload="initDocument()" $1\>/i; |
$result=~s/\<body([^\>]*)\>/\<body onload="initDocument()" $1\>/i; |
$xml_help=&Apache::loncommon::helpLatexCheatsheet(); |
$xml_help=&Apache::loncommon::helpLatexCheatsheet(); |
} |
} |
Line 1288 $bodytag
|
Line 1302 $bodytag
|
</body> |
</body> |
</html> |
</html> |
ENDNOTFOUND |
ENDNOTFOUND |
$filecontents=''; |
$filecontents=''; |
if ($ENV{'request.state'} ne 'published') { |
if ($ENV{'request.state'} ne 'published') { |
if ($filetype eq 'sty') { |
if ($filetype eq 'sty') { |
$filecontents=&createnewsty(); |
$filecontents=&createnewsty(); |
Line 1299 ENDNOTFOUND
|
Line 1313 ENDNOTFOUND
|
} |
} |
} else { |
} else { |
unless ($ENV{'request.state'} eq 'published') { |
unless ($ENV{'request.state'} eq 'published') { |
|
if ($filecontents=~/BEGIN LON-CAPA Internal/) { |
|
&Apache::lonxml::error(&mt('This file appears to be a rendering of a Lon-CAPA resource. If this is correct, this resource will act very oddly and incorrectly.')); |
|
} |
|
|
if ($ENV{'form.attemptclean'}) { |
if ($ENV{'form.attemptclean'}) { |
$filecontents=&htmlclean($filecontents,1); |
$filecontents=&htmlclean($filecontents,1); |
} |
} |
Line 1320 ENDNOTFOUND
|
Line 1338 ENDNOTFOUND
|
if ($ENV{'form.editmode'} && (!($ENV{'form.viewmode'}))) { |
if ($ENV{'form.editmode'} && (!($ENV{'form.viewmode'}))) { |
my $displayfile=$request->uri; |
my $displayfile=$request->uri; |
$displayfile=~s/^\/[^\/]*//; |
$displayfile=~s/^\/[^\/]*//; |
$result='<html><body bgcolor="#FFFFFF">'. |
my $bodytag='<body bgcolor="#FFFFFF">'; |
|
if ($ENV{'environment.remote'} eq 'off') { |
|
$bodytag=&Apache::loncommon::bodytag(); |
|
} |
|
$result='<html>'.$bodytag. |
&Apache::lonxml::message_location().'<h3>'. |
&Apache::lonxml::message_location().'<h3>'. |
$displayfile. |
$displayfile. |
'</h3></body></html>'; |
'</h3></body></html>'; |
Line 1355 sub debug {
|
Line 1377 sub debug {
|
my $request=$Apache::lonxml::request; |
my $request=$Apache::lonxml::request; |
if (!$request) { $request=Apache->request; } |
if (!$request) { $request=Apache->request; } |
$request->print('<font size="-2"><pre>DEBUG:'.&HTML::Entities::encode($_[0],'<>&"')."</pre></font>\n"); |
$request->print('<font size="-2"><pre>DEBUG:'.&HTML::Entities::encode($_[0],'<>&"')."</pre></font>\n"); |
# &Apache::lonnet::logthis($_[0]); |
#&Apache::lonnet::logthis($_[0]); |
} |
} |
} |
} |
|
|
|
sub show_error_warn_msg { |
|
return (($Apache::lonxml::debug eq 1) || |
|
($ENV{'request.state'} eq 'construct') || |
|
($Apache::lonhomework::browse eq 'F' |
|
&& |
|
$ENV{'form.show_errors'} eq 'on')); |
|
} |
|
|
sub error { |
sub error { |
$errorcount++; |
$errorcount++; |
if (($Apache::lonxml::debug eq 1) || ($ENV{'request.state'} eq 'construct') ) { |
if ( &show_error_warn_msg() ) { |
# If printing in construction space, put the error inside <pre></pre> |
# If printing in construction space, put the error inside <pre></pre> |
push(@Apache::lonxml::error_messages, |
push(@Apache::lonxml::error_messages, |
$Apache::lonxml::warnings_error_header. |
$Apache::lonxml::warnings_error_header. |
Line 1401 sub warning {
|
Line 1431 sub warning {
|
$warningcount++; |
$warningcount++; |
|
|
if ($ENV{'form.grade_target'} ne 'tex') { |
if ($ENV{'form.grade_target'} ne 'tex') { |
if ($ENV{'request.state'} eq 'construct' || $Apache::lonxml::debug) { |
if ( &show_error_warn_msg() ) { |
my $request=$Apache::lonxml::request; |
my $request=$Apache::lonxml::request; |
if (!$request) { $request=Apache->request; } |
if (!$request) { $request=Apache->request; } |
push(@Apache::lonxml::warning_messages, |
push(@Apache::lonxml::warning_messages, |
Line 1566 sub whichuser {
|
Line 1596 sub whichuser {
|
my ($passedsymb)=@_; |
my ($passedsymb)=@_; |
my ($symb,$courseid,$domain,$name,$publicuser); |
my ($symb,$courseid,$domain,$name,$publicuser); |
if (defined($ENV{'form.grade_symb'})) { |
if (defined($ENV{'form.grade_symb'})) { |
my $tmp_courseid=$ENV{'form.grade_courseid'}; |
my ($tmp_courseid)= |
my $allowed=&Apache::lonnet::allowed('vgr',$tmp_courseid); |
&Apache::loncommon::get_env_multiple('form.grade_courseid'); |
if ($allowed) { |
my $allowed=&Apache::lonnet::allowed('vgr',$tmp_courseid); |
$symb=$ENV{'form.grade_symb'}; |
if (!$allowed && |
$courseid=$ENV{'form.grade_courseid'}; |
exists($ENV{'request.course.sec'}) && |
$domain=$ENV{'form.grade_domain'}; |
$ENV{'request.course.sec'} !~ /^\s*$/) { |
$name=$ENV{'form.grade_username'}; |
$allowed=&Apache::lonnet::allowed('vgr',$tmp_courseid. |
} |
'/'.$ENV{'request.course.sec'}); |
} else { |
|
if (!$passedsymb) { |
|
$symb=&Apache::lonnet::symbread(); |
|
} else { |
|
$symb=$passedsymb; |
|
} |
} |
$courseid=$ENV{'request.course.id'}; |
if ($allowed) { |
$domain=$ENV{'user.domain'}; |
($symb)=&Apache::loncommon::get_env_multiple('form.grade_symb'); |
$name=$ENV{'user.name'}; |
$courseid=$tmp_courseid; |
if ($name eq 'public' && $domain eq 'public') { |
($domain)=&Apache::loncommon::get_env_multiple('form.grade_domain'); |
if (!defined($ENV{'form.username'})) { |
($name)=&Apache::loncommon::get_env_multiple('form.grade_username'); |
$ENV{'form.username'}.=time.rand(10000000); |
return ($symb,$courseid,$domain,$name,$publicuser); |
} |
} |
$name.=$ENV{'form.username'}; |
} |
|
if (!$passedsymb) { |
|
$symb=&Apache::lonnet::symbread(); |
|
} else { |
|
$symb=$passedsymb; |
|
} |
|
$courseid=$ENV{'request.course.id'}; |
|
$domain=$ENV{'user.domain'}; |
|
$name=$ENV{'user.name'}; |
|
if ($name eq 'public' && $domain eq 'public') { |
|
if (!defined($ENV{'form.username'})) { |
|
$ENV{'form.username'}.=time.rand(10000000); |
} |
} |
|
$name.=$ENV{'form.username'}; |
} |
} |
return ($symb,$courseid,$domain,$name,$publicuser); |
return ($symb,$courseid,$domain,$name,$publicuser); |
} |
} |