--- loncom/interface/statistics/lonstathelpers.pm 2004/03/31 05:24:00 1.10 +++ loncom/interface/statistics/lonstathelpers.pm 2004/06/04 21:42:18 1.12 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonstathelpers.pm,v 1.10 2004/03/31 05:24:00 albertel Exp $ +# $Id: lonstathelpers.pm,v 1.12 2004/06/04 21:42:18 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -118,7 +118,7 @@ sub ProblemSelector { my ($AcceptedResponseTypes) = @_; my $Str; $Str = "\n\n"; - foreach my $seq (&Apache::lonstatistics::Sequences_with_Assess()) { + foreach my $seq (&Apache::lonstatistics::Sequences_with_Assess('all')) { next if ($seq->{'num_assess'}<1); my $seq_str = ''; foreach my $res (@{$seq->{'contents'}}) { @@ -255,7 +255,7 @@ sub get_prev_curr_next { # # Build an array with the data we need to search through my @Resource; - foreach my $seq (&Apache::lonstatistics::Sequences_with_Assess()) { + foreach my $seq (&Apache::lonstatistics::Sequences_with_Assess('all')) { foreach my $res (@{$seq->{'contents'}}) { next if ($res->{'type'} ne 'assessment'); foreach my $part (@{$res->{'parts'}}) { @@ -363,7 +363,13 @@ Returns: nothing ##################################################### ##################################################### sub GetStudentAnswers { - my ($r,$problem,$Students) = @_; + my ($r,$problem,$Students,$formname,$inputname) = @_; + my $status_type; + if (defined($formname)) { + $status_type = 'inline'; + } else { + $status_type = 'popup'; + } my $c = $r->connection(); my %Answers; my ($resource,$partid,$respid) = ($problem->{'resource'}, @@ -374,7 +380,8 @@ sub GetStudentAnswers { # Open progress window my %prog_state=&Apache::lonhtmlcommon::Create_PrgWin ($r,'Student Answer Compilation Status', - 'Student Answer Compilation Progress', scalar(@$Students)); + 'Student Answer Compilation Progress', scalar(@$Students), + $status_type,undef,$formname,$inputname); $r->rflush(); foreach my $student (@$Students) { last if ($c->aborted()); @@ -1001,6 +1008,86 @@ sub get_time_limits { return ($starttime,$endtime); } + + +#################################################### +#################################################### + +=pod + +=item sections_description + +Inputs: @Sections, an array of sections + +Returns: A text description of the sections selected. + +=cut + +#################################################### +#################################################### +sub sections_description { + my @Sections = @_; + my $sectionstring = ''; + if (scalar(@Sections) > 1) { + if (scalar(@Sections) > 2) { + my $last = pop(@Sections); + $sectionstring = "Sections ".join(', ',@Sections).', and '.$last; + } else { + $sectionstring = "Sections ".join(' and ',@Sections); + } + } else { + if ($Sections[0] eq 'all') { + $sectionstring = "All sections"; + } else { + $sectionstring = "Section ".$Sections[0]; + } + } + return $sectionstring; +} + +#################################################### +#################################################### + +=pod + +=item &manage_caches + +Inputs: $r, apache request object + +Returns: An array of scalars containing html for buttons. + +=cut + +#################################################### +#################################################### +sub manage_caches { + my ($r,$formname,$inputname) = @_; + &Apache::loncoursedata::clear_internal_caches(); + if (exists($ENV{'form.ClearCache'}) || + exists($ENV{'form.updatecaches'}) || + (exists($ENV{'form.firstrun'}) && + $ENV{'form.firstrun'} ne 'no')) { + &Apache::lonstatistics::Gather_Full_Student_Data($r,$formname, + $inputname); + } + # + if (! exists($ENV{'form.firstrun'})) { + $r->print(''); + } else { + $r->print(''); + } + my @Buttons = + ('', + ''); + # + return @Buttons; +} + + + + #################################################### ####################################################