--- loncom/homework/lonhomework.pm 2002/03/22 20:11:00 1.73
+++ loncom/homework/lonhomework.pm 2002/04/11 16:02:32 1.77
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# The LON-CAPA Homework handler
#
-# $Id: lonhomework.pm,v 1.73 2002/03/22 20:11:00 albertel Exp $
+# $Id: lonhomework.pm,v 1.77 2002/04/11 16:02:32 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -61,6 +61,9 @@ sub get_target {
return ('web');
}
} elsif ($ENV{'request.state'} eq "construct") {
+ if ( defined($ENV{'form.grade_target'}) ) {
+ return ($ENV{'form.grade_target'});
+ }
if ( defined($ENV{'form.preview'})) {
if ( defined($ENV{'form.submitted'})) {
return ('grade', 'web');
@@ -270,6 +273,16 @@ sub handle_save_or_undo {
return $error;
}
+sub analyze {
+ my ($request,$file) = @_;
+ &Apache::lonxml::debug("Analyze");
+ my $result=&Apache::lonnet::ssi($request->uri,('grade_target' => 'analyze'));
+ &Apache::lonxml::debug(":$result:");
+ (my $garbage,$result)=split(/_HASH_REF__/,$result,2);
+ &showhash(&Apache::lonnet::str2hash($result));
+ return $result;
+}
+
sub editxmlmode {
my ($request,$file) = @_;
my $result;
@@ -319,8 +332,10 @@ sub renderpage {
my $result = '';
&Apache::inputtags::initialize_inputtags;
&Apache::edit::initialize_edit;
+ if ($target eq 'analyze') { %Apache::lonhomework::anaylze=(); }
if ($target eq 'web') {
- if (&Apache::lonnet::symbread() eq '') {
+ my ($symb)=&Apache::lonxml::whichuser();
+ if ($symb eq '') {
if ($ENV{'request.state'} eq "construct") {
} else {
$request->print("Browsing or ambiguous reference, submissions ignored
");
@@ -343,6 +358,10 @@ sub renderpage {
if ($target eq 'modified') {
&handle_save_or_undo($request,\$problem,\$result);
} else {
+ if ($target eq 'analyze') {
+ $result=&Apache::lonnet::hashref2str(\%Apache::lonhomework::analyze);
+ undef(%Apache::lonhomework::analyze);
+ }
#my $td=&tv_interval($t0);
#if ( $Apache::lonxml::debug) {
#$result =~ s: