--- loncom/homework/lonhomework.pm 2007/08/18 00:01:45 1.269
+++ loncom/homework/lonhomework.pm 2007/10/05 18:08:40 1.275
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# The LON-CAPA Homework handler
#
-# $Id: lonhomework.pm,v 1.269 2007/08/18 00:01:45 albertel Exp $
+# $Id: lonhomework.pm,v 1.275 2007/10/05 18:08:40 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -188,7 +188,6 @@ sub proctor_checked_in {
return 0;
}
-$Apache::lonxml::browse='';
sub check_ip_acc {
my ($acc)=@_;
&Apache::lonxml::debug("acc is $acc");
@@ -196,7 +195,8 @@ sub check_ip_acc {
return 1;
}
my $allowed=0;
- my $ip=$ENV{'REMOTE_ADDR'};
+ my $ip=$env{'request.host'} || $ENV{'REMOTE_ADDR'};
+
my $name;
foreach my $pattern (split(',',$acc)) {
$pattern =~ s/^\s*//;
@@ -436,7 +436,7 @@ sub check_access {
$date = &mt("an indeterminate date"); $passed = 0;
} else {
if (time < $date) { $passed = 0; } else { $passed = 1; }
- $date = localtime $date;
+ $date = &Apache::lonlocal::locallocaltime($date);
}
if (!$passed) { $type=$temp; last; }
}
@@ -788,6 +788,14 @@ sub analyze {
$i++;
}
}
+ if (!keys(%{ $analyze{$part.'.answer'} })) {
+ my $answer_part =
+ [''.&mt('Error').''];
+ $seedexample{join("\0",$part,0,@{$answer_part})}=
+ $thisseed;
+ push( @{ $overall{$part.'.answer'}[0] },
+ $answer_part);
+ }
}
}
}
@@ -864,10 +872,11 @@ sub editxmlmode {
my $js =
&Apache::edit::js_change_detection().
&Apache::loncommon::resize_textarea_js();
+ my $only_body = ($env{'environment.remote'} eq 'off')? 0 : 1;
my $start_page =
&Apache::loncommon::start_page(&mt("EditXML [_1]",$file),$js,
{'no_auto_mt_title' => 1,
- 'only_body' => 1,
+ 'only_body' => $only_body,
'add_entries' => {
'onresize' => q[resize_textarea('LC_editxmltext','LC_aftertextarea')],
'onload' => q[resize_textarea('LC_editxmltext','LC_aftertextarea')],
@@ -950,7 +959,7 @@ sub renderpage {
&Apache::lonxml::debug("Should be parsing now");
$result .= &Apache::lonxml::xmlparse($request, $target, $problem,
&setup_vars($target),%mystyle);
- undef($Apache::lonhomework::parsing_a_problem);
+ &finished_parsing();
if (!$output) { $result = ''; }
#$request->print("Result follows:");
if ($target eq 'modified') {
@@ -981,6 +990,11 @@ sub renderpage {
}
}
+sub finished_parsing {
+ undef($Apache::lonhomework::parsing_a_problem);
+ undef($Apache::lonhomework::parsing_a_task);
+}
+
# with no arg it returns a HTML