[LON-CAPA-cvs] cvs: loncom /xml londefdef.pm

foxr lon-capa-cvs@mail.lon-capa.org
Tue, 06 Dec 2005 22:55:34 -0000


foxr		Tue Dec  6 17:55:34 2005 EDT

  Modified files:              
    /loncom/xml	londefdef.pm 
  Log:
  Now that tables get consumed when included, it's necessary to fix the
  loop count on nested table processing so that all nested tables in a
  single cell get included.
  
  
Index: loncom/xml/londefdef.pm
diff -u loncom/xml/londefdef.pm:1.301 loncom/xml/londefdef.pm:1.302
--- loncom/xml/londefdef.pm:1.301	Tue Dec  6 17:37:00 2005
+++ loncom/xml/londefdef.pm	Tue Dec  6 17:55:31 2005
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Tags Default Definition Module 
 #
-# $Id: londefdef.pm,v 1.301 2005/12/06 22:37:00 foxr Exp $
+# $Id: londefdef.pm,v 1.302 2005/12/06 22:55:31 foxr Exp $
 # 
 #
 # Copyright Michigan State University Board of Trustees
@@ -48,7 +48,7 @@
 use Apache::lonmeta();
 use Apache::Constants qw(:common);
 use File::Basename;
-use Data::Dumper;
+# use Data::Dumper;
 
 BEGIN {
 
@@ -61,16 +61,16 @@
 #   Need this 'cause evidently when given an array, Data::Dumper only seems
 #   to dump element 0.
 #
-sub debug_dump_table {
-    my $lastrow = $#Apache::londefdef::table;
-    &Apache::lonnet::logthis("Dumping table:  Last row index: $lastrow");
-    my $row;
-    for ($row =0; $row <= $lastrow; $row++ ) {
-	my $text = Dumper($Apache::londefdef::table[$row]);
-	&Apache::lonnet::logthis("table [ $row ]".$text);
-
-    }
-}
+#sub debug_dump_table {
+#    my $lastrow = $#Apache::londefdef::table;
+#    &Apache::lonnet::logthis("Dumping table:  Last row index: $lastrow");
+#    my $row;
+#    for ($row =0; $row <= $lastrow; $row++ ) {
+#	my $text = Dumper($Apache::londefdef::table[$row]);
+#	&Apache::lonnet::logthis("table [ $row ]".$text);
+#
+#    }
+#}
 sub initialize_londefdef {
     $Apache::londefdef::TD_redirection=0;
     @Apache::londefdef::table = ();
@@ -2424,7 +2424,11 @@
 	    push @ {$Apache::londefdef::table[-1]{'minlen'}[$Apache::londefdef::table[-1]{'row_number'}] },$min_length;
 	}        
     }
-    for (my $in=0; $in<=$#{$Apache::londefdef::table[-1]{'include'}};$in++) {    
+    # Substitute all of the tables nested in this cell in their appropriate places.
+
+
+    my $nested_count = $#{$Apache::londefdef::table[-1]{'include'}}; # This one is constant...
+    for (my $in=0; $in<=$nested_count; $in++) {    
 	my $nested = shift @{$Apache::londefdef::table[-1]{'include'}};
 	$nested =~ s/\\end\{tabular\}\\strut\\\\/\\end\{tabular\}/;
 	# $data=~s/\\keephidden\{NEW TABLE ENTRY\}/$Apache::londefdef::table[-1]{'include'}[$in]/;