--- loncom/interface/lonstatistics.pm 2003/08/27 21:33:33 1.79
+++ loncom/interface/lonstatistics.pm 2003/08/29 21:11:25 1.80
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstatistics.pm,v 1.79 2003/08/27 21:33:33 matthew Exp $
+# $Id: lonstatistics.pm,v 1.80 2003/08/29 21:11:25 matthew Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -797,6 +797,72 @@ sub SectionSelect {
return $Str;
}
+#######################################################
+#######################################################
+
+=pod
+
+=item &CreateAndParseOutputSelector()
+
+Construct a selection list of options for output and parse output selections.
+
+=cut
+
+#######################################################
+#######################################################
+sub OutputDescriptions {
+ my (@OutputOptions) = @_;
+ my $Str = '';
+ $Str .= "
Output Modes
\n";
+ $Str .= "\n";
+ foreach my $outputmode (@OutputOptions) {
+ $Str .=" - ".$outputmode->{'name'}."
\n";
+ $Str .=" - ".$outputmode->{'description'}."
\n";
+ }
+ $Str .= "
\n";
+ return $Str;
+}
+
+sub CreateAndParseOutputSelector {
+ my ($elementname,$default,@OutputOptions) = @_;
+ my $output_mode;
+ my $show;
+ my $Str = '';
+ #
+ # Format for output options is 'mode, restrictions';
+ my $selected = $default;
+ if (exists($ENV{'form.'.$elementname})) {
+ if (ref($ENV{'form.'.$elementname} eq 'ARRAY')) {
+ $selected = $ENV{'form.'.$elementname}->[0];
+ } else {
+ $selected = $ENV{'form.'.$elementname};
+ }
+ }
+ #
+ # Set package variables describing output mode
+ $output_mode = 'html';
+ $show = 'all';
+ foreach my $option (@OutputOptions) {
+ next if ($option->{'value'} ne $selected);
+ $output_mode = $option->{'mode'};
+ $show = $option->{'show'};
+ }
+ #
+ # Build the form element
+ $Str = qq/";
+ return ($Str,$output_mode,$show);
+}
+
###############################################
###############################################