version 1.449.2.1, 2007/09/05 01:03:21
|
version 1.452, 2007/08/18 00:08:36
|
Line 1350 SIMPLECONTENT
|
Line 1350 SIMPLECONTENT
|
|
|
|
|
sub inserteditinfo { |
sub inserteditinfo { |
my ($result,$filecontents,$filetype)=@_; |
my ($filecontents,$filetype)=@_; |
$filecontents = &HTML::Entities::encode($filecontents,'<>&"'); |
$filecontents = &HTML::Entities::encode($filecontents,'<>&"'); |
# my $editheader='<a href="#editsection">Edit below</a><hr />'; |
# my $editheader='<a href="#editsection">Edit below</a><hr />'; |
my $xml_help = ''; |
my $xml_help = ''; |
my $initialize=''; |
my $initialize=''; |
|
my $textarea_id = 'filecont'; |
|
my ($add_to_onload, $add_to_onresize); |
if ($filetype eq 'html') { |
if ($filetype eq 'html') { |
my $addbuttons=&Apache::lonhtmlcommon::htmlareaaddbuttons(); |
my $addbuttons=&Apache::lonhtmlcommon::htmlareaaddbuttons(); |
$initialize=&Apache::lonhtmlcommon::spellheader(); |
$initialize=&Apache::lonhtmlcommon::spellheader(); |
if (!&Apache::lonhtmlcommon::htmlareablocked() && |
if (!&Apache::lonhtmlcommon::htmlareablocked() && |
&Apache::lonhtmlcommon::htmlareabrowser()) { |
&Apache::lonhtmlcommon::htmlareabrowser()) { |
|
$textarea_id .= '_htmlarea'; |
$initialize.=(<<FULLPAGE); |
$initialize.=(<<FULLPAGE); |
<script type="text/javascript"> |
<script type="text/javascript"> |
$addbuttons |
$addbuttons |
Line 1370 $addbuttons
|
Line 1373 $addbuttons
|
var editor=new HTMLArea("filecont",config); |
var editor=new HTMLArea("filecont",config); |
editor.registerPlugin(FullPage); |
editor.registerPlugin(FullPage); |
editor.generate(); |
editor.generate(); |
|
setTimeout( |
|
function () { |
|
HTMLArea._addEvents(editor._doc, |
|
["keypress","mousedown"], unClean); |
|
editor._iframe.id = '$textarea_id'; |
|
resize_textarea('$textarea_id','LC_aftertextarea');"; |
|
},300); |
} |
} |
</script> |
</script> |
FULLPAGE |
FULLPAGE |
Line 1378 FULLPAGE
|
Line 1388 FULLPAGE
|
<script type="text/javascript"> |
<script type="text/javascript"> |
$addbuttons |
$addbuttons |
function initDocument() { |
function initDocument() { |
|
resize_textarea('$textarea_id','LC_aftertextarea');"; |
} |
} |
</script> |
</script> |
FULLPAGE |
FULLPAGE |
} |
} |
$result=~s/\<body([^\>]*)\>/\<body onload="initDocument()" $1\>/i; |
$add_to_onload = 'initDocument();'; |
|
$add_to_onresize = "resize_textarea('$textarea_id','LC_aftertextarea');"; |
$xml_help=&Apache::loncommon::helpLatexCheatsheet(); |
$xml_help=&Apache::loncommon::helpLatexCheatsheet(); |
} |
} |
|
|
my $cleanbut = ''; |
my $cleanbut = ''; |
|
|
my $titledisplay=&display_title(); |
my $titledisplay=&display_title(); |
Line 1401 $cleanbut
|
Line 1414 $cleanbut
|
<input type="submit" name="viewmode" accesskey="v" value="$lt{'vi'}" /> |
<input type="submit" name="viewmode" accesskey="v" value="$lt{'vi'}" /> |
BUTTONS |
BUTTONS |
$buttons.=&Apache::lonhtmlcommon::spelllink('xmledit','filecont'); |
$buttons.=&Apache::lonhtmlcommon::spelllink('xmledit','filecont'); |
|
my $textarea_events = &Apache::edit::element_change_detection(); |
|
my $form_events = &Apache::edit::form_change_detection(); |
my $editfooter=(<<ENDFOOTER); |
my $editfooter=(<<ENDFOOTER); |
$initialize |
$initialize |
<hr /> |
<hr /> |
<a name="editsection" /> |
<a name="editsection" /> |
<form method="post" name="xmledit"> |
<form $form_events method="post" name="xmledit"> |
$xml_help |
$xml_help |
<input type="hidden" name="editmode" value="$lt{'ed'}" /> |
<input type="hidden" name="editmode" value="$lt{'ed'}" /> |
$buttons<br /> |
$buttons<br /> |
<textarea style="width:100%" cols="80" rows="44" name="filecont" id="filecont">$filecontents</textarea> |
<textarea $textarea_events style="width:100%" cols="80" rows="44" name="filecont" id="filecont">$filecontents</textarea> |
|
<div id="LC_aftertextarea"> |
<br />$buttons |
<br />$buttons |
<br /> |
<br /> |
</form> |
|
$titledisplay |
$titledisplay |
|
</div> |
|
</form> |
</body> |
</body> |
ENDFOOTER |
ENDFOOTER |
# $result=~s/(\<body[^\>]*\>)/$1$editheader/is; |
return ($editfooter,$add_to_onload,$add_to_onresize);; |
$result=~s/(\<\/body\>)/$editfooter/is; |
|
return $result; |
|
} |
} |
|
|
sub get_target { |
sub get_target { |
Line 1514 ENDNOTFOUND
|
Line 1529 ENDNOTFOUND
|
['editmode']); |
['editmode']); |
} |
} |
if (!$env{'form.editmode'} || $env{'form.viewmode'} || $env{'form.discardview'}) { |
if (!$env{'form.editmode'} || $env{'form.viewmode'} || $env{'form.discardview'}) { |
&Apache::structuretags::reset_problem_globals(); |
|
$result = &Apache::lonxml::xmlparse($request,$target,$filecontents, |
$result = &Apache::lonxml::xmlparse($request,$target,$filecontents, |
'',%mystyle); |
'',%mystyle); |
# .html files may contain <problem> or <Task> need to clean |
undef($Apache::lonhomework::parsing_a_task); |
# up if it did |
|
&Apache::structuretags::reset_problem_globals(); |
|
&Apache::lonhomework::finished_parsing(); |
|
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
['rawmode']); |
['rawmode']); |
if ($env{'form.rawmode'}) { $result = $filecontents; } |
if ($env{'form.rawmode'}) { $result = $filecontents; } |
Line 1532 ENDNOTFOUND
|
Line 1543 ENDNOTFOUND
|
# |
# |
unless ($env{'request.state'} eq 'published') { |
unless ($env{'request.state'} eq 'published') { |
if ($env{'form.editmode'} && (!($env{'form.viewmode'})) && (!($env{'form.discardview'}))) |
if ($env{'form.editmode'} && (!($env{'form.viewmode'})) && (!($env{'form.discardview'}))) |
{ |
{ |
|
my ($edit_info, $add_to_onload, $add_to_onresize)= |
|
&inserteditinfo($filecontents,$filetype); |
|
|
my $displayfile=$request->uri; |
my $displayfile=$request->uri; |
$displayfile=~s/^\/[^\/]*//; |
$displayfile=~s/^\/[^\/]*//; |
my %options = (); |
my %options = |
|
('add_entries' => |
|
{'onresize' => $add_to_onresize, |
|
'onload' => $add_to_onload, }); |
|
|
if ($env{'environment.remote'} ne 'off') { |
if ($env{'environment.remote'} ne 'off') { |
$options{'bgcolor'} = '#FFFFFF'; |
$options{'bgcolor'} = '#FFFFFF'; |
|
$options{'only_body'} = 1; |
} |
} |
my $start_page = &Apache::loncommon::start_page(undef,undef, |
my $js = |
|
&Apache::edit::js_change_detection(). |
|
&Apache::loncommon::resize_textarea_js(); |
|
my $start_page = &Apache::loncommon::start_page(undef,$js, |
\%options); |
\%options); |
$result=$start_page. |
$result=$start_page. |
&Apache::lonxml::message_location().'<h3>'. |
&Apache::lonxml::message_location().'<h3>'. |
$displayfile. |
$displayfile. |
'</h3>'.&Apache::loncommon::end_page(); |
'</h3>'. |
$result=&inserteditinfo($result,$filecontents,$filetype); |
$edit_info. |
|
&Apache::loncommon::end_page(); |
} |
} |
} |
} |
if ($filetype eq 'html') { &writeallows($request->uri); } |
if ($filetype eq 'html') { &writeallows($request->uri); } |
|
|
|
|
&Apache::lonxml::add_messages(\$result); |
&Apache::lonxml::add_messages(\$result); |
$request->print($result); |
$request->print($result); |