--- loncom/interface/lonhtmlgateway.pm 2010/04/26 20:45:28 1.1
+++ loncom/interface/lonhtmlgateway.pm 2010/04/27 20:29:25 1.3
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# gateway for html input/output to be properly parsed and handled
#
-# $Id: lonhtmlgateway.pm,v 1.1 2010/04/26 20:45:28 faziophi Exp $
+# $Id: lonhtmlgateway.pm,v 1.3 2010/04/27 20:29:25 faziophi Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -545,8 +545,12 @@ sub process_outgoing_html {
my $parser = HTML::LCParser->new(\$input);
while (my $token = $parser->get_token()) {
if ($token->[0] eq 'T') {
- $output .= $token->[1];
- } elsif ($token->[0] eq 'D' || $token->[0] eq 'C') {
+ if ($self->{target} ne 'tex') {
+ $output .= &Apache::lontexconvert::smiley($token->[1]);
+ } else {
+ $output .= $token->[1];
+ }
+ } elsif ($token->[0] eq 'D' || $token->[0] eq 'C') {
$output .= $token->[1];
} elsif ($token->[0] eq 'PI' || $token->[0] eq 'E') {
$output .= $token->[2];
@@ -709,15 +713,17 @@ sub parse_algebra_tag {
# the parser does NOT handle entities,
# unlike the general parser; thus we run
# the content of this tag through HTML::Entities,
- # decoding it first
+ # decoding it first. we also just get the tex, and
+ # feed it through as if it were an tag.
$input = &HTML::Entities::decode($input);
- return &Apache::lontexconvert::algebra($input,$self->{target});
+ my $algebra = &Apache::lontexconvert::algebra($input, 'tth', 'tex');
+ return &parse_m_tag($self, $algebra);
}
sub parse_mi_tag {
my $self = shift;
my $input = shift;
- return &parse_m_tag($self, '$'.$input.'$');
+ return &parse_m_tag($self, '\ensuremath{'.$input.'}');
}
sub parse_md_tag {
@@ -800,7 +806,7 @@ Phil Fazio
=head1 VERSION
-$Id: lonhtmlgateway.pm,v 1.1 2010/04/26 20:45:28 faziophi Exp $
+$Id: lonhtmlgateway.pm,v 1.3 2010/04/27 20:29:25 faziophi Exp $
=cut