version 1.398, 2009/01/20 12:01:00
|
version 1.410, 2009/06/02 13:10:29
|
Line 176 sub start_html {
|
Line 176 sub start_html {
|
if ($target eq 'web' || $target eq 'edit' || $target eq 'webgrade' ) { |
if ($target eq 'web' || $target eq 'edit' || $target eq 'webgrade' ) { |
# start_body() takes care of emitting the <html> |
# start_body() takes care of emitting the <html> |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring .= |
|
'\documentclass[letterpaper,twoside]{article}\raggedbottom'; |
|
if (($env{'form.latex_type'}=~'batchmode') || |
|
(!$env{'request.role.adv'})) {$currentstring .='\batchmode';} |
|
$currentstring .= '\newcommand{\keephidden}[1]{}'. |
|
'\renewcommand{\deg}{$^{\circ}$}'. |
|
'\usepackage{multirow}'. |
|
'\usepackage{longtable}'. |
|
'\usepackage{textcomp}'. |
|
'\usepackage{makeidx}'. |
|
'\usepackage[dvips]{graphicx}'. |
|
'\usepackage{wrapfig}'. |
|
'\usepackage{picins}'. |
|
'\usepackage[T1]{fontenc}'."\n". |
|
'\usepackage{lmodern}'."\n". |
|
'\usepackage[postscript]{ucs}'."\n". |
|
'\usepackage[utf8x]{inputenc}'."\n". |
|
'\usepackage{pifont}' ."\n". |
|
'\usepackage{latexsym}'."\n". |
|
'\usepackage{epsfig}'. |
|
"\\usepackage{xtab}\n". |
|
"\\usepackage{tabularx}\n". |
|
"\\usepackage{booktabs}\n". |
|
"\\usepackage{array}\n". |
|
"\\usepackage{colortbl}\n". |
|
"\\usepackage{xcolor}\n". |
|
'\usepackage{calc}'. |
|
'\usepackage{amsmath}'. |
|
'\usepackage{amssymb}'. |
|
'\usepackage{amsfonts}'. |
|
'\usepackage{amsthm}'. |
|
'\usepackage{amscd}'; |
|
|
|
if($env{'form.pdfFormFields'} eq 'yes') { |
|
$currentstring .= '\usepackage{hyperref}'. |
|
'\usepackage{eforms}'. |
|
'\usepackage{tabularx}'; |
|
} |
|
|
|
$currentstring .= '\newenvironment{choicelist}{\begin{list}{}{\setlength{\rightmargin}{0in}\setlength{\leftmargin}{0.13in}\setlength{\topsep}{0.05in}\setlength{\itemsep}{0.022in}\setlength{\parsep}{0in}\setlength{\belowdisplayskip}{0.04in}\setlength{\abovedisplayskip}{0.05in}\setlength{\abovedisplayshortskip}{-0.04in}\setlength{\belowdisplayshortskip}{0.04in}}}{\end{list}}'. |
$currentstring .= &latex_header(); |
'\renewenvironment{theindex}{\begin{list}{}{{\vskip 1mm \noindent \large\textbf{Index}} \newline \setlength{\rightmargin}{0in}\setlength{\leftmargin}{0.13in}\setlength{\topsep}{0.01in}\setlength{\itemsep}{0.1in}\setlength{\parsep}{-0.02in}\setlength{\belowdisplayskip}{0.01in}\setlength{\abovedisplayskip}{0.01in}\setlength{\abovedisplayshortskip}{-0.04in}\setlength{\belowdisplayshortskip}{0.01in}}}{\end{list}}'; |
|
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 577 sub start_body {
|
Line 538 sub start_body {
|
|
|
my $extra_head = &generate_css_links(); |
my $extra_head = &generate_css_links(); |
|
|
|
# Breadcrumbs |
|
&Apache::lonhtmlcommon::clear_breadcrumbs(); |
|
if ($env{'request.state'} eq 'construct') { |
|
&Apache::lonhtmlcommon::add_breadcrumb({ |
|
'text' => 'Construction Space', |
|
'href' => &Apache::loncommon::authorspace(), |
|
}); |
|
&Apache::lonhtmlcommon::add_breadcrumb({ |
|
'text' => 'HTML Editor', |
|
'href' => '', |
|
}); |
|
} else { |
|
# FIXME Where are we? |
|
} |
|
|
$currentstring = |
$currentstring = |
&Apache::loncommon::start_page($Apache::londefdef::title, |
&Apache::loncommon::start_page($Apache::londefdef::title, |
$Apache::londefdef::head |
$Apache::londefdef::head |
.$extra_head, |
.$extra_head, |
{'add_entries' => $token->[2], |
{'add_entries' => $token->[2], |
'no_title' => 1, |
# 'no_title' => 1, |
'force_register' => 1}); |
'force_register' => 1}); |
|
|
if ($env{'request.state'} ne 'published') { |
$currentstring .= &Apache::lonhtmlcommon::breadcrumbs(); |
$currentstring.=&Apache::lonmenu::constspaceform(); |
|
$currentstring.=&Apache::londefdef::edit_controls(); |
my $header = ''; |
} |
if ($env{'request.state'} ne 'published') { |
$currentstring.=&Apache::lonxml::message_location(); |
$header=&Apache::lonmenu::constspaceform() |
|
.&Apache::londefdef::edit_controls(); |
|
} |
|
if ($env{'request.state'} eq 'construct') { |
|
$currentstring.=&Apache::loncommon::head_subbox( |
|
&Apache::loncommon::CSTR_pageheader() |
|
.$header); |
|
} |
|
$currentstring.=&Apache::lonxml::message_location(); |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$currentstring = '\begin{document}'; |
$currentstring = ''; # '\begin{document}' is in header. |
} |
} |
|
|
return $currentstring; |
return $currentstring; |
} |
} |
|
|
sub edit_controls { |
sub edit_controls { |
|
my ($nochgview) = @_; |
my $result .= ' |
my $result .= ' |
<form method="post"> |
<form method="post"> |
<div class="LC_edit_problem_header"> |
<div class="LC_edit_problem_header">'; |
|
unless ($nochgview) { |
|
$result .= ' |
<div class="LC_edit_problem_header_row1">'. |
<div class="LC_edit_problem_header_row1">'. |
&Apache::lonxml::renderingoptions().' |
&Apache::lonxml::renderingoptions().' |
<input type="submit" name="changeproblemmode" value="'.&mt('Change View').'" /> |
<input type="submit" name="changeproblemmode" value="'.&mt('Change View').'" /> |
|
</div>'; |
|
} |
|
$result .= ' |
|
<div><input type="submit" name="editmode" accesskey="e" value="'.&mt('Edit').'" /></div> |
</div> |
</div> |
<div class="LC_edit_problem_header_edit_row"><input type="submit" name="editmode" accesskey="e" value="'.&mt('Edit').'" /></div></div> |
|
</form> |
</form> |
<br />'; |
'; |
return $result; |
return $result; |
} |
} |
|
|
Line 1383 sub start_font {
|
Line 1374 sub start_font {
|
my $currentstring = ''; |
my $currentstring = ''; |
if ($target eq 'web' || $target eq 'webgrade') { |
if ($target eq 'web' || $target eq 'webgrade') { |
my $face=&Apache::lonxml::get_param('face',$parstack,$safeeval); |
my $face=&Apache::lonxml::get_param('face',$parstack,$safeeval); |
if ($face!~/symbol/i) { |
|
if (($env{'browser.fontenhance'} eq 'on') || |
|
($env{'browser.blackwhite'} eq 'on')) { return ''; } |
|
} |
|
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
my $fontsize=&Apache::lonxml::get_param('TeXsize',$parstack,$safeeval); |
my $fontsize=&Apache::lonxml::get_param('TeXsize',$parstack,$safeeval); |
Line 1651 sub start_a {
|
Line 1638 sub start_a {
|
my $href=&Apache::lonxml::get_param('href',$parstack,$safeeval, |
my $href=&Apache::lonxml::get_param('href',$parstack,$safeeval, |
undef,1); |
undef,1); |
$currentstring=&Apache::lonenc::encrypt_ref($token,{'href'=>$href}); |
$currentstring=&Apache::lonenc::encrypt_ref($token,{'href'=>$href}); |
|
if ($href =~ /\S/) { |
|
if ($href !~ m{^https?://}) { |
|
my $url=&Apache::lonnet::hreflocation('',$env{'request.filename'}); |
|
my $linkurl; |
|
if ($href =~ m{^/uploaded/}) { |
|
$linkurl = $href; |
|
} elsif ($href =~ m{^[^/]}) { |
|
my $path = $url; |
|
$path =~ s{[^/]*$}{}; |
|
$linkurl = $path.$href; |
|
} |
|
if ($linkurl =~ m{^/uploaded/}) { |
|
if (!&Apache::lonnet::allowed('bre',$linkurl)) { |
|
if (&Apache::lonnet::is_on_map($url)) { |
|
&Apache::lonxml::extlink($linkurl); |
|
} |
|
} |
|
} |
|
} |
|
} |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 3522 sub start_frameset {
|
Line 3529 sub start_frameset {
|
&Apache::loncommon::start_page($Apache::londefdef::title, |
&Apache::loncommon::start_page($Apache::londefdef::title, |
$Apache::londefdef::head, |
$Apache::londefdef::head, |
{'add_entries' => $token->[2], |
{'add_entries' => $token->[2], |
'no_title' => 1, |
# 'no_title' => 1, |
'force_register' => 1, |
'force_register' => 1, |
'frameset' => 1,}); |
'frameset' => 1,}); |
|
|
Line 4796 sub is_inside_of {
|
Line 4803 sub is_inside_of {
|
} |
} |
|
|
|
|
|
# |
|
# This sub provides the typical LaTeX prefix matter for tex output: |
|
# |
|
sub latex_header |
|
{ |
|
my ($mode) = @_; |
|
my $currentstring = ''; |
|
|
|
$currentstring .= |
|
"\n% &Apache::lonxml::londefdef \n" . |
|
'\documentclass[letterpaper,twoside]{article}\raggedbottom'; |
|
if (($env{'form.latex_type'}=~'batchmode') || |
|
(!$env{'request.role.adv'}) || |
|
($mode eq 'batchmode')) {$currentstring .='\batchmode';} |
|
$currentstring .= '\newcommand{\keephidden}[1]{}'. |
|
'\renewcommand{\deg}{$^{\circ}$}'. |
|
'\usepackage{multirow}'. |
|
'\usepackage{longtable}'. |
|
'\usepackage{textcomp}'. |
|
'\usepackage{makeidx}'. |
|
'\usepackage[dvips]{graphicx}'. |
|
'\usepackage{wrapfig}'. |
|
'\usepackage{picins}'. |
|
'\usepackage[T1]{fontenc}'."\n". |
|
'\usepackage{lmodern}'."\n". |
|
'\usepackage[postscript]{ucs}'."\n". |
|
'\usepackage[utf8x]{inputenc}'."\n". |
|
'\usepackage{pifont}' ."\n". |
|
'\usepackage{latexsym}'."\n". |
|
'\usepackage{epsfig}'. |
|
"\\usepackage{xtab}\n". |
|
"\\usepackage{tabularx}\n". |
|
"\\usepackage{booktabs}\n". |
|
"\\usepackage{array}\n". |
|
"\\usepackage{colortbl}\n". |
|
"\\usepackage{xcolor}\n". |
|
'\usepackage{calc}'. |
|
'\usepackage{amsmath}'. |
|
'\usepackage{amssymb}'. |
|
'\usepackage{amsfonts}'. |
|
'\usepackage{amsthm}'. |
|
'\usepackage{amscd}' |
|
.'\usepackage{picins}\usepackage{calc}'."\n". # From lonprintout.pm |
|
'\usepackage[T1]{fontenc}'."\n". |
|
'\usepackage{lmodern}'."\n". |
|
'\usepackage[postscript]{ucs}'."\n". |
|
'\usepackage[utf8x]{inputenc}'."\n". |
|
'\usepackage{pifont}' . "\n"; |
|
|
|
if($env{'form.pdfFormFields'} eq 'yes') { |
|
$currentstring .= '\usepackage{hyperref}'. |
|
'\usepackage{eforms}'. |
|
'\usepackage{tabularx}'; |
|
} |
|
|
|
$currentstring .= '\newenvironment{choicelist}{\begin{list}{}{\setlength{\rightmargin}{0in}\setlength{\leftmargin}{0.13in}\setlength{\topsep}{0.05in}\setlength{\itemsep}{0.022in}\setlength{\parsep}{0in}\setlength{\belowdisplayskip}{0.04in}\setlength{\abovedisplayskip}{0.05in}\setlength{\abovedisplayshortskip}{-0.04in}\setlength{\belowdisplayshortskip}{0.04in}}}{\end{list}}'. |
|
'\renewenvironment{theindex}{\begin{list}{}{{\vskip 1mm \noindent \large\textbf{Index}} \newline \setlength{\rightmargin}{0in}\setlength{\leftmargin}{0.13in}\setlength{\topsep}{0.01in}\setlength{\itemsep}{0.1in}\setlength{\parsep}{-0.02in}\setlength{\belowdisplayskip}{0.01in}\setlength{\abovedisplayskip}{0.01in}\setlength{\abovedisplayshortskip}{-0.04in}\setlength{\belowdisplayshortskip}{0.01in}}}{\end{list}}'; |
|
$currentstring .= '\begin{document}'; |
|
|
|
return $currentstring; |
|
|
|
} |
|
|
=pod |
=pod |
|
|
=head1 NAME |
=head1 NAME |