--- loncom/interface/loncommon.pm 2003/10/13 22:35:05 1.128 +++ loncom/interface/loncommon.pm 2003/10/17 15:13:49 1.132 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common routines # -# $Id: loncommon.pm,v 1.128 2003/10/13 22:35:05 albertel Exp $ +# $Id: loncommon.pm,v 1.132 2003/10/17 15:13:49 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2686,12 +2686,20 @@ Returns a link to cgi-bin/graph ############################################################ ############################################################ sub DrawGraph { - my ($Title,$xlabel,$ylabel,$Max,$values1,$values2)=@_; + my ($Title,$xlabel,$ylabel,$Max,$colors,@Values)=@_; # my $identifier = time.'_'.int(rand(1000)); - if (! defined($values1) || ref($values1) ne 'ARRAY') { + if (! @Values || ref($Values[0]) ne 'ARRAY') { return ''; } + my $NumBars = scalar(@{$Values[0]}); + my %ValuesHash; + my $NumSets=1; + foreach my $array (@Values) { + next if (! ref($array)); + $ValuesHash{'cgi.'.$identifier.'.data.'.$NumSets++} = + join(',',@$array); + } # $Title = '' if (! defined($Title)); $xlabel = '' if (! defined($xlabel)); @@ -2700,27 +2708,21 @@ sub DrawGraph { $xlabel = &Apache::lonnet::escape($xlabel); $ylabel = &Apache::lonnet::escape($ylabel); # - my $data1 = join(',', @$values1); - my $data2; - if (defined($values2)) { - $data2 = join(',', @$values2); - } - # - my $NumBars = scalar(@$values1); $Max = 1 if ($Max < 1); if ( int($Max) < $Max ) { $Max++; $Max = int($Max); } # - &Apache::lonnet::appenv($identifier.'.title' => $Title, - $identifier.'.xlabel' => $xlabel, - $identifier.'.ylabel' => $ylabel, - $identifier.'.Max' => $Max, - $identifier.'.NumBars' => $NumBars, - $identifier.'.data1' => $data1, - $identifier.'.data2' => $data2); - return ''; + &Apache::lonnet::appenv('cgi.'.$identifier.'.title' => $Title, + 'cgi.'.$identifier.'.xlabel' => $xlabel, + 'cgi.'.$identifier.'.ylabel' => $ylabel, + 'cgi.'.$identifier.'.Max' => $Max, + 'cgi.'.$identifier.'.NumBars' => $NumBars, + 'cgi.'.$identifier.'.NumSets' => $NumSets, + 'cgi.'.$identifier.'.Colors' => join(',',@{$colors}), + %ValuesHash); + return ''; } ############################################################