version 1.375, 2005/06/09 02:12:26
|
version 1.382, 2005/09/14 19:20:23
|
Line 180 sub xmlend {
|
Line 180 sub xmlend {
|
$status=$Apache::inputtags::status[-1]; |
$status=$Apache::inputtags::status[-1]; |
} |
} |
my $discussion; |
my $discussion; |
&Apache::loncommon::get_unprocessed_cgi |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
($env{'query_string'},['LONCAPA_INTERNAL_no_discussion']); |
['LONCAPA_INTERNAL_no_discussion']); |
if (! exists($env{'form.LONCAPA_INTERNAL_no_discussion'}) || |
if (! exists($env{'form.LONCAPA_INTERNAL_no_discussion'}) || |
$env{'form.LONCAPA_INTERNAL_no_discussion'} ne 'true') { |
$env{'form.LONCAPA_INTERNAL_no_discussion'} ne 'true') { |
$discussion=&Apache::lonfeedback::list_discussion($mode,$status); |
$discussion=&Apache::lonfeedback::list_discussion($mode,$status); |
Line 397 sub latex_special_symbols {
|
Line 397 sub latex_special_symbols {
|
$string=~s/\\\%|\%/\\\%/g; |
$string=~s/\\\%|\%/\\\%/g; |
$string=~s/\\{|{/\\{/g; |
$string=~s/\\{|{/\\{/g; |
$string=~s/\\}|}/\\}/g; |
$string=~s/\\}|}/\\}/g; |
|
$string=~s/\\ensuremath\\{\\backslash\\}/\\ensuremath{\\backslash}/g; |
$string=~s/\\\$|\$/\\\$/g; |
$string=~s/\\\$|\$/\\\$/g; |
$string=~s/\\\_|\_/\\\_/g; |
$string=~s/\\\_|\_/\\\_/g; |
$string=~s/([^\\]|^)(\~|\^)/$1\\$2\\strut /g; |
$string=~s/([^\\]|^)(\~|\^)/$1\\$2\\strut /g; |
Line 817 sub startredirection {
|
Line 818 sub startredirection {
|
|
|
sub endredirection { |
sub endredirection { |
if (!$Apache::lonxml::redirection) { |
if (!$Apache::lonxml::redirection) { |
&Apache::lonxml::error("Endredirection was called, before a startredirection, perhaps you have unbalanced tags. Some debuging information:".join ":",caller); |
&Apache::lonxml::error("Endredirection was called before a startredirection, perhaps you have unbalanced tags. Some debugging information:".join ":",caller); |
return ''; |
return ''; |
} |
} |
$Apache::lonxml::redirection--; |
$Apache::lonxml::redirection--; |
Line 892 sub get_all_text_unbalanced {
|
Line 893 sub get_all_text_unbalanced {
|
$tag='<'.$tag.'>'; |
$tag='<'.$tag.'>'; |
while ($token = $$pars[-1]->get_token) { |
while ($token = $$pars[-1]->get_token) { |
if (($token->[0] eq 'T')||($token->[0] eq 'C')||($token->[0] eq 'D')) { |
if (($token->[0] eq 'T')||($token->[0] eq 'C')||($token->[0] eq 'D')) { |
$result.=$token->[1]; |
if ($token->[2]) { |
|
$result.='<![CDATA['.$token->[1].']]>'; |
|
} else { |
|
$result.=$token->[1]; |
|
} |
} elsif ($token->[0] eq 'PI') { |
} elsif ($token->[0] eq 'PI') { |
$result.=$token->[2]; |
$result.=$token->[2]; |
} elsif ($token->[0] eq 'S') { |
} elsif ($token->[0] eq 'S') { |
Line 958 sub get_all_text {
|
Line 963 sub get_all_text {
|
while (($depth >=0) && ($token = $$pars[-1]->get_token)) { |
while (($depth >=0) && ($token = $$pars[-1]->get_token)) { |
#&Apache::lonxml::debug("e token:$token->[0]:$depth:$token->[1]:".$#$pars.":".$#Apache::lonxml::pwd); |
#&Apache::lonxml::debug("e token:$token->[0]:$depth:$token->[1]:".$#$pars.":".$#Apache::lonxml::pwd); |
if (($token->[0] eq 'T')||($token->[0] eq 'C')||($token->[0] eq 'D')) { |
if (($token->[0] eq 'T')||($token->[0] eq 'C')||($token->[0] eq 'D')) { |
$result.=$token->[1]; |
if ($token->[2]) { |
|
$result.='<![CDATA['.$token->[1].']]>'; |
|
} else { |
|
$result.=$token->[1]; |
|
} |
} elsif ($token->[0] eq 'PI') { |
} elsif ($token->[0] eq 'PI') { |
$result.=$token->[2]; |
$result.=$token->[2]; |
} elsif ($token->[0] eq 'S') { |
} elsif ($token->[0] eq 'S') { |
Line 1010 sub get_all_text {
|
Line 1019 sub get_all_text {
|
#&Apache::lonxml::debug("s token:$token->[0]:$depth:$token->[1]"); |
#&Apache::lonxml::debug("s token:$token->[0]:$depth:$token->[1]"); |
if (($token->[0] eq 'T')||($token->[0] eq 'C')|| |
if (($token->[0] eq 'T')||($token->[0] eq 'C')|| |
($token->[0] eq 'D')) { |
($token->[0] eq 'D')) { |
$result.=$token->[1]; |
if ($token->[2]) { |
|
$result.='<![CDATA['.$token->[1].']]>'; |
|
} else { |
|
$result.=$token->[1]; |
|
} |
} elsif ($token->[0] eq 'PI') { |
} elsif ($token->[0] eq 'PI') { |
$result.=$token->[2]; |
$result.=$token->[2]; |
} elsif ($token->[0] eq 'S') { |
} elsif ($token->[0] eq 'S') { |
Line 1065 sub parstring {
|
Line 1078 sub parstring {
|
|
|
sub writeallows { |
sub writeallows { |
unless ($#extlinks>=0) { return; } |
unless ($#extlinks>=0) { return; } |
my $thisurl='/res/'.&Apache::lonnet::declutter(shift); |
my $thisurl = &Apache::lonnet::clutter(shift); |
if ($env{'httpref.'.$thisurl}) { |
if ($env{'httpref.'.$thisurl}) { |
$thisurl=$env{'httpref.'.$thisurl}; |
$thisurl=$env{'httpref.'.$thisurl}; |
} |
} |
Line 1147 sub createnewhtml {
|
Line 1160 sub createnewhtml {
|
my $title=&mt('Title of document goes here'); |
my $title=&mt('Title of document goes here'); |
my $body=&mt('Body of document goes here'); |
my $body=&mt('Body of document goes here'); |
my $filecontents=(<<SIMPLECONTENT); |
my $filecontents=(<<SIMPLECONTENT); |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml/11/DTD/xhtml11.dtd"> |
|
<html> |
<html> |
<head> |
<head> |
<title>$title</title> |
<title>$title</title> |
Line 1336 ENDNOTFOUND
|
Line 1348 ENDNOTFOUND
|
} else { |
} else { |
unless ($env{'request.state'} eq 'published') { |
unless ($env{'request.state'} eq 'published') { |
if ($filecontents=~/BEGIN LON-CAPA Internal/) { |
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.')); |
&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.')); |
} |
} |
# |
# |
# we are in construction space, see if edit mode forced |
# we are in construction space, see if edit mode forced |
Line 1431 sub error {
|
Line 1443 sub error {
|
&Apache::lonmsg::author_res_msg($env{'request.filename'},join('<br />',@_)); |
&Apache::lonmsg::author_res_msg($env{'request.filename'},join('<br />',@_)); |
#notify course |
#notify course |
if ( $symb && $env{'request.course.id'} ) { |
if ( $symb && $env{'request.course.id'} ) { |
|
my $cnum=$env{'course.'.$env{'request.course.id'}.'.num'}; |
|
my $cdom=$env{'course.'.$env{'request.course.id'}.'.domain'}; |
my (undef,%users)=&Apache::lonfeedback::decide_receiver(undef,0,1,1,1); |
my (undef,%users)=&Apache::lonfeedback::decide_receiver(undef,0,1,1,1); |
my $declutter=&Apache::lonnet::declutter($env{'request.filename'}); |
my $declutter=&Apache::lonnet::declutter($env{'request.filename'}); |
my @userlist; |
my @userlist; |
foreach (keys %users) { |
foreach (keys %users) { |
my ($user,$domain) = split(/:/, $_); |
my ($user,$domain) = split(/:/, $_); |
push(@userlist,"$user\@$domain"); |
push(@userlist,"$user\@$domain"); |
&Apache::lonmsg::user_normal_msg($user,$domain, |
my $key=$declutter.'_'.$user.'_'.$domain; |
|
my %lastnotified=&Apache::lonnet::get('nohist_xmlerrornotifications', |
|
[$key], |
|
$cdom,$cnum); |
|
my $now=time; |
|
if ($now-$lastnotified{$key}>86400) { |
|
&Apache::lonmsg::user_normal_msg($user,$domain, |
"Error [$declutter]",join('<br />',@_)); |
"Error [$declutter]",join('<br />',@_)); |
|
&Apache::lonnet::put('nohist_xmlerrornotifications', |
|
{$key => $now}, |
|
$cdom,$cnum); |
|
} |
} |
} |
if ($env{'request.role.adv'}) { |
if ($env{'request.role.adv'}) { |
$errormsg=&mt("An error occured while processing this resource. The course personnel ([_1]) and the author have been notified.",join(', ',@userlist)); |
$errormsg=&mt("An error occured while processing this resource. The course personnel ([_1]) and the author have been notified.",join(', ',@userlist)); |