version 1.57, 2001/08/20 23:31:07
|
version 1.62, 2001/11/05 22:49:14
|
Line 10 use Apache::lonxml;
|
Line 10 use Apache::lonxml;
|
use Apache::lonnet; |
use Apache::lonnet; |
use Apache::inputtags; |
use Apache::inputtags; |
use Apache::structuretags; |
use Apache::structuretags; |
|
use Apache::randomlabel; |
use Apache::response; |
use Apache::response; |
use Apache::hint; |
use Apache::hint; |
use Apache::outputtags; |
use Apache::outputtags; |
Line 22 sub BEGIN {
|
Line 23 sub BEGIN {
|
|
|
sub get_target { |
sub get_target { |
if ( $ENV{'request.state'} eq "published") { |
if ( $ENV{'request.state'} eq "published") { |
if ( defined $ENV{'form.submitted'}) { |
if ( defined($ENV{'form.submitted'})) { |
return ('grade', 'web'); |
return ('grade', 'web'); |
} else { |
} else { |
return ('web'); |
return ('web'); |
} |
} |
} elsif ($ENV{'request.state'} eq "construct") { |
} elsif ($ENV{'request.state'} eq "construct") { |
if ( defined $ENV{'form.preview'}) { |
if ( defined($ENV{'form.preview'})) { |
if ( defined $ENV{'form.submitted'}) { |
if ( defined($ENV{'form.submitted'})) { |
return ('grade', 'web'); |
return ('grade', 'web'); |
} else { |
} else { |
return ('web'); |
return ('web'); |
} |
} |
} else { |
} else { |
if ( $ENV{'form.problemmode'} eq 'View' ) { |
if ( $ENV{'form.problemmode'} eq 'View' ) { |
if ( defined $ENV{'form.submitted'}) { |
if ( defined($ENV{'form.submitted'}) && |
return ('grade', 'web'); |
(!defined($ENV{'form.resetdata'})) ) { |
|
return ('grade', 'web','answer'); |
} else { |
} else { |
return ('web'); |
return ('web','answer'); |
} |
} |
} elsif ( $ENV{'form.problemmode'} eq 'Edit' ) { |
} elsif ( $ENV{'form.problemmode'} eq 'Edit' ) { |
if ( $ENV{'form.submitted'} eq 'edit' ) { |
if ( $ENV{'form.submitted'} eq 'edit' ) { |
Line 152 sub check_access {
|
Line 154 sub check_access {
|
return ($status,$datemsg); |
return ($status,$datemsg); |
} |
} |
|
|
# ----------------------------------------------------------------- whichuser |
|
# returns a list of $symb, $courseid, $domain, $name that is correct for |
|
# calls to lonnet functions for this setup. |
|
# - looks for form.grade_ parameters |
|
sub whichuser { |
|
my $symb=&Apache::lonnet::symbread(); |
|
my $courseid=$ENV{'request.course.id'}; |
|
my $domain=$ENV{'user.domain'}; |
|
my $name=$ENV{'user.name'}; |
|
if (defined($ENV{'form.grade_symb'})) { |
|
my $tmp_courseid=$ENV{'form.grade_courseid'}; |
|
my $allowed=&Apache::lonnet::allowed('mgr',$tmp_courseid); |
|
if ($allowed) { |
|
$symb=$ENV{'form.grade_symb'}; |
|
$courseid=$ENV{'form.grade_courseid'}; |
|
$domain=$ENV{'form.grade_domain'}; |
|
$name=$ENV{'form.grade_username'}; |
|
} |
|
} |
|
return ($symb,$courseid,$domain,$name); |
|
} |
|
|
|
sub showhash { |
sub showhash { |
my (%hash) = @_; |
my (%hash) = @_; |
my $resultkey; |
my $resultkey; |
Line 197 sub setupheader {
|
Line 177 sub setupheader {
|
} else { |
} else { |
$request->content_type('text/html'); |
$request->content_type('text/html'); |
} |
} |
|
&Apache::loncommon::no_cache($request); |
$request->send_http_header; |
$request->send_http_header; |
return OK if $request->header_only; |
return OK if $request->header_only; |
return '' |
return '' |
Line 250 sub renderpage {
|
Line 231 sub renderpage {
|
if ($target eq 'web') { |
if ($target eq 'web') { |
if (&Apache::lonnet::symbread() eq '') { |
if (&Apache::lonnet::symbread() eq '') { |
if ($ENV{'request.state'} eq "construct") { |
if ($ENV{'request.state'} eq "construct") { |
$request->print("In construction space, submissions ignored<br />"); |
|
} else { |
} else { |
$request->print("Browsing or <a href=\"/adm/ambiguous\">ambiguous</a> reference, submissions ignored<br />"); |
$request->print("Browsing or <a href=\"/adm/ambiguous\">ambiguous</a> reference, submissions ignored<br />"); |
} |
} |
Line 372 sub handler {
|
Line 352 sub handler {
|
} |
} |
|
|
if ($ENV{'request.state'} eq "construct") { |
if ($ENV{'request.state'} eq "construct") { |
|
if ($ENV{'form.resetdata'} eq 'Reset Submissions') { |
|
my ($symb,$courseid,$domain,$name) = &Apache::lonxml::whichuser(); |
|
&Apache::lonnet::tmpreset($symb,'',$domain,$name); |
|
} |
if ( -e $file ) { |
if ( -e $file ) { |
if (!(defined $ENV{'form.problemmode'})) { |
if (!(defined $ENV{'form.problemmode'})) { |
#first visit to problem in construction space |
#first visit to problem in construction space |