--- loncom/interface/lontest.pm 2002/06/13 17:54:04 1.4
+++ loncom/interface/lontest.pm 2005/02/17 08:50:20 1.14
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# A debugging harness.
#
-# $Id: lontest.pm,v 1.4 2002/06/13 17:54:04 bowersj2 Exp $
+# $Id: lontest.pm,v 1.14 2005/02/17 08:50:20 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -31,6 +31,8 @@ package Apache::lontest;
use strict;
use Apache::Constants qw(:common :http);
+use GDBM_File;
+use Apache::loncommon;
# section takes one env var name as input, and returns
# what section the given env var is in, which is the part
@@ -46,16 +48,18 @@ sub section
sub handler {
my $r = shift;
- $r->content_type('text/html');
+ &Apache::loncommon::content_type($r,'text/html');
$r->send_http_header;
return OK if $r->header_only;
- $r->print('
');
-
+ my $html=&Apache::lonxml::xmlbegin();
+ my $bodytag=&Apache::loncommon::bodytag("List Environment","admin");
+ $r->print($html.''.$bodytag);
+
my $envkey;
- $->print("
Debugging
\n");
- $->print("");
+ $r->print("
Debugging
\n");
+ $r->print("");
my $i=0;
my $interval = 20; # change this to change how many keys/table
@@ -71,14 +75,14 @@ sub section
if ($prevSection ne $sec) # new section, print header
{
$r->print('');
- $r->print("
$sec");
+ $r->print("
$sec");
$r->print(' |
');
$prevSection = $sec;
}
my $envVal = $ENV{$envkey};
- $envVal =~ s/(.{50})/\1\/g;
- $envkey =~ s/(.{30})/\1\/g;
+ $envVal =~ s/(.{50})/$1\/g;
+ $envkey =~ s/(.{30})/$1\/g;
$r->print("$envkey | ");
$r->print("$envVal |
\n");
@@ -86,9 +90,62 @@ sub section
}
$r->print('Total Number of Elements: '.$i.'
');
+
+# ------------------------------------------------ If in a course, print hashes
+ if ($ENV{'request.course.id'}) {
+
+ my %parmhash;
+ my %symbhash;
+ my %hash;
+
+ my $fn=$ENV{'request.course.fn'};
+
+ if (tie(%hash,'GDBM_File',"$fn.db",&GDBM_READER(),0640)) {
+ $r->print('Big Hash
');
+ foreach (sort keys %hash) {
+ $r->print("\n
".$_.': '.$hash{$_});
+ }
+ untie %hash;
+ } else {
+ $r->print('Count not tie big hash
');
+ }
+ if (tie(%parmhash,'GDBM_File',
+ $ENV{'request.course.fn'}.'_parms.db',
+ &GDBM_READER(),0640)) {
+ $r->print('Parm Hash
');
+ foreach (sort keys %parmhash) {
+ $r->print("\n
".$_.': '.$parmhash{$_});
+ }
+ untie %parmhash;
+ } else {
+ $r->print('Could not tie parmhash
');
+ }
+ if (tie(%symbhash,'GDBM_File',"$fn\_symb.db",&GDBM_READER(),0640)) {
+ $r->print('Symb Hash
');
+ foreach (sort keys %symbhash) {
+ $r->print("\n
".$_.': '.$symbhash{$_});
+ }
+ untie %symbhash;
+ } else {
+ $r->print('Could not tie symbhash
');
+ }
+ if (-e $fn.'.state') {
+ $r->print('State
');
+ my @conditions=();
+ {
+ my $fh=Apache::File->new($fn.'.state');
+ @conditions=<$fh>;
+ }
+ foreach (@conditions) {
+ $r->print(''.$_.'
');
+ }
+ }
+ }
+
# ------------------------------------------------------------------- End Debug
- $r->print('');
+ $r->print('