--- loncom/interface/Attic/lonspreadsheet.pm 2002/08/28 19:50:29 1.102 +++ loncom/interface/Attic/lonspreadsheet.pm 2002/08/29 15:35:01 1.103 @@ -1,5 +1,5 @@ # -# $Id: lonspreadsheet.pm,v 1.102 2002/08/28 19:50:29 matthew Exp $ +# $Id: lonspreadsheet.pm,v 1.103 2002/08/29 15:35:01 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -721,6 +721,53 @@ sub SUMMIN { return $sum; } +#------------------------------------------------------- + +=item MINPARM(parametername) + +Returns the minimum value of the parameters matching the parametername. +parametername should be a string such as 'duedate'. + +=cut + +#------------------------------------------------------- +sub MINPARM { + my ($expression) = @_; + my $min = undef; + study($expression); + foreach $parameter (keys(%c)) { + next if ($parameter !~ /$expression/); + if ((! defined($min)) || ($min > $c{$parameter})) { + $min = $c{$parameter} + } + } + return $min; +} + +#------------------------------------------------------- + +=item MAXPARM(parametername) + +Returns the maximum value of the parameters matching the input parameter name. +parametername should be a string such as 'duedate'. + +=cut + +#------------------------------------------------------- +sub MAXPARM { + my ($expression) = @_; + my $max = undef; + study($expression); + foreach $parameter (keys(%c)) { + next if ($parameter !~ /$expression/); + if ((! defined($min)) || ($max < $c{$parameter})) { + $max = $c{$parameter} + } + } + return $max; +} + +#-------------------------------------------------------- sub expandnamed { my $expression=shift; if ($expression=~/^\&/) {