--- loncom/homework/edit.pm 2001/07/13 16:15:01 1.18
+++ loncom/homework/edit.pm 2007/10/03 00:24:48 1.112
@@ -1,319 +1,1091 @@
# The LearningOnline Network with CAPA
# edit mode helpers
-# 3/20 Guy
+#
+# $Id: edit.pm,v 1.112 2007/10/03 00:24:48 albertel Exp $
+#
+# Copyright Michigan State University Board of Trustees
+#
+# This file is part of the LearningOnline Network with CAPA (LON-CAPA).
+#
+# LON-CAPA is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# LON-CAPA is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LON-CAPA; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# /home/httpd/html/adm/gpl.txt
+#
+# http://www.lon-capa.org/
+#
+
package Apache::edit;
use strict;
use Apache::lonnet;
+use HTML::Entities();
+use Apache::lonlocal;
+use lib '/home/httpd/lib/perl/';
+use LONCAPA;
+
# Global Vars
# default list of colors to use in editing
@Apache::edit::colorlist=('#ffffff','#ff0000','#00ff00','#0000ff','#0ff000','#000ff0','#f0000f');
# depth of nesting of edit
$Apache::edit::colordepth=0;
+@Apache::edit::inserttag=();
+# image-type responses: active background image and curdepth at definition
+$Apache::edit::bgimgsrc='';
+$Apache::edit::bgimgsrccurdepth='';
sub initialize_edit {
- $Apache::edit::colordepth=0;
+ $Apache::edit::colordepth=0;
+ @Apache::edit::inserttag=();
}
sub tag_start {
- my ($target,$token,$description) = @_;
- my $result='';
- if ($target eq "edit") {
- my $tag=$token->[1];
- if (!$description) { $description="<$tag>"; }
- $result.= &start_table($token)."
$description
-
Delete".
- &deletelist($target,$token)
- ."
-
".
- &insertlist($target,$token).
- "
-
\n";
- }
- return $result;
+ my ($target,$token,$description) = @_;
+ my $result='';
+ if ($target eq "edit") {
+ my $tag=$token->[1];
+ if (!$description) {
+ $description=&Apache::lonxml::description($token);
+ if (!$description) { $description="<$tag>"; }
+ }
+ $result.= &start_table($token)."
$description
+
Delete".
+ &deletelist($target,$token)
+ ."
+
".
+ &insertlist($target,$token);
+#
".
+# &movebuttons($target,$token).
+# "
\n";
+ my @help = Apache::lonxml::helpinfo($token);
+ if ($help[0]) {
+ $result .= '