--- loncom/xml/londefdef.pm 2009/05/26 14:06:23 1.406 +++ 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.406 2009/05/26 14:06:23 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,18 +563,26 @@ sub start_body { # 'no_title' => 1, 'force_register' => 1}); - $currentstring .= &Apache::lonhtmlcommon::breadcrumbs() - .&Apache::loncommon::head_subbox( - &Apache::loncommon::CSTR_pageheader()); - - if ($env{'request.state'} ne 'published') { - $currentstring.=&Apache::lonmenu::constspaceform(); - $currentstring.=&Apache::londefdef::edit_controls(); - } - $currentstring.=&Apache::lonxml::message_location(); + 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::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::lonxml::message_location(); } elsif ($target eq 'tex') { - $currentstring = ''; # '\begin{document}' is in header. - } + $currentstring = ''; # '\begin{document}' is in header. + } + return $currentstring; } @@ -585,9 +599,14 @@ sub edit_controls { '; } $result .= ' -
+
'; + if (($env{'request.course.id'}) && ($env{'form.forceedit'})) { + $result .= (' ' x 3).''; + } + $result .= '
+ -
'; +'; return $result; } @@ -3878,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; } @@ -3892,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; } @@ -4732,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 = '}'; @@ -4775,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); } @@ -4796,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 = ''; @@ -4831,6 +4854,7 @@ sub latex_header "\\usepackage{xcolor}\n". '\usepackage{calc}'. '\usepackage{amsmath}'. + '\usepackage{soul}', '\usepackage{amssymb}'. '\usepackage{amsfonts}'. '\usepackage{amsthm}'.