version 1.22, 2000/12/19 23:22:22
|
version 1.27, 2001/01/06 16:35:36
|
Line 1
|
Line 1
|
# The LON-CAPA Homework handler |
# The LON-CAPA Homework handler |
# Guy Albertelli |
# Guy Albertelli |
# 11/30 Gerd Kortemeyer |
# 11/30 Gerd Kortemeyer |
|
# 6/1 Gerd Kortemeyer |
|
|
package Apache::lonhomework; |
package Apache::lonhomework; |
use strict; |
use strict; |
Line 11 use Apache::inputtags;
|
Line 12 use Apache::inputtags;
|
use Apache::structuretags; |
use Apache::structuretags; |
use Apache::response; |
use Apache::response; |
use Apache::hint; |
use Apache::hint; |
|
use Apache::Constants qw(:common); |
|
|
sub get_target { |
sub get_target { |
if ( $ENV{'request.state'} eq "published") { |
if ( $ENV{'request.state'} eq "published") { |
Line 88 sub check_date {
|
Line 90 sub check_date {
|
$datemsg = "is due at $date"; |
$datemsg = "is due at $date"; |
} elsif ($type eq 'answerdate') { |
} elsif ($type eq 'answerdate') { |
$status='CLOSED'; |
$status='CLOSED'; |
$datemsg = "was due as $lastdate, and asnswers will be available at $date"; |
$datemsg = "was due as $lastdate, and answers will be available at $date"; |
|
} |
|
if ($status eq 'CAN_ANSWER') { |
|
#check #tries |
|
my $tries = $Apache::lonhomework::history{"resource.$id.tries"}; |
|
my $maxtries = &Apache::lonnet::EXT("resource.$id.maxtries"); |
|
if ( $tries eq '' ) { $tries = '0'; } |
|
if ( $maxtries eq '' ) { $maxtries = '2'; } |
|
if ($tries >= $maxtries) { $status = 'CANNOT_ANSWER'; } |
} |
} |
&Apache::lonxml::debug("sending back :$status:$datemsg:"); |
&Apache::lonxml::debug("sending back :$status:$datemsg:"); |
|
if ($ENV{'request.state'} eq "construct") { |
|
&Apache::lonxml::debug("in construction ignoring dates"); |
|
$status='CAN_ANSWER'; |
|
$datemsg='is in under construction'; |
|
} |
return ($status,$datemsg); |
return ($status,$datemsg); |
} |
} |
|
|
Line 107 sub handler {
|
Line 122 sub handler {
|
$request->content_type('text/html'); |
$request->content_type('text/html'); |
} |
} |
$request->send_http_header; |
$request->send_http_header; |
return 'OK' if $request->header_only; |
return OK if $request->header_only; |
|
|
&Apache::lonhomework::send_header($request); |
&Apache::lonhomework::send_header($request); |
|
|
Line 156 sub handler {
|
Line 171 sub handler {
|
$request->print($result); |
$request->print($result); |
#$request->print(":Result ends"); |
#$request->print(":Result ends"); |
if ($target eq 'grade') { |
if ($target eq 'grade') { |
|
|
my $resultkey; |
my $resultkey; |
foreach $resultkey (sort keys %Apache::lonhomework::results) { |
foreach $resultkey (sort keys %Apache::lonhomework::results) { |
&Apache::lonxml::debug("$resultkey ---- $Apache::lonhomework::results{$resultkey}"); |
&Apache::lonxml::debug("$resultkey ---- $Apache::lonhomework::results{$resultkey}"); |
Line 170 sub handler {
|
Line 186 sub handler {
|
} |
} |
&Apache::lonhomework::send_footer($request); |
&Apache::lonhomework::send_footer($request); |
|
|
return 'OK'; |
return OK; |
|
|
} |
} |
|
|