--- loncom/xml/londefdef.pm 2009/05/28 12:39:12 1.408 +++ loncom/xml/londefdef.pm 2010/05/04 19:40:47 1.416 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Tags Default Definition Module # -# $Id: londefdef.pm,v 1.408 2009/05/28 12:39:12 bisitz Exp $ +# $Id: londefdef.pm,v 1.416 2010/05/04 19:40:47 faziophi Exp $ # # # Copyright Michigan State University Board of Trustees @@ -540,14 +540,20 @@ sub start_body { # Breadcrumbs &Apache::lonhtmlcommon::clear_breadcrumbs(); - &Apache::lonhtmlcommon::add_breadcrumb({ - 'text' => 'Construction Space', - 'href' => '', # FIXME Add link to /priv/[user] - }); - &Apache::lonhtmlcommon::add_breadcrumb({ - 'text' => 'HTML Editor', - 'href' => '', - }); + 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' => '', + }); + # breadcrumbs (and tools) will be created + # in start_page->bodytag->innerregister + } else { + # FIXME Where are we? + } $currentstring = &Apache::loncommon::start_page($Apache::londefdef::title, @@ -557,16 +563,21 @@ sub start_body { # 'no_title' => 1, 'force_register' => 1}); - $currentstring .= &Apache::lonhtmlcommon::breadcrumbs(); - my $header = ''; + if ($env{'request.state'} ne 'published' && + $env{'request.state'} ne 'construct') { + $header=&Apache::lonmenu::constspaceform(); + } if ($env{'request.state'} ne 'published') { - $header=&Apache::lonmenu::constspaceform() - .&Apache::londefdef::edit_controls(); + $header.=&Apache::londefdef::edit_controls(); + } + if ($env{'request.state'} eq 'construct') { + $currentstring.=&Apache::loncommon::head_subbox( + &Apache::loncommon::CSTR_pageheader() + .$header); + } elsif ($env{'request.state'} eq 'edit') { + $currentstring.=&Apache::loncommon::head_subbox($header); } - $currentstring.=&Apache::loncommon::head_subbox( - &Apache::loncommon::CSTR_pageheader() - .$header); $currentstring.=&Apache::lonxml::message_location(); } elsif ($target eq 'tex') { $currentstring = ''; # '\begin{document}' is in header. @@ -588,7 +599,11 @@ sub edit_controls { '; } $result .= ' -
+
'; + if (($env{'request.course.id'}) && ($env{'form.forceedit'})) { + $result .= (' ' x 3).''; + } + $result .= '
'; @@ -3882,12 +3897,16 @@ sub end_colgroup { return $currentstring; } + #-- tag (end tag required) sub start_del { my ($target,$token) = @_; my $currentstring = ''; if ($target eq 'web' || $target eq 'webgrade') { $currentstring = $token->[4]; + } elsif ($target eq 'tex') { + &disable_para(); + $currentstring .= '\st{'; } return $currentstring; } @@ -3896,7 +3915,10 @@ sub end_del { my ($target,$token) = @_; my $currentstring = ''; if ($target eq 'web' || $target eq 'webgrade') { - $currentstring = $token->[2]; + $currentstring = $token->[2]; + } elsif ($target eq 'tex') { + &enable_para(); + $currentstring = '}'; } return $currentstring; } @@ -4736,7 +4758,7 @@ sub align_latex_image { # Even though we set a default alignment value, the user # could have given us an illegal value. In that case we # just use the default alignment of bottom.. - $currentstring = "\n% figurewrapping \n"; + $currentstring = ''; if ($align eq "top") { $currentstring .= '\raisebox{-'.$height.'mm}{'.$image; $closure = '}'; @@ -4779,8 +4801,6 @@ sub align_latex_image { $currentstring .= "{$image"; $closure = '}'; } - $currentstring .= "\n% end wrappage\n"; - $closure = "\n% Begin closure\n".$closure."\n% End closure\n"; return ($currentstring, $closure); } @@ -4800,8 +4820,7 @@ sub is_inside_of { # # This sub provides the typical LaTeX prefix matter for tex output: # -sub latex_header -{ +sub latex_header { my ($mode) = @_; my $currentstring = ''; @@ -4835,6 +4854,7 @@ sub latex_header "\\usepackage{xcolor}\n". '\usepackage{calc}'. '\usepackage{amsmath}'. + '\usepackage{soul}', '\usepackage{amssymb}'. '\usepackage{amsfonts}'. '\usepackage{amsthm}'.