--- loncom/homework/lonhomework.pm 2004/03/09 20:37:58 1.171 +++ loncom/homework/lonhomework.pm 2004/05/26 22:45:57 1.176 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Homework handler # -# $Id: lonhomework.pm,v 1.171 2004/03/09 20:37:58 albertel Exp $ +# $Id: lonhomework.pm,v 1.176 2004/05/26 22:45:57 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -207,11 +207,11 @@ sub check_access { if ( ! ($ENV{'form.problemstate'} eq 'CANNOT_ANSWER_correct' && lc($Apache::lonhomework::problemstatus) eq 'no')) { return ('CANNOT_ANSWER', - &mt('is in this state by royal decree.')); + &mt('is in this state due to author settings.')); } } else { return ($ENV{'form.problemstate'}, - &mt('is in this state by royal decree.')); + &mt('is in this state due to author settings.')); } } &Apache::lonxml::debug("in construction ignoring dates"); @@ -434,13 +434,12 @@ sub analyze_header { '.&mt("Analyzing a problem").' '.&Apache::lonxml::message_location().'
+ &HTML::Entities::encode($ENV{'request.uri'},'<>&"').'">

- '.&mt('List of possible answers').':
'; &Apache::lonxml::add_messages(\$result); $request->print($result); @@ -465,7 +464,8 @@ sub analyze { my %prog_state= &Apache::lonhtmlcommon::Create_PrgWin($request,&mt('Analyze Progress'), &mt('Getting Problem Variants'), - $ENV{'form.numtoanalyze'}); + $ENV{'form.numtoanalyze'}, + 'inline',undef); for(my $i=1;$i<$ENV{'form.numtoanalyze'}+1;$i++) { &Apache::lonhtmlcommon::Increment_PrgWin($request,\%prog_state, &mt('last problem')); @@ -490,6 +490,7 @@ sub analyze { } &Apache::lonhtmlcommon::Update_PrgWin($request,\%prog_state, &mt('Analyzing Results')); + $request->print('
'.&mt('List of possible answers').': '); foreach my $part (sort(keys(%allparts))) { if (defined(@{ $overall{$part.'.answer'} })) { my $num_cols=scalar(@{ $overall{$part.'.answer'}->[0] }); @@ -553,7 +554,7 @@ sub editxmlmode { $result.=''. &Apache::lonxml::message_location().'
+ &HTML::Entities::encode($ENV{'request.uri'},'<>&"').'"> @@ -564,7 +565,7 @@ sub editxmlmode {
' . $xml_help . ' + &HTML::Entities::encode($problem,'<>&"').'
'; &Apache::lonxml::add_messages(\$result); $request->print($result); @@ -668,8 +669,8 @@ sub newproblem { copy($templatefilename,$dest); &renderpage($request,$dest); } else { - my $url=$request->uri; - my $shownurl=$url; + my $url=&HTML::Entities::encode($request->uri,'<>&"'); + my $shownurl=$url; $shownurl=~s-^/~-/priv/-; my $dest = &Apache::lonnet::filelocation("",$request->uri); my $errormsg; @@ -708,7 +709,7 @@ ENDNEWPROBLEM sub view_or_edit_menu { my ($request) = @_; - my $url=$request->uri; + my $url=&HTML::Entities::encode($request->uri,'<>&"'); my %lt=&Apache::lonlocal::texthash( 'would' => 'Would you like to', 'view' => 'View', 'Edit' => 'edit', @@ -753,7 +754,8 @@ sub handler { #check if we know where we are if ($ENV{'request.course.fn'} && !&Apache::lonnet::symbread()) { # if we are browsing we might not be able to know where we are - if ($Apache::lonhomework::browse ne 'F') { + if ($Apache::lonhomework::browse ne 'F' && + $ENV{'request.state'} ne "construct") { #should know where we are, so ask if ( &Apache::lonnet::mod_perl_version() == 2 ) { &Apache::lonnet::cleanenv();