--- loncom/homework/lonhomework.pm 2001/07/18 18:45:37 1.49 +++ loncom/homework/lonhomework.pm 2001/08/18 14:59:38 1.56 @@ -1,7 +1,7 @@ # The LON-CAPA Homework handler # Guy Albertelli # 11/30 Gerd Kortemeyer -# 6/1 Gerd Kortemeyer +# 6/1,8/17,8/18 Gerd Kortemeyer package Apache::lonhomework; use strict; @@ -84,7 +84,8 @@ sub send_footer { } $Apache::lonxml::browse=''; -sub check_date { + +sub check_access { my ($id) = @_; my $date =''; my $status = ''; @@ -130,6 +131,13 @@ sub check_date { if ( $maxtries eq '' ) { $maxtries = '2'; } if ($tries >= $maxtries) { $status = 'CANNOT_ANSWER'; } } + + if (($status ne 'CLOSED') && ($Apache::lonhomework::type eq 'exam') && + (!$Apache::lonhomework::history{"resource.0.outtoken"})) { + return ('UNCHECKEDOUT','needs to be checked out'); + } + + &Apache::lonxml::debug("sending back :$status:$datemsg:"); if (($Apache::lonhomework::browse eq 'F') && ($status eq 'CLOSED')) { &Apache::lonxml::debug("should be allowed to browse a resource when closed"); @@ -287,23 +295,24 @@ sub get_template_list { sub newproblem { my ($request) = @_; + my $extension=$request->uri; + $extension=~s:^.*\.([\w]+)$:$1:; + &Apache::lonxml::debug("Looking for :$extension:"); if ($ENV{'form.template'}) { use File::Copy; - my $extension=$request->uri; - $extension=~s:\.([\w]+)$:$1:; my $file = &get_template_list($ENV{'form.template'},$extension); my $dest = &Apache::lonnet::filelocation("",$request->uri); copy($file,$dest); &renderpage($request,$file); } else { - my $templatelist=&get_template_list(); + my $templatelist=&get_template_list('',$extension); my $url=$request->uri; my $dest = &Apache::lonnet::filelocation("",$request->uri); $request->print(< -The request file $url doesn\'t exist. You can create a new problem
+The request file $url doesn\'t exist. You can create a new $extension
-
+