--- loncom/homework/structuretags.pm 2007/07/23 23:30:47 1.384 +++ loncom/homework/structuretags.pm 2007/10/17 00:22:51 1.405 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.384 2007/07/23 23:30:47 albertel Exp $ +# $Id: structuretags.pm,v 1.405 2007/10/17 00:22:51 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -42,7 +42,7 @@ use lib '/home/httpd/lib/perl/'; use LONCAPA; BEGIN { - &Apache::lonxml::register('Apache::structuretags',('block','languageblock','instructorcomment','while','randomlist','problem','library','web','tex','part','preduedate','postanswerdate','solved','notsolved','problemtype','startouttext','endouttext','simpleeditbutton','definetag')); + &Apache::lonxml::register('Apache::structuretags',('block','languageblock','translated','instructorcomment','while','randomlist','problem','library','web','tex','part','preduedate','postanswerdate','solved','notsolved','problemtype','startouttext','endouttext','simpleeditbutton','definetag')); } sub start_web { @@ -92,6 +92,31 @@ sub end_tex { return ''; } +sub homework_js { + return &Apache::loncommon::resize_textarea_js(). + <<'JS'; + +JS +} + sub page_start { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$name, $extra_head)=@_; @@ -108,13 +133,7 @@ sub page_start { $parstack,$parser,$safeeval); } - $extra_head.= ' - -'; + $extra_head .= &homework_js(); my %body_args; if (defined($found{'html'})) { @@ -139,7 +158,9 @@ function setSubmittedPart (part) { } elsif (!defined($found{'body'}) && $env{'request.state'} eq 'construct') { if ($target eq 'web' || $target eq 'edit') { - # no extra args to bodytag + if ($env{'environment.remote'} ne 'off') { + $body_args{'only_body'} = 1; + } } } elsif (!defined($found{'body'})) { my %add_entries; @@ -157,6 +178,10 @@ function setSubmittedPart (part) { $body_args{'no_title'} = 1; $body_args{'force_register'} = 1; $body_args{'add_entries'} = \%add_entries; + if ($env{'environment.remote'} eq 'off' + && $env{'request.state'} eq 'construct') { + $body_args{'only_body'} = 1; + } } $body_args{'no_auto_mt_title'} = 1; my $page_start = &Apache::loncommon::start_page($name,$extra_head, @@ -202,20 +227,27 @@ function setSubmittedPart (part) { #use Time::HiRes(); sub get_resource_name { my ($parstack,$safeeval)=@_; + my $name; if (defined($Apache::lonhomework::name)) { - return $Apache::lonhomework::name; - } - my ($symb)=&Apache::lonnet::whichuser(); - my $name=&Apache::lonnet::gettitle($symb); - if ($name eq '') { - $name=&Apache::lonnet::EXT('resource.title'); - if ($name eq 'con_lost') { $name = ''; } - } - if ($name!~/\S+/) { - $name=$env{'request.uri'}; - $name=~s-.*/([^/]+)$-$1-; + $name = $Apache::lonhomework::name; + } else { + my ($symb)=&Apache::lonnet::whichuser(); + $name=&Apache::lonnet::gettitle($symb); + if ($name eq '') { + $name=&Apache::lonnet::EXT('resource.title'); + if ($name eq 'con_lost') { $name = ''; } + } + if ($name!~/\S+/) { + $name=$env{'request.uri'}; + $name=~s-.*/([^/]+)$-$1-; + } + # The name has had html tags escaped: + + $name=~s/<//gs; + + $Apache::lonhomework::name=$name; } - $Apache::lonhomework::name=$name; return $name; } @@ -319,7 +351,7 @@ sub problem_web_to_edit_header { $result.= ' />'.$show_all_foils_text.''. &Apache::loncommon::help_open_topic('Problem_Editor_Testing_Area','Testing Problems'). '
'; - $result.=&mt('Apply style file').' + $result.=&mt('Apply style file: ').' &').'" /> '.&mt('Select').' @@ -328,7 +360,7 @@ sub problem_web_to_edit_header { if (!$Apache::lonhomework::parsing_a_task) { $result.=" -Problem Status: +".&mt("Problem Status:")." -Problem Type: +".&mt("Problem Type:")." -Feedback Mode: +".&mt("Feedback Mode:")." @@ -369,7 +402,7 @@ Feedback Mode: } elsif ($Apache::lonhomework::parsing_a_task) { $result.=" -Problem Status: +".&mt("Problem Status:")."